[
  {
    "path": ".all-contributorsrc",
    "content": "{\n  \"_comment\": \"This JSON file controls the behaviour of the all contributors bot. A description of the keys can be found here: https://allcontributors.org/docs/en/bot/configuration\",\n  \"files\": [\n    \"README.md\",\n    \"book/website/afterword/contributors/all-contributors.md\"\n  ],\n  \"imageSize\": 100,\n  \"contributorsPerLine\": 6,\n  \"badgeTemplate\": \"[![All Contributors](https://img.shields.io/badge/all_contributors-<%= contributors.length %>-orange.svg)](#contributors)\",\n  \"skipCi\": false,\n  \"contributorsSortAlphabetically\": true,\n  \"projectName\": \"the-turing-way\",\n  \"projectOwner\": \"the-turing-way\",\n  \"repoType\": \"github\",\n  \"repoHost\": \"https://github.com\",\n  \"commitConvention\": \"none\",\n  \"commitType\": \"docs\",\n  \"types\": {\n    \"a11y\": {\n      \"symbol\": \"♿️\",\n      \"description\": \"Accessibility\",\n      \"link\": \"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\"\n    },\n    \"content\": {\n      \"symbol\": \"🖋\",\n      \"description\": \"Content\",\n      \"link\": \"https://book.the-turing-way.org\"\n    },\n    \"ideas\": {\n      \"symbol\": \"🤔\",\n      \"description\": \"Ideas, Planning, & Feedback\",\n      \"link\": \"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\"\n    },\n    \"eventOrganizing\": {\n      \"symbol\": \"📋\",\n      \"description\": \"Event Organizing\",\n      \"link\": \"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\"\n    },\n    \"infra\": {\n      \"symbol\": \"🚇\",\n      \"description\": \"Infrastructure (Hosting, Build-Tools, etc)\",\n      \"link\": \"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\"\n    },\n    \"tool\": {\n      \"symbol\": \"🔧\",\n      \"description\": \"Tools\",\n      \"link\": \"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\"\n    },\n    \"video\": {\n      \"symbol\": \"📹\",\n      \"description\": \"Videos\",\n      \"link\": \"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\"\n    },\n    \"maintenance\": {\n      \"symbol\": \"🚧\",\n      \"description\": \"Maintenance\",\n      \"link\": \"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\"\n    },\n    \"question\": {\n      \"symbol\": \"💬\",\n      \"description\": \"Answering Questions\",\n      \"link\": \"https://github.com/orgs/the-turing-way/discussions\"\n    },\n    \"talk\": {\n      \"symbol\": \"📢\",\n      \"description\": \"Talks\",\n      \"link\": \"https://github.com/the-turing-way/conferences\"\n    },\n    \"promotion\": {\n      \"symbol\": \"📣\",\n      \"description\": \"Promotion\",\n      \"link\": \"https://github.com/the-turing-way/conferences\"\n    },\n    \"translation\": {\n      \"symbol\": \"🌍\",\n      \"description\": \"Translation\",\n      \"link\": \"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\"\n    },\n    \"platform\": {\n      \"symbol\": \"📦\",\n      \"description\": \"Packaging/porting to new platform\",\n      \"link\": \"https://jupyterbook.org\"\n    },\n    \"design\": {\n      \"symbol\": \"🎨\",\n      \"description\": \"Design\",\n      \"link\": \"https://book.the-turing-way.org\"\n    },\n    \"example\": {\n      \"symbol\": \"💡\",\n      \"description\": \"Examples\",\n      \"link\": \"https://book.the-turing-way.org\"\n    },\n    \"blog\": {\n      \"symbol\": \"📝\",\n      \"description\": \"Blogposts\",\n      \"link\": \"https://github.com/the-turing-way/newsletter\"\n    },\n    \"userTesting\": {\n      \"symbol\": \"📓\",\n      \"description\": \"User Testing\",\n      \"link\": \"https://book.the-turing-way.org\"\n    },\n    \"fundingFinding\": {\n      \"symbol\": \"🔍\",\n      \"description\": \"Funding Finding\",\n      \"link\": \"https://book.the-turing-way.org\"\n    },\n    \"projectManagement\": {\n      \"symbol\": \"📆\",\n      \"description\": \"Project Management\",\n      \"link\": \"https://book.the-turing-way.org\"\n    },\n    \"tutorial\": {\n      \"symbol\": \"✅\",\n      \"description\": \"Tutorials\",\n      \"link\": \"https://book.the-turing-way.org\"\n    }\n  },\n  \"contributors\": [\n    {\n      \"login\": \"rainsworth\",\n      \"name\": \"Rachael Ainsworth\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/10600877?v=4\",\n      \"profile\": \"https://rainsworth.github.io\",\n      \"contributions\": [\n        \"doc\",\n        \"eventOrganizing\",\n        \"ideas\",\n        \"question\",\n        \"review\",\n        \"talk\"\n      ]\n    },\n    {\n      \"login\": \"tallamjr\",\n      \"name\": \"Tarek Allam\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/8843728?v=4\",\n      \"profile\": \"http://www.tarekallamjr.com\",\n      \"contributions\": [\n        \"infra\",\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"trallard\",\n      \"name\": \"Tania Allard\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/23552331?v=4\",\n      \"profile\": \"http://www.bitsandchips.me\",\n      \"contributions\": [\n        \"ideas\",\n        \"question\",\n        \"review\",\n        \"a11y\"\n      ]\n    },\n    {\n      \"login\": \"dalonsoa\",\n      \"name\": \"Diego Alonso Alvarez\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/6095790?v=4\",\n      \"profile\": \"http://www.imperial.ac.uk/quantum-photovoltaics\",\n      \"contributions\": [\n        \"ideas\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"bouweandela\",\n      \"name\": \"Bouwe Andela\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/5430937?v=4\",\n      \"profile\": \"https://github.com/bouweandela\",\n      \"contributions\": [\n        \"content\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"KristijanArmeni\",\n      \"name\": \"Kristijan Armeni\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/14061041?v=4\",\n      \"profile\": \"https://github.com/KristijanArmeni\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"r-j-arnold\",\n      \"name\": \"Becky Arnold\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/20441134?v=4\",\n      \"profile\": \"https://github.com/r-j-arnold\",\n      \"contributions\": [\n        \"question\",\n        \"code\",\n        \"doc\",\n        \"ideas\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"dblana\",\n      \"name\": \"Dimitra Blana\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/13907429?v=4\",\n      \"profile\": \"https://dblana.github.io/\",\n      \"contributions\": [\n        \"review\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"LouiseABowler\",\n      \"name\": \"Louise Bowler\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/25640708?v=4\",\n      \"profile\": \"https://github.com/LouiseABowler\",\n      \"contributions\": [\n        \"question\",\n        \"code\",\n        \"doc\",\n        \"example\",\n        \"ideas\",\n        \"eventOrganizing\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"informationcake\",\n      \"name\": \"Alex Clarke\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/16001543?v=4\",\n      \"profile\": \"http://informationcake.com\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"jezcope\",\n      \"name\": \"Jez Cope\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/457628?v=4\",\n      \"profile\": \"http://erambler.co.uk/\",\n      \"contributions\": [\n        \"doc\",\n        \"bug\",\n        \"infra\"\n      ]\n    },\n    {\n      \"login\": \"edaub\",\n      \"name\": \"Eric Daub\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/45598892?v=4\",\n      \"profile\": \"https://github.com/edaub\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"sdruskat\",\n      \"name\": \"Stephan Druskat\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/3007126?v=4\",\n      \"profile\": \"http://sdruskat.net\",\n      \"contributions\": [\n        \"doc\",\n        \"content\",\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"emdupre\",\n      \"name\": \"Elizabeth DuPre\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/15017191?v=4\",\n      \"profile\": \"http://emdupre.me\",\n      \"contributions\": [\n        \"infra\",\n        \"question\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"sje30\",\n      \"name\": \"Stephen Eglen\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/1095067?v=4\",\n      \"profile\": \"http://damtp.cam.ac.uk/user/eglen\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"joe-fennell\",\n      \"name\": \"Joe Fennell\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/25105262?v=4\",\n      \"profile\": \"https://github.com/joe-fennell\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"oforrest\",\n      \"name\": \"Oliver Forrest\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/49275282?v=4\",\n      \"profile\": \"https://github.com/oforrest\",\n      \"contributions\": [\n        \"doc\",\n        \"ideas\",\n        \"content\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"pgadige\",\n      \"name\": \"Pooja Gadige\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/8632025?v=4\",\n      \"profile\": \"https://github.com/pgadige\",\n      \"contributions\": [\n        \"doc\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"jmgate\",\n      \"name\": \"Jason Gates\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/20327215?v=4\",\n      \"profile\": \"https://github.com/jmgate\",\n      \"contributions\": [\n        \"doc\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"sgibson91\",\n      \"name\": \"Sarah Gibson\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/44771837?v=4\",\n      \"profile\": \"https://github.com/sgibson91\",\n      \"contributions\": [\n        \"question\",\n        \"code\",\n        \"doc\",\n        \"tool\",\n        \"review\",\n        \"talk\",\n        \"ideas\",\n        \"tutorial\",\n        \"video\"\n      ]\n    },\n    {\n      \"login\": \"OscartGiles\",\n      \"name\": \"Oscar Giles\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/12784013?v=4\",\n      \"profile\": \"https://github.com/OscartGiles\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"rjjgilham\",\n      \"name\": \"Richard Gilham\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/18323072?v=4\",\n      \"profile\": \"https://github.com/rjjgilham\",\n      \"contributions\": [\n        \"doc\",\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"cassgvp\",\n      \"name\": \"Cassandra Gould van Praag\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/43407869?v=4\",\n      \"profile\": \"https://github.com/cassgvp\",\n      \"contributions\": [\n        \"ideas\",\n        \"doc\",\n        \"review\",\n        \"eventOrganizing\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"mjg211\",\n      \"name\": \"Michael Grayling\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/4548867?v=4\",\n      \"profile\": \"https://www.mrc-bsu.cam.ac.uk/people/in-alphabetical-order/a-to-g/michael-grayling/\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"nlharris\",\n      \"name\": \"Nomi Harris\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/348704?v=4\",\n      \"profile\": \"https://github.com/nlharris\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"libertyh\",\n      \"name\": \"Liberty Hamilton\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/3268583?v=4\",\n      \"profile\": \"http://csd.utexas.edu/research/hamilton-lab\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"betatim\",\n      \"name\": \"Tim Head\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/1448859?v=4\",\n      \"profile\": \"https://github.com/betatim\",\n      \"contributions\": [\n        \"question\",\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"pherterich\",\n      \"name\": \"Patricia Herterich\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/8457675?v=4\",\n      \"profile\": \"https://github.com/pherterich\",\n      \"contributions\": [\n        \"question\",\n        \"doc\",\n        \"review\",\n        \"ideas\",\n        \"content\",\n        \"eventOrganizing\"\n      ]\n    },\n    {\n      \"login\": \"rosiehigman\",\n      \"name\": \"Rosie Higman\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/15738325?v=4\",\n      \"profile\": \"https://github.com/rosiehigman\",\n      \"contributions\": [\n        \"question\",\n        \"eventOrganizing\",\n        \"review\",\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"ianhinder\",\n      \"name\": \"Ian Hinder\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/213274?v=4\",\n      \"profile\": \"https://ianhinder.net\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"hieuhoang\",\n      \"name\": \"Hieu Hoang\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/691732?v=4\",\n      \"profile\": \"http://www.hoang.co.uk/hieu\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"SiccarPoint\",\n      \"name\": \"Dan Hobley\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/6867260?v=4\",\n      \"profile\": \"http://spot.colorado.edu/~daho1668/\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"choldgraf\",\n      \"name\": \"Chris Holdgraf\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/1839645?v=4\",\n      \"profile\": \"http://chrisholdgraf.com\",\n      \"contributions\": [\n        \"question\",\n        \"ideas\",\n        \"talk\"\n      ]\n    },\n    {\n      \"login\": \"wjchulme\",\n      \"name\": \"Will Hulme\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/25637345?v=4\",\n      \"profile\": \"https://github.com/wjchulme\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"jdkent\",\n      \"name\": \"James Kent\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/12564882?v=4\",\n      \"profile\": \"https://www.linkedin.com/in/james-kent-24666468/\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"gkiar\",\n      \"name\": \"Greg Kiar\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/4883288?v=4\",\n      \"profile\": \"http://gkiar.github.io\",\n      \"contributions\": [\n        \"doc\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"taunsquared\",\n      \"name\": \"Danbee Kim\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/27739141?v=4\",\n      \"profile\": \"https://github.com/taunsquared\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"annakrystalli\",\n      \"name\": \"Anna Krystalli\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/5583057?v=4\",\n      \"profile\": \"https://www.annakrystalli.me/\",\n      \"contributions\": [\n        \"question\",\n        \"example\",\n        \"review\",\n        \"ideas\",\n        \"tutorial\"\n      ]\n    },\n    {\n      \"login\": \"kkmann\",\n      \"name\": \"Kevin Kunzmann\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/2482236?v=4\",\n      \"profile\": \"https://kkmann.github.io/\",\n      \"contributions\": [\n        \"doc\",\n        \"ideas\",\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"mkuzak\",\n      \"name\": \"Mateusz Kuzak\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/208443?v=4\",\n      \"profile\": \"https://github.com/mkuzak\",\n      \"contributions\": [\n        \"bug\",\n        \"eventOrganizing\",\n        \"ideas\",\n        \"review\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"erictleung\",\n      \"name\": \"Eric Leung\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/2754821?v=4\",\n      \"profile\": \"https://erictleung.com\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"ClareLiggins\",\n      \"name\": \"Clare Liggins\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/47981871?v=4\",\n      \"profile\": \"https://github.com/ClareLiggins\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"longr\",\n      \"name\": \"Robin Long\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/3597743?v=4\",\n      \"profile\": \"https://github.com/longr\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"christopherlovell\",\n      \"name\": \"Christopher Lovell\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/4648092?v=4\",\n      \"profile\": \"http://christopherlovell.co.uk\",\n      \"contributions\": [\n        \"infra\"\n      ]\n    },\n    {\n      \"login\": \"FrancesMadden\",\n      \"name\": \"Frances Madden\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/52208466?v=4\",\n      \"profile\": \"https://github.com/FrancesMadden\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"rockita\",\n      \"name\": \"Eirini Malliaraki\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/36627260?v=4\",\n      \"profile\": \"http://emalliaraki.com\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"effigies\",\n      \"name\": \"Chris Markiewicz\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/83442?v=4\",\n      \"profile\": \"https://github.com/effigies\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"c-martinez\",\n      \"name\": \"Carlos Martinez\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/7782231?v=4\",\n      \"profile\": \"https://github.com/c-martinez\",\n      \"contributions\": [\n        \"bug\",\n        \"review\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"orchid00\",\n      \"name\": \"Paula Andrea Martinez\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/9795785?v=4\",\n      \"profile\": \"https://github.com/orchid00\",\n      \"contributions\": [\n        \"ideas\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"masonlr\",\n      \"name\": \"Lachlan Mason\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/5828176?v=4\",\n      \"profile\": \"https://github.com/masonlr\",\n      \"contributions\": [\n        \"ideas\",\n        \"doc\",\n        \"code\"\n      ]\n    },\n    {\n      \"login\": \"RohitMidha23\",\n      \"name\": \"Rohit Midha\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/38888530?v=4\",\n      \"profile\": \"http://rohitmidha23.github.io\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"jmoldon\",\n      \"name\": \"Javier Moldon\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/1053066?v=4\",\n      \"profile\": \"https://github.com/jmoldon\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"AlfAWolf140\",\n      \"name\": \"Beth Montague-Hellen\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/29063219?v=4\",\n      \"profile\": \"https://github.com/AlfAWolf140\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"alexmorley\",\n      \"name\": \"Alexander Morley\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/13655521?v=4\",\n      \"profile\": \"http://alexmorley.me\",\n      \"contributions\": [\n        \"question\",\n        \"review\",\n        \"ideas\",\n        \"test\",\n        \"infra\",\n        \"maintenance\"\n      ]\n    },\n    {\n      \"login\": \"jamesmyatt\",\n      \"name\": \"James Myatt\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/1047337?v=4\",\n      \"profile\": \"http://www.jamesmyatt.co.uk/\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"OliJimbo\",\n      \"name\": \"Oliver Clark\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/16899600?v=4\",\n      \"profile\": \"https://github.com/OliJimbo\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"martintoreilly\",\n      \"name\": \"Martin O'Reilly\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/21147592?v=4\",\n      \"profile\": \"https://github.com/martintoreilly\",\n      \"contributions\": [\n        \"question\",\n        \"tool\",\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"jspickering\",\n      \"name\": \"Jade Pickering\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/28339195?v=4\",\n      \"profile\": \"https://github.com/jspickering\",\n      \"contributions\": [\n        \"doc\",\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"crangelsmith\",\n      \"name\": \"Camila Rangel Smith\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/11162074?v=4\",\n      \"profile\": \"https://github.com/crangelsmith\",\n      \"contributions\": [\n        \"doc\",\n        \"translation\",\n        \"maintenance\"\n      ]\n    },\n    {\n      \"login\": \"RostiReadioff\",\n      \"name\": \"Rosti Readioff\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/45424690?v=4\",\n      \"profile\": \"https://github.com/RostiReadioff\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"jemrobinson\",\n      \"name\": \"James Robinson\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/3502751?v=4\",\n      \"profile\": \"https://github.com/jemrobinson\",\n      \"contributions\": [\n        \"ideas\",\n        \"code\"\n      ]\n    },\n    {\n      \"login\": \"PabRod\",\n      \"name\": \"Pablo Rodríguez-Sánchez\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/7677614?v=4\",\n      \"profile\": \"https://pabrod.github.io/\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"SusannaSansone\",\n      \"name\": \"Susanna-Assunta Sansone\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/525719?v=4\",\n      \"profile\": \"https://sansonegroup.eng.ox.ac.uk/\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"seyhunsaral\",\n      \"name\": \"Ali Seyhun Saral\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/11707417?v=4\",\n      \"profile\": \"http://www.saral.it\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"illushka\",\n      \"name\": \"Chanuki Illushka Seresinhe\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/8143964?v=4\",\n      \"profile\": \"https://github.com/illushka\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"nadiasoliman\",\n      \"name\": \"Nadia Soliman\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/41086364?v=4\",\n      \"profile\": \"https://github.com/nadiasoliman\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"ajstewartlang\",\n      \"name\": \"Andrew Stewart\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/26226804?v=4\",\n      \"profile\": \"https://scholar.google.co.uk/citations?user=o0cD2JgAAAAJ&hl=en\",\n      \"contributions\": [\n        \"tutorial\"\n      ]\n    },\n    {\n      \"login\": \"BioStew\",\n      \"name\": \"Sarah Stewart\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/17767752?v=4\",\n      \"profile\": \"https://github.com/Biostew\",\n      \"contributions\": [\n        \"doc\",\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"ots22\",\n      \"name\": \"Oliver Strickson\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/5434836?v=4\",\n      \"profile\": \"https://github.com/ots22\",\n      \"contributions\": [\n        \"question\",\n        \"doc\",\n        \"tutorial\"\n      ]\n    },\n    {\n      \"login\": \"NatalieThurlby\",\n      \"name\": \"Natalie Thurlby\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/17617308?v=4\",\n      \"profile\": \"https://github.com/NatalieThurlby\",\n      \"contributions\": [\n        \"code\",\n        \"test\"\n      ]\n    },\n    {\n      \"login\": \"GjjvdBurg\",\n      \"name\": \"Gertjan van den Burg\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/3286696?v=4\",\n      \"profile\": \"http://gertjan.dev\",\n      \"contributions\": [\n        \"doc\",\n        \"ideas\",\n        \"question\"\n      ]\n    },\n    {\n      \"login\": \"sverhoeven\",\n      \"name\": \"Stefan Verhoeven\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/1713488?v=4\",\n      \"profile\": \"https://github.com/sverhoeven\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"KirstieJane\",\n      \"name\": \"Kirstie Whitaker\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/3626306?v=4\",\n      \"profile\": \"https://whitakerlab.github.io\",\n      \"contributions\": [\n        \"question\",\n        \"doc\",\n        \"design\",\n        \"eventOrganizing\",\n        \"fundingFinding\",\n        \"ideas\",\n        \"review\",\n        \"talk\"\n      ]\n    },\n    {\n      \"login\": \"tonyyzy\",\n      \"name\": \"Tony Yang\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/38984697?v=4\",\n      \"profile\": \"https://github.com/tonyyzy\",\n      \"contributions\": [\n        \"doc\",\n        \"translation\",\n        \"infra\"\n      ]\n    },\n    {\n      \"login\": \"yochannah\",\n      \"name\": \"Yo Yehudi\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/9271438?v=4\",\n      \"profile\": \"http://yo-yehudi.com\",\n      \"contributions\": [\n        \"doc\",\n        \"review\",\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"eirini-zormpa\",\n      \"name\": \"Eirini Zormpa\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/30151074?v=4\",\n      \"profile\": \"https://github.com/eirini-zormpa\",\n      \"contributions\": [\n        \"bug\",\n        \"review\",\n        \"ideas\",\n        \"eventOrganizing\"\n      ]\n    },\n    {\n      \"login\": \"malvikasharan\",\n      \"name\": \"Malvika Sharan\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/5370471?v=4\",\n      \"profile\": \"https://github.com/malvikasharan\",\n      \"contributions\": [\n        \"doc\",\n        \"eventOrganizing\",\n        \"ideas\",\n        \"projectManagement\",\n        \"review\",\n        \"talk\",\n        \"maintenance\",\n        \"video\",\n        \"a11y\"\n      ]\n    },\n    {\n      \"login\": \"JimMadge\",\n      \"name\": \"Jim Madge\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/23616154?v=4\",\n      \"profile\": \"https://github.com/JimMadge\",\n      \"contributions\": [\n        \"content\",\n        \"doc\",\n        \"review\",\n        \"code\",\n        \"infra\",\n        \"bug\",\n        \"a11y\",\n        \"talk\",\n        \"maintenance\"\n      ]\n    },\n    {\n      \"login\": \"fedenanni\",\n      \"name\": \"Federico Nanni\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/8415204?v=4\",\n      \"profile\": \"https://federiconanni.com/\",\n      \"contributions\": [\n        \"bug\",\n        \"content\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"evelinag\",\n      \"name\": \"Evelina Gabasova\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/5541162?v=4\",\n      \"profile\": \"http://evelinag.com\",\n      \"contributions\": [\n        \"bug\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"nbarlowATI\",\n      \"name\": \"Nick Barlow\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/33832774?v=4\",\n      \"profile\": \"https://github.com/nbarlowATI\",\n      \"contributions\": [\n        \"bug\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"radka-j\",\n      \"name\": \"Radka Jersakova\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/29207091?v=4\",\n      \"profile\": \"https://github.com/radka-j\",\n      \"contributions\": [\n        \"bug\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"nathanbegbie\",\n      \"name\": \"Nathan Begbie\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/7100966?v=4\",\n      \"profile\": \"https://github.com/nathanbegbie\",\n      \"contributions\": [\n        \"bug\",\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"EstherPlomp\",\n      \"name\": \"Esther Plomp\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/46314469?v=4\",\n      \"profile\": \"https://github.com/EstherPlomp\",\n      \"contributions\": [\n        \"bug\",\n        \"ideas\",\n        \"content\",\n        \"review\",\n        \"talk\",\n        \"blog\",\n        \"translation\",\n        \"eventOrganizing\"\n      ]\n    },\n    {\n      \"login\": \"annahadji\",\n      \"name\": \"Anna Hadjitofi\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/14828356?v=4\",\n      \"profile\": \"https://github.com/annahadji\",\n      \"contributions\": [\n        \"content\",\n        \"translation\",\n        \"tutorial\"\n      ]\n    },\n    {\n      \"login\": \"m-rivera\",\n      \"name\": \"Miguel Rivera\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/22956181?v=4\",\n      \"profile\": \"https://github.com/m-rivera\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"bvreede\",\n      \"name\": \"Barbara Vreede\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/5747405?v=4\",\n      \"profile\": \"http://barbaravreede.com\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"HeidiSeibold\",\n      \"name\": \"Heidi Seibold\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/14146757?v=4\",\n      \"profile\": \"https://twitter.com/HeidiBaya\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"mbjoseph\",\n      \"name\": \"Max Joseph\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/2664564?v=4\",\n      \"profile\": \"https://mbjoseph.github.io\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"martinagvilas\",\n      \"name\": \"Martina G. Vilas\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/37339384?v=4\",\n      \"profile\": \"http://martinagvilas.github.io\",\n      \"contributions\": [\n        \"infra\",\n        \"test\",\n        \"talk\",\n        \"video\",\n        \"tutorial\"\n      ]\n    },\n    {\n      \"login\": \"LauraCarter\",\n      \"name\": \"Laura Carter\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/16853500?v=4\",\n      \"profile\": \"https://github.com/LauraCarter\",\n      \"contributions\": [\n        \"review\",\n        \"bug\",\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"vdda\",\n      \"name\": \"Victoria Dominguez del Angel\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/642451?v=4\",\n      \"profile\": \"https://github.com/vdda\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"kir0ul\",\n      \"name\": \"Andrea Pierré\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/6053592?v=4\",\n      \"profile\": \"https://github.com/kir0ul\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"iamleeg\",\n      \"name\": \"Graham Lee\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/237254?v=4\",\n      \"profile\": \"https://labrary.online\",\n      \"contributions\": [\n        \"bug\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"anilbey\",\n      \"name\": \"Mustafa Anil Tuncel\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/7026020?v=4\",\n      \"profile\": \"https://www.linkedin.com/in/aniltuncel/\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"mwoodbri\",\n      \"name\": \"Mark Woodbridge\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/1724545?v=4\",\n      \"profile\": \"https://www.imperial.ac.uk/ict/rcs\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"chadsgilbert\",\n      \"name\": \"Chad Gilbert\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/524598?v=4\",\n      \"profile\": \"https://github.com/chadsgilbert\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"fmcooper\",\n      \"name\": \"Frances Cooper\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/14854230?v=4\",\n      \"profile\": \"http://francescooper.net\",\n      \"contributions\": [\n        \"content\",\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"JoannaLeng\",\n      \"name\": \"Joanna Leng\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/23033397?v=4\",\n      \"profile\": \"https://github.com/JoannaLeng\",\n      \"contributions\": [\n        \"content\",\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"colinsauze\",\n      \"name\": \"Colin Sauze\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/1053628?v=4\",\n      \"profile\": \"http://users.aber.ac.uk/cos\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"Chrisisour\",\n      \"name\": \"Christina Hitrova\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/49248075?v=4\",\n      \"profile\": \"https://github.com/Chrisisour\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"kessonovitch\",\n      \"name\": \"Kesson Magid\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/23242159?v=4\",\n      \"profile\": \"https://github.com/kessonovitch\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"kdixey\",\n      \"name\": \"Katherine Dixey\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/59925972?v=4\",\n      \"profile\": \"https://github.com/kdixey\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"nalessandroni\",\n      \"name\": \"Nicolás Alessandroni\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/43151303?v=4\",\n      \"profile\": \"https://orcid.org/0000-0002-6595-0969\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"alexwlchan\",\n      \"name\": \"Alex Chan\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/301220?v=4\",\n      \"profile\": \"https://alexwlchan.net\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"npch\",\n      \"name\": \"Neil Chue Hong\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/1507151?v=4\",\n      \"profile\": \"http://www.software.ac.uk\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"Trotts\",\n      \"name\": \"Cameron Trotter\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/9531671?v=4\",\n      \"profile\": \"http://trotts.io\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"vladoxNCL\",\n      \"name\": \"Carlos Vladimiro González Zelaya\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/33488410?v=4\",\n      \"profile\": \"https://github.com/vladoxNCL\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"ppintosilva\",\n      \"name\": \"Pedro Pinto da Silva\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/11331882?v=4\",\n      \"profile\": \"https://ppintosilva.com\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"SedarOlmez94\",\n      \"name\": \"Sedar Olmez\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/10035934?v=4\",\n      \"profile\": \"https://www.turing.ac.uk/people/doctoral-students/sedar-olmez\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"rosesisk\",\n      \"name\": \"Rose Sisk\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/52324551?v=4\",\n      \"profile\": \"https://github.com/rosesisk\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"mednche\",\n      \"name\": \"Natacha Chenevoy\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/24226111?v=4\",\n      \"profile\": \"https://mednche.github.io\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"paulbaniqued\",\n      \"name\": \"Paul Dominick Baniqued\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/47854500?v=4\",\n      \"profile\": \"https://github.com/paulbaniqued\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"GeorgiaA\",\n      \"name\": \"Georgia Atkinson\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/33513781?v=4\",\n      \"profile\": \"https://github.com/GeorgiaA\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"davehedgehog\",\n      \"name\": \"Tess Gough\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/57715289?v=4\",\n      \"profile\": \"https://github.com/davehedgehog\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"annabelelizabethwhipp\",\n      \"name\": \"Annabel Elizabeth Whipp\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/32568227?v=4\",\n      \"profile\": \"https://annabelelizabethwhipp.github.io/homepage\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"sianbladon\",\n      \"name\": \"Sian Bladon\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/60200458?v=4\",\n      \"profile\": \"https://github.com/sianbladon\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"watson-c\",\n      \"name\": \"Charlotte Watson\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/48691807?v=4\",\n      \"profile\": \"https://github.com/watson-c\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"philipdarke\",\n      \"name\": \"Philip Darke\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/43066442?v=4\",\n      \"profile\": \"http://philipdarke.com\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"sparkler0323\",\n      \"name\": \"Sparkler\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/18514015?v=4\",\n      \"profile\": \"https://github.com/sparkler0323\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"minnieho1115\",\n      \"name\": \"Yini\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/35134464?v=4\",\n      \"profile\": \"https://github.com/minnieho1115\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"adswa\",\n      \"name\": \"Adina Wagner\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/29738718?v=4\",\n      \"profile\": \"http://www.adina-wagner.com\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"GeorgianaElena\",\n      \"name\": \"Georgiana Elena\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/7579677?v=4\",\n      \"profile\": \"https://github.com/GeorgianaElena\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"eglerean\",\n      \"name\": \"Enrico Glerean\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/8993301?v=4\",\n      \"profile\": \"http://www.glerean.com\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"wiebket\",\n      \"name\": \"Wiebke Toussaint\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/11086407?v=4\",\n      \"profile\": \"https://wiebketoussaint.com\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"da5nsy\",\n      \"name\": \"Danny Garside\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/3739866?v=4\",\n      \"profile\": \"http://dannygarside.co.uk\",\n      \"contributions\": [\n        \"bug\",\n        \"content\",\n        \"review\",\n        \"infra\",\n        \"tool\",\n        \"maintenance\"\n      ]\n    },\n    {\n      \"login\": \"growupboron\",\n      \"name\": \"Shankho Boron Ghosh\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/41593068?v=4\",\n      \"profile\": \"http://growupboron.github.io\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"Yash-Varshney\",\n      \"name\": \"Yash Varshney\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/44135465?v=4\",\n      \"profile\": \"http://www.twinreality.blog\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"IIITM-Jay\",\n      \"name\": \"Jay Dev Jha\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/65283880?v=4\",\n      \"profile\": \"https://github.com/IIITM-Jay\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"leipzig\",\n      \"name\": \"Jeremy Leipzig\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/147991?v=4\",\n      \"profile\": \"https://twitter.com/jermdemo\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"PranavMahajan25\",\n      \"name\": \"Pranav Mahajan\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/33349653?v=4\",\n      \"profile\": \"https://pranavmahajan25.github.io/\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"augustinas1\",\n      \"name\": \"Augustinas Sukys\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/10000223?v=4\",\n      \"profile\": \"https://github.com/augustinas1\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"DerienFe\",\n      \"name\": \"DerienFe\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/55786232?v=4\",\n      \"profile\": \"https://github.com/DerienFe\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"xc308\",\n      \"name\": \"Xiaoqing Chen\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/55785985?v=4\",\n      \"profile\": \"https://github.com/xc308\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"takuover\",\n      \"name\": \"takuover\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/52206060?v=4\",\n      \"profile\": \"https://github.com/takuover\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"srishti-nema\",\n      \"name\": \"Srishti Nema\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/42498900?v=4\",\n      \"profile\": \"https://srishti-nema.github.io/\",\n      \"contributions\": [\n        \"bug\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"blue-moon22\",\n      \"name\": \"Victoria\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/15203325?v=4\",\n      \"profile\": \"https://github.com/blue-moon22\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"mjcasy\",\n      \"name\": \"mjcasy\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/44202821?v=4\",\n      \"profile\": \"https://github.com/mjcasy\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"ashenvi10\",\n      \"name\": \"Aditi Shenvi\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/39489147?v=4\",\n      \"profile\": \"http://warwick.ac.uk/aditishenvi\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"ceciledebezenac\",\n      \"name\": \"ceciledebezenac\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/49871974?v=4\",\n      \"profile\": \"https://github.com/ceciledebezenac\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"tugceoruc\",\n      \"name\": \"tugceoruc\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/20405276?v=4\",\n      \"profile\": \"https://github.com/tugceoruc\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"vasilisstav\",\n      \"name\": \"vasilisstav\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/55793023?v=4\",\n      \"profile\": \"https://github.com/vasilisstav\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"acork25\",\n      \"name\": \"acork25\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/55786005?v=4\",\n      \"profile\": \"https://github.com/acork25\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"JAEarly\",\n      \"name\": \"Joe Early\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/7620667?v=4\",\n      \"profile\": \"http://www.jearly.co.uk\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"georgiatomova\",\n      \"name\": \"Georgia Tomova\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/17258191?v=4\",\n      \"profile\": \"https://github.com/georgiatomova\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"swalkoAI\",\n      \"name\": \"swalkoAI\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/55786131?v=4\",\n      \"profile\": \"https://github.com/swalkoAI\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"giuliaok\",\n      \"name\": \"giuliaok\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/33548935?v=4\",\n      \"profile\": \"https://github.com/giuliaok\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"sethsh7\",\n      \"name\": \"sethsh7\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/53264282?v=4\",\n      \"profile\": \"https://github.com/sethsh7\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"fgh95\",\n      \"name\": \"Ferran Gonzalez Hernandez\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/43019129?v=4\",\n      \"profile\": \"https://www.turing.ac.uk/people/doctoral-students/ferran-gonzalez-hernandez\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"alessandroragano\",\n      \"name\": \"alessandroragano\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/44505487?v=4\",\n      \"profile\": \"https://github.com/alessandroragano\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"daniguariso\",\n      \"name\": \"daniguariso\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/40636435?v=4\",\n      \"profile\": \"https://github.com/daniguariso\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"kgrieman\",\n      \"name\": \"kgrieman\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/55785990?v=4\",\n      \"profile\": \"https://github.com/kgrieman\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"sibasmarak\",\n      \"name\": \"Siba Smarak Panigrahi\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/49467053?v=4\",\n      \"profile\": \"http://sibasmarak.blogspot.com \",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"pgrimaud\",\n      \"name\": \"Pierre Grimaud\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/1866496?v=4\",\n      \"profile\": \"https://p.ier.re\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"Sylfrena\",\n      \"name\": \"Sumera Priyadarsini\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/35404119?v=4\",\n      \"profile\": \"https://github.com/Sylfrena\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"sallyob123\",\n      \"name\": \"sallyob123\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/55785959?v=4\",\n      \"profile\": \"https://github.com/sallyob123\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"akira-endo\",\n      \"name\": \"akira-endo\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/26547770?v=4\",\n      \"profile\": \"https://github.com/akira-endo\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"solonkarapa\",\n      \"name\": \"Solon\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/7536922?v=4\",\n      \"profile\": \"https://www.solon-karapanagiotis.com/\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"saramasa22\",\n      \"name\": \"smasarone\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/55786246?v=4\",\n      \"profile\": \"https://github.com/saramasa22\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"risaueno\",\n      \"name\": \"Risa Ueno\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/22602921?v=4\",\n      \"profile\": \"https://github.com/risaueno\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"l-gorman\",\n      \"name\": \"l-gorman\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/55786252?v=4\",\n      \"profile\": \"https://github.com/l-gorman\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"obisargoni\",\n      \"name\": \"Obi Thompson Sargoni\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/33906525?v=4\",\n      \"profile\": \"https://github.com/obisargoni\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"PeterC-ATI\",\n      \"name\": \"PeterC-ATI\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/55786296?v=4\",\n      \"profile\": \"https://github.com/PeterC-ATI\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"defaultobject\",\n      \"name\": \"Oliver Hamelijnck\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/1484941?v=4\",\n      \"profile\": \"https://github.com/defaultobject\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"Ismael-KG\",\n      \"name\": \"Ismael-KG\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/64027166?v=4\",\n      \"profile\": \"https://github.com/Ismael-KG\",\n      \"contributions\": [\n        \"content\",\n        \"review\",\n        \"blog\",\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"CapTen101\",\n      \"name\": \"Tushar Rohilla\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/45699327?v=4\",\n      \"profile\": \"https://github.com/CapTen101\",\n      \"contributions\": [\n        \"bug\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"ornithos\",\n      \"name\": \"Alex Bird\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/8834882?v=4\",\n      \"profile\": \"https://ornithos.github.io/\",\n      \"contributions\": [\n        \"tutorial\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"Aariq\",\n      \"name\": \"Eric R Scott\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/25404783?v=4\",\n      \"profile\": \"http://www.ericrscott.com\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"foster999\",\n      \"name\": \"David Foster\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/31405412?v=4\",\n      \"profile\": \"https://github.com/foster999\",\n      \"contributions\": [\n        \"review\",\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"mloning\",\n      \"name\": \"Markus Löning\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/21020482?v=4\",\n      \"profile\": \"https://www.linkedin.com/in/mloning/\",\n      \"contributions\": [\n        \"review\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"jcolomb\",\n      \"name\": \"Julien Colomb\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/1876667?v=4\",\n      \"profile\": \"https://orcid.org/0000-0002-3127-5520\",\n      \"contributions\": [\n        \"content\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"snastase\",\n      \"name\": \"Samuel Nastase\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/3496566?v=4\",\n      \"profile\": \"https://snastase.github.io/\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"rgaiacs\",\n      \"name\": \"Raniere Silva\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/1506457?v=4\",\n      \"profile\": \"http://rgaiacs.com\",\n      \"contributions\": [\n        \"content\",\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"npscience\",\n      \"name\": \"Naomi Penfold\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/9406530?v=4\",\n      \"profile\": \"http://npscience.github.io\",\n      \"contributions\": [\n        \"review\",\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"Daniel-Mietchen\",\n      \"name\": \"Daniel Mietchen\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/465923?v=4\",\n      \"profile\": \"https://orcid.org/0000-0001-9488-1870\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"BrainonSilicon\",\n      \"name\": \"Sophia Batchelor\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/42813259?v=4\",\n      \"profile\": \"https://github.com/BrainonSilicon\",\n      \"contributions\": [\n        \"review\",\n        \"ideas\",\n        \"maintenance\",\n        \"talk\",\n        \"test\",\n        \"eventOrganizing\",\n        \"bug\",\n        \"content\",\n        \"a11y\"\n      ]\n    },\n    {\n      \"login\": \"giannidsp\",\n      \"name\": \"Gianni Scolaro\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/40976911?v=4\",\n      \"profile\": \"https://github.com/giannidsp\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"paulowoicho\",\n      \"name\": \"Paul Owoicho\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/28223751?v=4\",\n      \"profile\": \"https://www.linkedin.com/in/paulowoicho/\",\n      \"contributions\": [\n        \"ideas\",\n        \"review\",\n        \"bug\",\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"SamGuay\",\n      \"name\": \"Samuel Guay\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/30598330?v=4\",\n      \"profile\": \"https://github.com/SamGuay\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"jessyprovencher\",\n      \"name\": \"Jessy Provencher\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/70674444?v=4\",\n      \"profile\": \"https://github.com/jessyprovencher\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"camachoreina\",\n      \"name\": \"Reina Camacho Toro\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/12454015?v=4\",\n      \"profile\": \"https://github.com/camachoreina\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"Remi-Gau\",\n      \"name\": \"Remi Gau\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/6961185?v=4\",\n      \"profile\": \"https://remi-gau.github.io/\",\n      \"contributions\": [\n        \"bug\",\n        \"content\",\n        \"infra\"\n      ]\n    },\n    {\n      \"login\": \"skade\",\n      \"name\": \"Florian Gilcher\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/47542?v=4\",\n      \"profile\": \"https://asquera.de\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"StefanJanssen95\",\n      \"name\": \"Stefan Janssen\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/6250246?v=4\",\n      \"profile\": \"https://stefanjanssen.nl\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"andriannobella\",\n      \"name\": \"Andrian Nobella\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/57834926?v=4\",\n      \"profile\": \"http://www.linkedin.com/in/andriannobella\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"romeroclaudino\",\n      \"name\": \"Romero Silva\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/6520331?v=4\",\n      \"profile\": \"https://github.com/romeroclaudino\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"gustavobecelli\",\n      \"name\": \"Gustavo Becelli do Nacimento\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/39573195?v=4\",\n      \"profile\": \"https://github.com/gustavobecelli\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"cemulus\",\n      \"name\": \"Cem Ulus\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/55829938?v=4\",\n      \"profile\": \"https://github.com/cemulus\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"varlottaang\",\n      \"name\": \"Angelo Varlotta\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/5478922?v=4\",\n      \"profile\": \"http://varlotta.xyz\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"bertinetto\",\n      \"name\": \"Luca Bertinetto\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/3330489?v=4\",\n      \"profile\": \"http://www.robots.ox.ac.uk/~luca\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"lauracion\",\n      \"name\": \"Laura Acion\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/17729900?v=4\",\n      \"profile\": \"http://lacion.rbind.io\",\n      \"contributions\": [\n        \"a11y\",\n        \"translation\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"beccawilson\",\n      \"name\": \"beccawilson\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/5114032?v=4\",\n      \"profile\": \"http://www.drrebeccawilson.co.uk\",\n      \"contributions\": [\n        \"a11y\"\n      ]\n    },\n    {\n      \"login\": \"yaseminturkyilmaz\",\n      \"name\": \"yaseminturkyilmaz\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/45484225?v=4\",\n      \"profile\": \"https://github.com/yaseminturkyilmaz\",\n      \"contributions\": [\n        \"blog\",\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"Karvovskaya\",\n      \"name\": \"Lenka\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/44666630?v=4\",\n      \"profile\": \"https://github.com/Karvovskaya\",\n      \"contributions\": [\n        \"blog\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"MariaEriksson\",\n      \"name\": \"Maria Eriksson\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/43676485?v=4\",\n      \"profile\": \"https://github.com/MariaEriksson\",\n      \"contributions\": [\n        \"bug\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"ChandlerKlein\",\n      \"name\": \"Chandler Klein\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/18371945?v=4\",\n      \"profile\": \"http://chandlerklein.com\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"KRHero03\",\n      \"name\": \"Krunal Rank\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/44499991?v=4\",\n      \"profile\": \"https://krrank.live\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"dlintott\",\n      \"name\": \"Daniel Lintott\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/4700562?v=4\",\n      \"profile\": \"https://github.com/dlintott\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"GeorgiaHCA\",\n      \"name\": \"Georgia\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/46889966?v=4\",\n      \"profile\": \"https://github.com/GeorgiaHCA\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"oxpeter\",\n      \"name\": \"oxpeter\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/6393360?v=4\",\n      \"profile\": \"https://github.com/oxpeter\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"vcheplygina\",\n      \"name\": \"Veronika Cheplygina\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/10584818?v=4\",\n      \"profile\": \"http://www.veronikach.com\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"NZR\",\n      \"name\": \"Nico\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/2925086?v=4\",\n      \"profile\": \"https://github.com/NZR\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"reshamas\",\n      \"name\": \"Reshama Shaikh\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/2507232?v=4\",\n      \"profile\": \"https://reshamas.github.io\",\n      \"contributions\": [\n        \"bug\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"Mariam-ke\",\n      \"name\": \"Mariam-ke\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/39956740?v=4\",\n      \"profile\": \"https://github.com/Mariam-ke\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"blee1710\",\n      \"name\": \"Brandon Lee\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/39078797?v=4\",\n      \"profile\": \"https://brndnlee.me/\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"ashatitus\",\n      \"name\": \"ashatitus\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/32542663?v=4\",\n      \"profile\": \"https://www.lse.ac.uk/media-and-communications/people/research-staff/asha-titus\",\n      \"contributions\": [\n        \"review\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"KimDeRuyck\",\n      \"name\": \"Kim De Ruyck\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/26715049?v=4\",\n      \"profile\": \"https://github.com/KimDeRuyck\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"Marta-MM\",\n      \"name\": \"Marta-MM\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/67780317?v=4\",\n      \"profile\": \"https://github.com/Marta-MM\",\n      \"contributions\": [\n        \"bug\",\n        \"content\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"ahornos\",\n      \"name\": \"Albert Hornos Vidal\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/9551786?v=4\",\n      \"profile\": \"https://github.com/ahornos\",\n      \"contributions\": [\n        \"review\",\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"jmfernandez\",\n      \"name\": \"José María Fernández\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/2072150?v=4\",\n      \"profile\": \"http://www.madrimasd.org/blogs/bioinformatica\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"SarahAlidoost\",\n      \"name\": \"SarahAlidoost\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/55081872?v=4\",\n      \"profile\": \"https://nl.linkedin.com/in/fakhereh-sarah-alidoost-11a24a89\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"kderuyck\",\n      \"name\": \"Kim De Ruyck\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/74196557?v=4\",\n      \"profile\": \"https://github.com/kderuyck\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"glumand\",\n      \"name\": \"glumand\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/55833875?v=4\",\n      \"profile\": \"https://github.com/glumand\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"tomsing1\",\n      \"name\": \"Thomas Sandmann\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/10490984?v=4\",\n      \"profile\": \"http://www.linkedin.com/pub/thomas-sandmann/21/61b/410/\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"EKaroune\",\n      \"name\": \"Em K\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/58147174?v=4\",\n      \"profile\": \"https://github.com/EKaroune\",\n      \"contributions\": [\n        \"content\",\n        \"bug\",\n        \"blog\",\n        \"review\",\n        \"talk\"\n      ]\n    },\n    {\n      \"login\": \"wna-se\",\n      \"name\": \"Wolmar Nyberg Åkerström\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/1221165?v=4\",\n      \"profile\": \"https://github.com/wna-se\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"BatoolMM\",\n      \"name\": \"Batool\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/53487593?v=4\",\n      \"profile\": \"http://medium.com/@batool664\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\",\n        \"translation\",\n        \"infra\",\n        \"review\",\n        \"maintenance\",\n        \"doc\",\n        \"eventOrganizing\"\n      ]\n    },\n    {\n      \"login\": \"irenekp\",\n      \"name\": \"irenekp\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/53008913?v=4\",\n      \"profile\": \"https://github.com/irenekp\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"nehamoopen\",\n      \"name\": \"Neha Moopen\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/37183829?v=4\",\n      \"profile\": \"https://github.com/nehamoopen\",\n      \"contributions\": [\n        \"review\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"complexbrains\",\n      \"name\": \"Isil Bilgin\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/45263281?v=4\",\n      \"profile\": \"https://twitter.com/complexbrains\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"nuest\",\n      \"name\": \"Daniel Nüst\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/1325054?v=4\",\n      \"profile\": \"https://nordholmen.net\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"leavanh\",\n      \"name\": \"leavanh\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/50297755?v=4\",\n      \"profile\": \"https://github.com/leavanh\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"ml-evs\",\n      \"name\": \"Matthew Evans\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/7916000?v=4\",\n      \"profile\": \"http://ml-evs.science\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"bsipocz\",\n      \"name\": \"Brigitta Sipőcz\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/6788290?v=4\",\n      \"profile\": \"https://bsipocz.github.io/\",\n      \"contributions\": [\n        \"content\",\n        \"bug\",\n        \"infra\",\n        \"tool\",\n        \"eventOrganizing\",\n        \"maintenance\",\n        \"review\",\n        \"talk\"\n      ]\n    },\n    {\n      \"login\": \"sliaqat3\",\n      \"name\": \"sliaqat3\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/56300607?v=4\",\n      \"profile\": \"https://github.com/sliaqat3\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"rabbits99\",\n      \"name\": \"rabbits99\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/72690233?v=4\",\n      \"profile\": \"https://github.com/rabbits99\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"msanter01\",\n      \"name\": \"msanter01\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/39199660?v=4\",\n      \"profile\": \"https://github.com/msanter01\",\n      \"contributions\": [\n        \"translation\",\n        \"talk\"\n      ]\n    },\n    {\n      \"login\": \"luucamay\",\n      \"name\": \"Lupe CaMay\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/15850514?v=4\",\n      \"profile\": \"http://laboratoria.la\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"sk-sahu\",\n      \"name\": \"Sangram K Sahu\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/23085664?v=4\",\n      \"profile\": \"https://sksahu.net\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"jbteves\",\n      \"name\": \"Joshua Teves\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/26722533?v=4\",\n      \"profile\": \"https://github.com/jbteves\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"callummole\",\n      \"name\": \"Callum Mole\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/22677759?v=4\",\n      \"profile\": \"https://github.com/callummole\",\n      \"contributions\": [\n        \"ideas\",\n        \"infra\",\n        \"maintenance\"\n      ]\n    },\n    {\n      \"login\": \"przemekdolata96\",\n      \"name\": \"Przemek Dolata\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/26312462?v=4\",\n      \"profile\": \"https://github.com/przemekdolata96\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"Kelly-dot\",\n      \"name\": \"Kelly-dot\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/59481756?v=4\",\n      \"profile\": \"https://github.com/Kelly-dot\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"fuadreza\",\n      \"name\": \"Fuad Reza Pahlevi\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/25898509?v=4\",\n      \"profile\": \"https://www.linkedin.com/in/fuad-reza-pahlevi-531283160/\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"JKasmire\",\n      \"name\": \"JKasmire\",\n      \"avatar_url\": \"https://avatars2.githubusercontent.com/u/1334163?v=4\",\n      \"profile\": \"https://sites.google.com/view/drjkasmireresearch/home\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"ufangYang\",\n      \"name\": \"Yu-Fang Yang\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/33165978?v=4\",\n      \"profile\": \"https://github.com/ufangYang\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"dstansby\",\n      \"name\": \"David Stansby\",\n      \"avatar_url\": \"https://avatars0.githubusercontent.com/u/6197628?v=4\",\n      \"profile\": \"https://www.davidstansby.com\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"teapowell\",\n      \"name\": \"Tim Powell\",\n      \"avatar_url\": \"https://avatars1.githubusercontent.com/u/35264355?v=4\",\n      \"profile\": \"https://github.com/teapowell\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"BenjaminMummery\",\n      \"name\": \"Benjamin Mummery\",\n      \"avatar_url\": \"https://avatars3.githubusercontent.com/u/46931690?v=4\",\n      \"profile\": \"https://github.com/BenjaminMummery\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"inwaves\",\n      \"name\": \"Andrei Alexandru\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/8530685?v=4\",\n      \"profile\": \"http://inwaves.io\",\n      \"contributions\": [\n        \"bug\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"Hanaffi\",\n      \"name\": \"Ahmed Essam\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/35642947?v=4\",\n      \"profile\": \"https://github.com/Hanaffi\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"Lovkush-A\",\n      \"name\": \"Lovkush\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/25344832?v=4\",\n      \"profile\": \"https://github.com/Lovkush-A\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"Arielle-Bennett\",\n      \"name\": \"Arielle-Bennett\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/74651964?v=4\",\n      \"profile\": \"https://github.com/Arielle-Bennett\",\n      \"contributions\": [\n        \"ideas\",\n        \"review\",\n        \"content\",\n        \"bug\",\n        \"a11y\",\n        \"talk\"\n      ]\n    },\n    {\n      \"login\": \"Ago3\",\n      \"name\": \"Ago3\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/30800478?v=4\",\n      \"profile\": \"https://github.com/Ago3\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"andreabecsek\",\n      \"name\": \"andreabecsek\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/50207436?v=4\",\n      \"profile\": \"https://github.com/andreabecsek\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"SYU-NING\",\n      \"name\": \"SYU-NING\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/71600183?v=4\",\n      \"profile\": \"https://github.com/SYU-NING\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"peterrhysstrong\",\n      \"name\": \"peterrhysstrong\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/43751009?v=4\",\n      \"profile\": \"https://github.com/peterrhysstrong\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"tomlincr\",\n      \"name\": \"Chris Tomlinson\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/46465574?v=4\",\n      \"profile\": \"https://ctomlinson.net\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"andrealuppi\",\n      \"name\": \"andrealuppi\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/50251039?v=4\",\n      \"profile\": \"https://github.com/andrealuppi\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"NotActuallyACat\",\n      \"name\": \"NotActuallyACat\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/69468081?v=4\",\n      \"profile\": \"https://github.com/NotActuallyACat\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"IsabelBirds\",\n      \"name\": \"IsabelBirds\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/44876111?v=4\",\n      \"profile\": \"https://aspdenlab.weebly.com/isabel-birds.html\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"beckigreen\",\n      \"name\": \"Becki Green\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/77735779?v=4\",\n      \"profile\": \"http://beckigreen.netlify.app\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"AidaMehonic\",\n      \"name\": \"Aida Mehonic\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/45169136?v=4\",\n      \"profile\": \"https://github.com/AidaMehonic\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"RobPrecious\",\n      \"name\": \"Robert Precious\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/9133187?v=4\",\n      \"profile\": \"https://github.com/RobPrecious\",\n      \"contributions\": [\n        \"a11y\"\n      ]\n    },\n    {\n      \"login\": \"afzal442\",\n      \"name\": \"Afzal Ansari\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/11625672?v=4\",\n      \"profile\": \"https://github.com/afzal442\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"JiaruiWang-Jill\",\n      \"name\": \"Jill Wang\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/41178872?v=4\",\n      \"profile\": \"https://github.com/JiaruiWang-Jill\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"benkrikler\",\n      \"name\": \"benkrikler\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/4083697?v=4\",\n      \"profile\": \"http://benkrikler.github.io\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"warrickball\",\n      \"name\": \"Warrick Ball\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/20858744?v=4\",\n      \"profile\": \"http://warrickball.github.io\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"abrown41\",\n      \"name\": \"abrown41\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/10060170?v=4\",\n      \"profile\": \"https://github.com/abrown41\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"lottycoupat\",\n      \"name\": \"lottycoupat\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/82104604?v=4\",\n      \"profile\": \"https://github.com/lottycoupat\",\n      \"contributions\": [\n        \"bug\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"mcnanton\",\n      \"name\": \"mcnanton\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/42379883?v=4\",\n      \"profile\": \"https://github.com/mcnanton\",\n      \"contributions\": [\n        \"bug\",\n        \"content\",\n        \"ideas\",\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"marianaiv\",\n      \"name\": \"Mariana V.\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/53548707?v=4\",\n      \"profile\": \"https://github.com/marianaiv\",\n      \"contributions\": [\n        \"bug\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"griff-rees\",\n      \"name\": \"griff-rees\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/60181741?v=4\",\n      \"profile\": \"https://github.com/griff-rees\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"JessicaS11\",\n      \"name\": \"Jessica\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/11756442?v=4\",\n      \"profile\": \"https://github.com/JessicaS11\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"bcamino\",\n      \"name\": \"Bruno Camino\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/39554331?v=4\",\n      \"profile\": \"https://github.com/bcamino\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"alihumayun\",\n      \"name\": \"alihumayun\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/78482064?v=4\",\n      \"profile\": \"https://github.com/alihumayun\",\n      \"contributions\": [\n        \"bug\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"jatonline\",\n      \"name\": \"James Thomas\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/48878399?v=4\",\n      \"profile\": \"https://linkedin.com/in/jatonline\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"andreea-avramescu\",\n      \"name\": \"Andreea Avramescu\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/33720256?v=4\",\n      \"profile\": \"https://github.com/andreea-avramescu\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"hlnicholls\",\n      \"name\": \"hlnicholls\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/53306752?v=4\",\n      \"profile\": \"https://github.com/hlnicholls\",\n      \"contributions\": [\n        \"content\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"yabellini\",\n      \"name\": \"Yanina Bellini Saibene\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/2473676?v=4\",\n      \"profile\": \"https://yabellini.netlify.com/\",\n      \"contributions\": [\n        \"content\",\n        \"translation\",\n        \"review\",\n        \"ideas\",\n        \"eventOrganizing\"\n      ]\n    },\n    {\n      \"login\": \"dineshkumar12004\",\n      \"name\": \"Dinesh kumar\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/67814205?v=4\",\n      \"profile\": \"https://github.com/dineshkumar12004\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"ninadicara\",\n      \"name\": \"Nina\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/44364127?v=4\",\n      \"profile\": \"https://github.com/ninadicara\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"vcpope\",\n      \"name\": \"vcpope\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/62377353?v=4\",\n      \"profile\": \"https://github.com/vcpope\",\n      \"contributions\": [\n        \"talk\"\n      ]\n    },\n    {\n      \"login\": \"ThyavdBerg\",\n      \"name\": \"Thya van den Berg\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/77287134?v=4\",\n      \"profile\": \"https://github.com/ThyavdBerg\",\n      \"contributions\": [\n        \"eventOrganizing\"\n      ]\n    },\n    {\n      \"login\": \"mishkanemes\",\n      \"name\": \"Mishka Nemes\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/39628884?v=4\",\n      \"profile\": \"https://twitter.com/mishkanemes\",\n      \"contributions\": [\n        \"eventOrganizing\",\n        \"content\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"Iain-S\",\n      \"name\": \"Iain\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/25081046?v=4\",\n      \"profile\": \"https://github.com/Iain-S\",\n      \"contributions\": [\n        \"review\",\n        \"code\",\n        \"infra\"\n      ]\n    },\n    {\n      \"login\": \"RaoOfPhysics\",\n      \"name\": \"Achintya Rao\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/7623019?v=4\",\n      \"profile\": \"https://achintyarao.in\",\n      \"contributions\": [\n        \"bug\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"DaisyParry\",\n      \"name\": \"DaisyParry\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/56261324?v=4\",\n      \"profile\": \"https://github.com/DaisyParry\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"ZoeIngr\",\n      \"name\": \"ZoeIngr\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/80701413?v=4\",\n      \"profile\": \"https://github.com/ZoeIngr\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"mcollardanuy\",\n      \"name\": \"Mariona\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/46483603?v=4\",\n      \"profile\": \"https://www.turing.ac.uk/people/researchers/mariona-coll-ardanuy\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"Sergih28\",\n      \"name\": \"Sergi\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/16263046?v=4\",\n      \"profile\": \"https://github.com/Sergih28\",\n      \"contributions\": [\n        \"translation\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"perluna\",\n      \"name\": \"Luna\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/47083632?v=4\",\n      \"profile\": \"https://github.com/perluna\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"acocac\",\n      \"name\": \"Alejandro ©\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/13321552?v=4\",\n      \"profile\": \"https://github.com/acocac\",\n      \"contributions\": [\n        \"content\",\n        \"ideas\",\n        \"maintenance\",\n        \"doc\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"BeastyBlacksmith\",\n      \"name\": \"Simon Christ\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/18145188?v=4\",\n      \"profile\": \"https://github.com/BeastyBlacksmith\",\n      \"contributions\": [\n        \"bug\",\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"timyers\",\n      \"name\": \"Tim Myers\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/48717893?v=4\",\n      \"profile\": \"https://github.com/timyers\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"Aakash-Raj-2001\",\n      \"name\": \"Aakash Raj\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/79682170?v=4\",\n      \"profile\": \"https://github.com/Aakash-Raj-2001\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"guiomar\",\n      \"name\": \"Julia Guiomar Niso Galán\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/4451818?v=4\",\n      \"profile\": \"http://guiomarniso.com\",\n      \"contributions\": [\n        \"translation\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"Lion-admin\",\n      \"name\": \"Lion-admin\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/72327875?v=4\",\n      \"profile\": \"https://github.com/Lion-admin\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"raptorchief\",\n      \"name\": \"raptorchief\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/55805992?v=4\",\n      \"profile\": \"https://github.com/raptorchief\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"Aryannath\",\n      \"name\": \"Aryan nath\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/26514224?v=4\",\n      \"profile\": \"https://aryanuwu.myportfolio.com/\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"collinschwantes\",\n      \"name\": \"Collin Schwantes\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/6107885?v=4\",\n      \"profile\": \"http://collinschwantes.github.io\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"aniketh-varma\",\n      \"name\": \"Aniketh Varma\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/55805574?v=4\",\n      \"profile\": \"https://github.com/aniketh-varma\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"GGn0\",\n      \"name\": \"Luigi Scalzone\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/44038661?v=4\",\n      \"profile\": \"https://github.com/GGn0\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"claudia-belardi\",\n      \"name\": \"claudia-belardi\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/62244233?v=4\",\n      \"profile\": \"https://github.com/claudia-belardi\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"dingaaling\",\n      \"name\": \"Jennifer Ding\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/5104098?v=4\",\n      \"profile\": \"http://jending.com\",\n      \"contributions\": [\n        \"bug\",\n        \"translation\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"pc494\",\n      \"name\": \"Phillip Crout\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/32455330?v=4\",\n      \"profile\": \"https://github.com/pc494\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"aldenc\",\n      \"name\": \"Alden Conner\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/20688591?v=4\",\n      \"profile\": \"https://github.com/aldenc\",\n      \"contributions\": [\n        \"bug\",\n        \"tool\"\n      ]\n    },\n    {\n      \"login\": \"aseyq\",\n      \"name\": \"Ali Seyhun Saral\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/82848414?v=4\",\n      \"profile\": \"http://www.saral.it\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"vhellon\",\n      \"name\": \"vhellon\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/93144591?v=4\",\n      \"profile\": \"https://github.com/vhellon\",\n      \"contributions\": [\n        \"review\",\n        \"content\",\n        \"question\",\n        \"example\",\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"fdiblen\",\n      \"name\": \"Faruk D.\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/144492?v=4\",\n      \"profile\": \"https://github.com/fdiblen\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"bantya\",\n      \"name\": \"Rahul Thakare\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/16685565?v=4\",\n      \"profile\": \"https://github.com/bantya\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"melibleq\",\n      \"name\": \"Melissa Black\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/16723182?v=4\",\n      \"profile\": \"https://github.com/melibleq\",\n      \"contributions\": [\n        \"review\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"MarcosEllys\",\n      \"name\": \"Marcos Ellys Rocha Honorato\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/6751242?v=4\",\n      \"profile\": \"https://marcosellys.com\",\n      \"contributions\": [\n        \"translation\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"rafaelaqueirozg\",\n      \"name\": \"Rafaela Queiroz\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/42815135?v=4\",\n      \"profile\": \"https://www.linkedin.com/in/rafaelaqueirozg/\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"AndreaSanchezTapia\",\n      \"name\": \"Andrea Sánchez-Tapia (she/her)\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/4183062?v=4\",\n      \"profile\": \"https://andreasancheztapia.netlify.app/\",\n      \"contributions\": [\n        \"content\",\n        \"ideas\",\n        \"bug\",\n        \"a11y\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"ubikcan\",\n      \"name\": \"Jeremy Crampton\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/23242626?v=4\",\n      \"profile\": \"https://github.com/ubikcan\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"kerchner\",\n      \"name\": \"Dan Kerchner\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/3451175?v=4\",\n      \"profile\": \"https://github.com/kerchner\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"arronlacey\",\n      \"name\": \"Arron Lacey\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/4941299?v=4\",\n      \"profile\": \"http://www.getmarkup.com\",\n      \"contributions\": [\n        \"review\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"bast\",\n      \"name\": \"Radovan Bast\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/5120679?v=4\",\n      \"profile\": \"https://bast.fr\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"lukeconibear\",\n      \"name\": \"Luke Conibear\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/19871268?v=4\",\n      \"profile\": \"https://www.lukeconibear.com/\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"svenvanderburg\",\n      \"name\": \"Sven van der Burg\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/9945255?v=4\",\n      \"profile\": \"https://github.com/svenvanderburg\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"Phome95\",\n      \"name\": \"Phome95\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/100789966?v=4\",\n      \"profile\": \"https://github.com/Phome95\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"alekszaf\",\n      \"name\": \"Aleksandra Zaforemska\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/15204615?v=4\",\n      \"profile\": \"https://github.com/alekszaf\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"Froguin99\",\n      \"name\": \"Froguin99\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/93538632?v=4\",\n      \"profile\": \"https://github.com/Froguin99\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"DACNC\",\n      \"name\": \"DACNC\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/57093439?v=4\",\n      \"profile\": \"https://github.com/DACNC\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"davidegregg\",\n      \"name\": \"David Gregg\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/45788793?v=4\",\n      \"profile\": \"https://research.ncl.ac.uk/geospatial-systems/phdresearchers/profiles/davidgregg.html\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"mingyuzhuu\",\n      \"name\": \"mingyuzhuu\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/57093217?v=4\",\n      \"profile\": \"https://github.com/mingyuzhuu\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"rachelzwalker\",\n      \"name\": \"rachelzwalker\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/100789985?v=4\",\n      \"profile\": \"https://github.com/rachelzwalker\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"amasud08\",\n      \"name\": \"Ambreen Masud\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/93528449?v=4\",\n      \"profile\": \"https://github.com/amasud08\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"keneuoe\",\n      \"name\": \"keneuoe\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/32788068?v=4\",\n      \"profile\": \"https://github.com/keneuoe\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"sophiejean\",\n      \"name\": \"Sophie J Mann\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/100791169?v=4\",\n      \"profile\": \"https://github.com/sophiejean\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"eddybruv\",\n      \"name\": \"Edwin Ajong\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/80322163?v=4\",\n      \"profile\": \"https://www.linkedin.com/in/edwin-ajong-51601a217/\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"aleesteele\",\n      \"name\": \"Anne Lee Steele\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/18509789?v=4\",\n      \"profile\": \"http://www.aleesteele.com\",\n      \"contributions\": [\n        \"review\",\n        \"bug\",\n        \"eventOrganizing\",\n        \"a11y\",\n        \"ideas\",\n        \"content\",\n        \"doc\",\n        \"talk\",\n        \"tutorial\",\n        \"maintenance\",\n        \"video\"\n      ]\n    },\n    {\n      \"login\": \"abelsiqueira\",\n      \"name\": \"Abel Siqueira\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/1068752?v=4\",\n      \"profile\": \"http://abelsiqueira.github.io\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"lukehare\",\n      \"name\": \"lukehare\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/44277986?v=4\",\n      \"profile\": \"https://github.com/lukehare\",\n      \"contributions\": [\n        \"infra\",\n        \"maintenance\"\n      ]\n    },\n    {\n      \"login\": \"Elisa-on-GitHub\",\n      \"name\": \"Elisa-on-GitHub\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/78543806?v=4\",\n      \"profile\": \"https://github.com/Elisa-on-GitHub\",\n      \"contributions\": [\n        \"bug\",\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"harisood\",\n      \"name\": \"harisood\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/67151373?v=4\",\n      \"profile\": \"https://github.com/harisood\",\n      \"contributions\": [\n        \"bug\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"patrickmineault\",\n      \"name\": \"Patrick Mineault\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/3516539?v=4\",\n      \"profile\": \"http://xcorr.net\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"annefou\",\n      \"name\": \"Anne Fouilloux\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/8168508?v=4\",\n      \"profile\": \"http://www.mn.uio.no/geo/english/people/adm/annefou/\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"richplant\",\n      \"name\": \"Richard Plant\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/11060480?v=4\",\n      \"profile\": \"http://rplant.netlify.app\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"likeajumprope\",\n      \"name\": \"Johanna Bayer\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/23728822?v=4\",\n      \"profile\": \"https://github.com/likeajumprope\",\n      \"contributions\": [\n        \"review\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"timothy22000\",\n      \"name\": \"timothy22000\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/9934371?v=4\",\n      \"profile\": \"https://github.com/timothy22000\",\n      \"contributions\": [\n        \"translation\",\n        \"content\",\n        \"infra\"\n      ]\n    },\n    {\n      \"login\": \"SaranjeetKaur\",\n      \"name\": \"Saranjeet Kaur\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/28556616?v=4\",\n      \"profile\": \"https://saranjeetkaur.github.io/About-Me/\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\",\n        \"review\",\n        \"a11y\"\n      ]\n    },\n    {\n      \"login\": \"K-C-Martin\",\n      \"name\": \"K-C-Martin\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/57388565?v=4\",\n      \"profile\": \"https://github.com/K-C-Martin\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"JamieJQuinn\",\n      \"name\": \"Jamie J Quinn\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/8229296?v=4\",\n      \"profile\": \"http://jamiejquinn.com\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"rapw3k\",\n      \"name\": \"Raul Palma\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/557493?v=4\",\n      \"profile\": \"https://github.com/rapw3k\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"loleg\",\n      \"name\": \"Oleg Lavrovsky\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/31819?v=4\",\n      \"profile\": \"https://datalets.ch\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"JimCircadian\",\n      \"name\": \"Jim Circadian\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/731727?v=4\",\n      \"profile\": \"http://inconsistentrecords.co.uk\",\n      \"contributions\": [\n        \"content\",\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"duerrsimon\",\n      \"name\": \"Simon Duerr\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/16979577?v=4\",\n      \"profile\": \"http://simonduerr.eu\",\n      \"contributions\": [\n        \"bug\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"sjvrijn\",\n      \"name\": \"Sander\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/8833517?v=4\",\n      \"profile\": \"http://www.svrijn.nl\",\n      \"contributions\": [\n        \"bug\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"eltociear\",\n      \"name\": \"Ikko Ashimine\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/22633385?v=4\",\n      \"profile\": \"https://bandism.net/\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"mariadelmarq\",\n      \"name\": \"Maria del Mar Quiroga\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/12743476?v=4\",\n      \"profile\": \"https://github.com/mariadelmarq\",\n      \"contributions\": [\n        \"content\",\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"AsmaKacem1\",\n      \"name\": \"Asma Kacem\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/73066984?v=4\",\n      \"profile\": \"https://asmakacem.me/\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"edwardchalstrey1\",\n      \"name\": \"Ed Chalstrey\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/5486164?v=4\",\n      \"profile\": \"http://edchalstrey.com/\",\n      \"contributions\": [\n        \"content\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"ClauFischer\",\n      \"name\": \"ClauFischer\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/104078689?v=4\",\n      \"profile\": \"https://github.com/ClauFischer\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"ocorcho\",\n      \"name\": \"Oscar Corcho\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/1067341?v=4\",\n      \"profile\": \"http://www.oeg-upm.net/index.php/en/teachers/11-ocorcho/index.html\",\n      \"contributions\": [\n        \"content\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"sgichuki\",\n      \"name\": \"sgichuki\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/53834942?v=4\",\n      \"profile\": \"https://www.linkedin.com/in/susanwg/\",\n      \"contributions\": [\n        \"content\",\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"TueloNtlotlang\",\n      \"name\": \"TueloNtlotlang\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/72657722?v=4\",\n      \"profile\": \"https://github.com/TueloNtlotlang\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"shashank-k-y\",\n      \"name\": \"Shashank\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/74789167?v=4\",\n      \"profile\": \"https://github.com/shashank-k-y\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"dpdong19\",\n      \"name\": \"Danping\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/54056456?v=4\",\n      \"profile\": \"https://github.com/dpdong19\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"JadeHotchkiss\",\n      \"name\": \"JadeHotchkiss\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/25898078?v=4\",\n      \"profile\": \"https://github.com/JadeHotchkiss\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"sarasrking\",\n      \"name\": \"Sara King\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/48195568?v=4\",\n      \"profile\": \"https://github.com/sarasrking\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"gcroci2\",\n      \"name\": \"Giulia Crocioni\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/55382553?v=4\",\n      \"profile\": \"https://www.linkedin.com/in/giulia-crocioni/\",\n      \"contributions\": [\n        \"translation\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"snehashish-ghosh98\",\n      \"name\": \"snehashish-ghosh98\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/106345869?v=4\",\n      \"profile\": \"https://github.com/snehashish-ghosh98\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"FrozenLines\",\n      \"name\": \"FrozenLines\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/103727912?v=4\",\n      \"profile\": \"https://github.com/FrozenLines\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"brynnelliott\",\n      \"name\": \"brynnelliott\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/104380698?v=4\",\n      \"profile\": \"https://github.com/brynnelliott\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"pascalflohr\",\n      \"name\": \"pascalflohr\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/43570914?v=4\",\n      \"profile\": \"https://github.com/pascalflohr\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"peranti\",\n      \"name\": \"Pradeep Eranti\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/9472741?v=4\",\n      \"profile\": \"https://github.com/peranti\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"acrall\",\n      \"name\": \"acrall\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/17599316?v=4\",\n      \"profile\": \"https://github.com/acrall\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"ubdbra001\",\n      \"name\": \"Dan Brady\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/18421270?v=4\",\n      \"profile\": \"https://github.com/ubdbra001\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"RabeaMue\",\n      \"name\": \"Rabea Müller\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/42644523?v=4\",\n      \"profile\": \"https://github.com/RabeaMue\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"rootsandberries\",\n      \"name\": \"Sarah Young\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/11933741?v=4\",\n      \"profile\": \"https://github.com/rootsandberries\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"iramosp\",\n      \"name\": \"iramosp\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/8619939?v=4\",\n      \"profile\": \"https://github.com/iramosp\",\n      \"contributions\": [\n        \"bug\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"merlijn-de-smit\",\n      \"name\": \"merlijn-de-smit\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/110983126?v=4\",\n      \"profile\": \"https://github.com/merlijn-de-smit\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"jsteyn\",\n      \"name\": \"Jannetta Steyn\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/6432530?v=4\",\n      \"profile\": \"http://www.jannetta.com\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"martinjeanphd\",\n      \"name\": \"Martin Jean\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/44728169?v=4\",\n      \"profile\": \"https://github.com/martinjeanphd\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"radersma\",\n      \"name\": \"Reinder Radersma\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/28388211?v=4\",\n      \"profile\": \"https://github.com/radersma\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"rickdkk\",\n      \"name\": \"rickdkk\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/33315062?v=4\",\n      \"profile\": \"https://orcid.org/0000-0003-2745-1963\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"CarlosMFerr\",\n      \"name\": \"CarlosMFerr\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/111580443?v=4\",\n      \"profile\": \"https://github.com/CarlosMFerr\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"ghuangcazza\",\n      \"name\": \"ghuangcazza\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/72579332?v=4\",\n      \"profile\": \"https://github.com/ghuangcazza\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"CariHV\",\n      \"name\": \"Cari Hyde-Vaamonde\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/82444709?v=4\",\n      \"profile\": \"https://github.com/CariHV\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\",\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"MLeston2022\",\n      \"name\": \"MLeston2022\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/114400532?v=4\",\n      \"profile\": \"https://github.com/MLeston2022\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"lakillo\",\n      \"name\": \"lakillo\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/81825476?v=4\",\n      \"profile\": \"https://github.com/lakillo\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"Trish-hub\",\n      \"name\": \"Trish\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/78088054?v=4\",\n      \"profile\": \"https://github.com/Trish-hub\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"scjjb\",\n      \"name\": \"Jack Breen\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/77981425?v=4\",\n      \"profile\": \"https://github.com/scjjb\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"rdnfn\",\n      \"name\": \"Arduin\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/75615911?v=4\",\n      \"profile\": \"http://arduin.io\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"SarahMiller137\",\n      \"name\": \"Sarah Miller\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/9994261?v=4\",\n      \"profile\": \"https://github.com/SarahMiller137\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"kkaryono\",\n      \"name\": \"kkaryono\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/68295052?v=4\",\n      \"profile\": \"https://github.com/kkaryono\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"srtmohan\",\n      \"name\": \"srtmohan\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/114400355?v=4\",\n      \"profile\": \"https://github.com/srtmohan\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"dumei00\",\n      \"name\": \"dumei00\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/94013453?v=4\",\n      \"profile\": \"https://github.com/dumei00\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"aasiyahrashan\",\n      \"name\": \"Aasiyah Rashan\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/9165437?v=4\",\n      \"profile\": \"https://github.com/aasiyahrashan\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"LizHareDogs\",\n      \"name\": \"LizHareDogs\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/53099600?v=4\",\n      \"profile\": \"https://github.com/LizHareDogs\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\",\n        \"a11y\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"BrianAndrewOneil\",\n      \"name\": \"Brian O'Neil\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/102704305?v=4\",\n      \"profile\": \"https://brianoneil.netlify.app/\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"selvi-aras\",\n      \"name\": \"Aras Selvi\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/55166614?v=4\",\n      \"profile\": \"http://linkedin.com/in/arasselvi\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"AnkitaGarg95\",\n      \"name\": \"AnkitaGarg95\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/70006784?v=4\",\n      \"profile\": \"https://github.com/AnkitaGarg95\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"v-smith\",\n      \"name\": \"Vicky Smith\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/72864814?v=4\",\n      \"profile\": \"https://www.linkedin.com/in/victoria-smith-754602104/\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"Elisarau\",\n      \"name\": \"Elisa Rauseo\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/88763664?v=4\",\n      \"profile\": \"https://github.com/Elisarau\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"anicusan\",\n      \"name\": \"Andrei Leonard Nicusan\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/20279119?v=4\",\n      \"profile\": \"http://anicusan.github.io\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"annarae13\",\n      \"name\": \"annarae13\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/53874820?v=4\",\n      \"profile\": \"https://github.com/annarae13\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"Zeena-Shawa\",\n      \"name\": \"Zeena-Shawa\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/72321461?v=4\",\n      \"profile\": \"https://github.com/Zeena-Shawa\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"VatsalNagelia\",\n      \"name\": \"VatsalNagelia\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/52467754?v=4\",\n      \"profile\": \"https://github.com/VatsalNagelia\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"grczh\",\n      \"name\": \"grczh\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/92826273?v=4\",\n      \"profile\": \"https://github.com/grczh\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"mahmoud-elsherif\",\n      \"name\": \"mahmoud-elsherif\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/44072961?v=4\",\n      \"profile\": \"https://github.com/mahmoud-elsherif\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"owainkenwayucl\",\n      \"name\": \"Dr Owain Kenway\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/4256093?v=4\",\n      \"profile\": \"https://owainkenwayucl.github.io/\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"ha0ye\",\n      \"name\": \"Hao Ye\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/5835366?v=4\",\n      \"profile\": \"http://haoye.us\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"AngelikaKerlin\",\n      \"name\": \"AngelikaKerlin\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/115996571?v=4\",\n      \"profile\": \"https://github.com/AngelikaKerlin\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"s-shivanand\",\n      \"name\": \"Sharana Shivanand\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/107891112?v=4\",\n      \"profile\": \"https://github.com/s-shivanand\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"ClaudiaCAU\",\n      \"name\": \"ClaudiaCAU\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/32701238?v=4\",\n      \"profile\": \"https://github.com/ClaudiaCAU\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"Girl-in-Geo\",\n      \"name\": \"Laura Mugeha\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/47306402?v=4\",\n      \"profile\": \"https://github.com/Girl-in-Geo\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"TheAbstract\",\n      \"name\": \"Siphiwe\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/56311555?v=4\",\n      \"profile\": \"https://theabstract.github.io/\",\n      \"contributions\": [\n        \"bug\",\n        \"review\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"booktrackerGirl\",\n      \"name\": \"Aditi Dutta\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/45264620?v=4\",\n      \"profile\": \"https://www.linkedin.com/in/aditi-dutta-22a299135/\",\n      \"contributions\": [\n        \"bug\",\n        \"content\",\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"gregcaporaso\",\n      \"name\": \"Greg Caporaso\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/192372?v=4\",\n      \"profile\": \"http://www.caporasolab.us\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"SianC\",\n      \"name\": \"SianC\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/52662865?v=4\",\n      \"profile\": \"https://github.com/SianC\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"russellmartin321\",\n      \"name\": \"russellmartin321\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/104580892?v=4\",\n      \"profile\": \"https://github.com/russellmartin321\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"sradicwebster\",\n      \"name\": \"Stefan Radic Webster\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/56719930?v=4\",\n      \"profile\": \"https://sradicwebster.me/\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"KatrionaGoldmann\",\n      \"name\": \"Katriona Goldmann\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/25952322?v=4\",\n      \"profile\": \"https://katrionagoldmann.github.io\",\n      \"contributions\": [\n        \"content\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"egpbos\",\n      \"name\": \"Patrick Bos\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/6146598?v=4\",\n      \"profile\": \"http://egpbos.nl\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"radifar\",\n      \"name\": \"Muhammad Radifar\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/11450417?v=4\",\n      \"profile\": \"http://radifar.github.io\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"klbarnes20\",\n      \"name\": \"Kelly Barnes\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/64787509?v=4\",\n      \"profile\": \"https://github.com/klbarnes20\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"Varachkina\",\n      \"name\": \"Varachkina\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/22443239?v=4\",\n      \"profile\": \"https://gitlab.gwdg.de/users/hanna.varachkina/contributed\",\n      \"contributions\": [\n        \"content\",\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"WinnyNekesa\",\n      \"name\": \"WNekesa\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/110591866?v=4\",\n      \"profile\": \"https://github.com/WinnyNekesa\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"DorienHuijser\",\n      \"name\": \"Dorien Huijser\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/58177697?v=4\",\n      \"profile\": \"http://www.dorienhuijser.com\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"RayStick\",\n      \"name\": \"Rachael Stickland\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/50215726?v=4\",\n      \"profile\": \"http://linkedin.com/in/rstickland-phd\",\n      \"contributions\": [\n        \"content\",\n        \"ideas\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"Rainiefantasy\",\n      \"name\": \"Mahwish M\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/43926907?v=4\",\n      \"profile\": \"https://github.com/Rainiefantasy\",\n      \"contributions\": [\n        \"content\",\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"la-sts\",\n      \"name\": \"Luis Santos\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/34314067?v=4\",\n      \"profile\": \"https://github.com/la-sts\",\n      \"contributions\": [\n        \"ideas\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"DDelbarre\",\n      \"name\": \"DDelbarre\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/108824056?v=4\",\n      \"profile\": \"https://github.com/DDelbarre\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"amallon\",\n      \"name\": \"Ann-Marie Mallon\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/35258603?v=4\",\n      \"profile\": \"https://github.com/amallon\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"H-Mateus\",\n      \"name\": \"Mateus Harrington\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/26403410?v=4\",\n      \"profile\": \"https://gmbernardoharrington.netlify.app/\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"gllmflndn\",\n      \"name\": \"Guillaume Flandin\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/5950855?v=4\",\n      \"profile\": \"https://www.fil.ion.ucl.ac.uk/team/spm-team/\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"priyanshuone6\",\n      \"name\": \"Priyanshu Agarwal\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/64051212?v=4\",\n      \"profile\": \"http://git.io/priyanshu\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"pdurbin\",\n      \"name\": \"Philip Durbin\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/21006?v=4\",\n      \"profile\": \"http://greptilian.com\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"sjDCC\",\n      \"name\": \"Sarah Jones\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/6169940?v=4\",\n      \"profile\": \"https://dmponline.dcc.ac.uk\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"flavio2018\",\n      \"name\": \"Flavio Petruzzellis\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/39437769?v=4\",\n      \"profile\": \"http://flavio2018.github.io\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"jonnyhorsley\",\n      \"name\": \"jonnyhorsley\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/57093278?v=4\",\n      \"profile\": \"https://github.com/JonnyHorsley\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"KarolineLeiberg\",\n      \"name\": \"KarolineLeiberg\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/57093276?v=4\",\n      \"profile\": \"https://github.com/KarolineLeiberg\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"PaulWatson9994\",\n      \"name\": \"Paul Watson\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/7299312?v=4\",\n      \"profile\": \"https://www.ncl.ac.uk/computing/people/profile/paulwatson.html#background\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"mengyucui123\",\n      \"name\": \"mengyucui123\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/124688773?v=4\",\n      \"profile\": \"https://github.com/mengyucui123\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"dsmukilan\",\n      \"name\": \"Mukilan\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/11191375?v=4\",\n      \"profile\": \"https://github.com/dsmukilan\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"caroldutra3\",\n      \"name\": \"caroldutra3\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/86290575?v=4\",\n      \"profile\": \"https://github.com/caroldutra3\",\n      \"contributions\": [\n        \"ideas\",\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"sandygudie\",\n      \"name\": \"Goodnews Sandy\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/54219127?v=4\",\n      \"profile\": \"https://goodnewssandy.netlify.app/\",\n      \"contributions\": [\n        \"bug\",\n        \"content\",\n        \"review\",\n        \"eventOrganizing\",\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"tpronk\",\n      \"name\": \"tpronk\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/8987504?v=4\",\n      \"profile\": \"https://github.com/tpronk\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"chartgerink\",\n      \"name\": \"Chris Hartgerink\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/2946344?v=4\",\n      \"profile\": \"https://chjh.nl\",\n      \"contributions\": [\n        \"eventOrganizing\"\n      ]\n    },\n    {\n      \"login\": \"msundukova\",\n      \"name\": \"Mayya Sundukova\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/34685833?v=4\",\n      \"profile\": \"https://github.com/msundukova\",\n      \"contributions\": [\n        \"eventOrganizing\"\n      ]\n    },\n    {\n      \"login\": \"shreyadimri\",\n      \"name\": \"Shreya Dimri\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/58469708?v=4\",\n      \"profile\": \"https://github.com/shreyadimri\",\n      \"contributions\": [\n        \"review\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"RealRichi3\",\n      \"name\": \"Richie\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/76791916?v=4\",\n      \"profile\": \"https://realrichi3.github.io\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\",\n        \"infra\"\n      ]\n    },\n    {\n      \"login\": \"meliimming\",\n      \"name\": \"meliimming\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/129850001?v=4\",\n      \"profile\": \"https://github.com/meliimming\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"RichardJActon\",\n      \"name\": \"Richard James Acton\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/6893043?v=4\",\n      \"profile\": \"https://richardjacton.github.io/\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\",\n        \"review\",\n        \"a11y\"\n      ]\n    },\n    {\n      \"login\": \"mkhslaa\",\n      \"name\": \"mkhslaa\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/4571759?v=4\",\n      \"profile\": \"https://github.com/mkhslaa\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"robbykha\",\n      \"name\": \"robbykha\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/131724231?v=4\",\n      \"profile\": \"https://github.com/robbykha\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"TanyaYankelevich\",\n      \"name\": \"Tanya Yankelevich\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/107634879?v=4\",\n      \"profile\": \"https://www.tudelft.nl/open-science\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"luisaforozco\",\n      \"name\": \"Luisa Orozco\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/99738896?v=4\",\n      \"profile\": \"https://github.com/luisaforozco\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"jurra\",\n      \"name\": \"Jose Urra \",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/18581201?v=4\",\n      \"profile\": \"https://github.com/jurra\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"GabinWK\",\n      \"name\": \"GabinWK\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/104582708?v=4\",\n      \"profile\": \"https://github.com/GabinWK\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"hughesthe1st\",\n      \"name\": \"Sean Hughes\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/6203251?v=4\",\n      \"profile\": \"https://github.com/hughesthe1st\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"SaraVilla\",\n      \"name\": \"Sara Villa\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/43204602?v=4\",\n      \"profile\": \"https://github.com/SaraVilla\",\n      \"contributions\": [\n        \"content\",\n        \"review\",\n        \"a11y\"\n      ]\n    },\n    {\n      \"login\": \"ciupava\",\n      \"name\": \"Anna Zanchetta\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/3450313?v=4\",\n      \"profile\": \"https://github.com/ciupava\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"spier\",\n      \"name\": \"Sebastian Spier\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/163029?v=4\",\n      \"profile\": \"https://spier.hu\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"srtee\",\n      \"name\": \"Shern Tee\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/60586092?v=4\",\n      \"profile\": \"https://github.com/srtee\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"Susana465\",\n      \"name\": \"Susana Roman Garcia\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/73224467?v=4\",\n      \"profile\": \"https://susana465.github.io/\",\n      \"contributions\": [\n        \"question\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"mosoriob\",\n      \"name\": \"Maximiliano Osorio\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/2365990?v=4\",\n      \"profile\": \"https://mosorio.dev\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"Nolski\",\n      \"name\": \"Mike Nolan\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/2600677?v=4\",\n      \"profile\": \"http://nolski.rocks\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"benvanwerkhoven\",\n      \"name\": \"Ben van Werkhoven\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/2337546?v=4\",\n      \"profile\": \"https://github.com/benvanwerkhoven\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"drjwbaker\",\n      \"name\": \"James Baker\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/4965300?v=4\",\n      \"profile\": \"http://cradledincaricature.com/\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"arya1302\",\n      \"name\": \"Arya A\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/73542599?v=4\",\n      \"profile\": \"https://github.com/arya1302\",\n      \"contributions\": [\n        \"code\",\n        \"review\",\n        \"doc\",\n        \"bug\",\n        \"content\",\n        \"ideas\",\n        \"infra\",\n        \"userTesting\",\n        \"test\"\n      ]\n    },\n    {\n      \"login\": \"JaroCamphuijsen\",\n      \"name\": \"Jaro Camphuijsen\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/12695232?v=4\",\n      \"profile\": \"https://github.com/JaroCamphuijsen\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"penyuan\",\n      \"name\": \"penyuan\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/13352427?v=4\",\n      \"profile\": \"https://www.penonek.com/\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"ljcolling\",\n      \"name\": \"Lincoln Colling\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/21215217?v=4\",\n      \"profile\": \"http://research.colling.net.nz\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"sadielbartholomew\",\n      \"name\": \"Sadie L. Bartholomew\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/30274190?v=4\",\n      \"profile\": \"http://sadielbartholomew.github.io\",\n      \"contributions\": [\n        \"content\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"ereynaud\",\n      \"name\": \"Emmanuel G. REYNAUD\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/12295393?v=4\",\n      \"profile\": \"https://github.com/ereynaud\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"kallewesterling\",\n      \"name\": \"Kalle Westerling\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/7298727?v=4\",\n      \"profile\": \"http://www.westerling.nu\",\n      \"contributions\": [\n        \"content\",\n        \"review\",\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"CeilidhWelsh\",\n      \"name\": \"CeilidhWelsh\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/71887891?v=4\",\n      \"profile\": \"https://github.com/CeilidhWelsh\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"llewelld\",\n      \"name\": \"David Llewellyn-Jones\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/1446122?v=4\",\n      \"profile\": \"https://www.flypig.co.uk\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"MoritzMaxeiner\",\n      \"name\": \"Moritz Maxeiner\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/497073?v=4\",\n      \"profile\": \"https://github.com/MoritzMaxeiner\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"MayaAndersonGonzalez\",\n      \"name\": \"Maya Anderson-González\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/56874297?v=4\",\n      \"profile\": \"https://mayaandersongonzalez.hcommons.org\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"gigikenneth\",\n      \"name\": \"Gigi Kenneth\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/52600214?v=4\",\n      \"profile\": \"https://bit.ly/gigi-kenneth\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"myyong\",\n      \"name\": \"myyong\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/5417696?v=4\",\n      \"profile\": \"https://github.com/myyong\",\n      \"contributions\": [\n        \"code\",\n        \"infra\"\n      ]\n    },\n    {\n      \"login\": \"LydiaFrance\",\n      \"name\": \"Lydia France\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/85945427?v=4\",\n      \"profile\": \"https://github.com/LydiaFrance\",\n      \"contributions\": [\n        \"code\",\n        \"infra\"\n      ]\n    },\n    {\n      \"login\": \"thessaly\",\n      \"name\": \"juli arancio\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/33497609?v=4\",\n      \"profile\": \"http://julieta.aranc.io\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"mhauru\",\n      \"name\": \"Markus Hauru\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/5229876?v=4\",\n      \"profile\": \"http://mhauru.org\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"Jerzeek\",\n      \"name\": \"Jerry de Vos\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/22919620?v=4\",\n      \"profile\": \"http://jerrydevos.com\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"SachaHq\",\n      \"name\": \"Sacha Hodencq\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/58265506?v=4\",\n      \"profile\": \"https://github.com/SachaHq\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"zimolzak\",\n      \"name\": \"Andy Zimolzak\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/2705315?v=4\",\n      \"profile\": \"https://github.com/zimolzak\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"Cghlewis\",\n      \"name\": \"Cghlewis\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/33465957?v=4\",\n      \"profile\": \"http://cghlewis.com\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"richarddushime\",\n      \"name\": \"Richard Dushime\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/45734838?v=4\",\n      \"profile\": \"http://richarddushime.netlify.app/\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"gedankenstuecke\",\n      \"name\": \"Bastian Greshake Tzovaras\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/674899?v=4\",\n      \"profile\": \"https://tzovar.as\",\n      \"contributions\": [\n        \"eventOrganizing\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"k8hertweck\",\n      \"name\": \"Kate Hertweck\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/1678233?v=4\",\n      \"profile\": \"http://katehertweck.com\",\n      \"contributions\": [\n        \"eventOrganizing\"\n      ]\n    },\n    {\n      \"login\": \"emmyft\",\n      \"name\": \"Emmy Tsang\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/24935760?v=4\",\n      \"profile\": \"https://emmyft.github.io\",\n      \"contributions\": [\n        \"eventOrganizing\"\n      ]\n    },\n    {\n      \"login\": \"lubianat\",\n      \"name\": \"Tiago Lubiana\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/7917951?v=4\",\n      \"profile\": \"https://github.com/lubianat\",\n      \"contributions\": [\n        \"eventOrganizing\"\n      ]\n    },\n    {\n      \"login\": \"humbertodebat\",\n      \"name\": \"Humberto Debat\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/55153399?v=4\",\n      \"profile\": \"https://github.com/humbertodebat\",\n      \"contributions\": [\n        \"eventOrganizing\"\n      ]\n    },\n    {\n      \"login\": \"melissawm\",\n      \"name\": \"Melissa Weber Mendonça\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/3949932?v=4\",\n      \"profile\": \"http://melissawm.github.io\",\n      \"contributions\": [\n        \"eventOrganizing\"\n      ]\n    },\n    {\n      \"login\": \"dpshelio\",\n      \"name\": \"David Pérez-Suárez\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/963242?v=4\",\n      \"profile\": \"http://dpshelio.github.io\",\n      \"contributions\": [\n        \"eventOrganizing\"\n      ]\n    },\n    {\n      \"login\": \"IshanG97\",\n      \"name\": \"IshanG97\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/32465586?v=4\",\n      \"profile\": \"https://github.com/IshanG97\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"AoifeHughes\",\n      \"name\": \"Aoife\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/10923695?v=4\",\n      \"profile\": \"https://github.com/AoifeHughes\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"jessieontherun\",\n      \"name\": \"jessieontherun\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/56831617?v=4\",\n      \"profile\": \"https://github.com/jessieontherun\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"AbcSxyZ\",\n      \"name\": \"AbcSxyZ\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/34010605?v=4\",\n      \"profile\": \"https://github.com/AbcSxyZ\",\n      \"contributions\": [\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"AlexandraAAJ\",\n      \"name\": \"Alexandra Araujo Alvarez\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/124181438?v=4\",\n      \"profile\": \"https://github.com/AlexandraAAJ\",\n      \"contributions\": [\n        \"content\",\n        \"example\",\n        \"doc\",\n        \"review\",\n        \"a11y\"\n      ]\n    },\n    {\n      \"login\": \"f-rower\",\n      \"name\": \"f-rower\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/29379394?v=4\",\n      \"profile\": \"https://github.com/f-rower\",\n      \"contributions\": [\n        \"code\",\n        \"content\",\n        \"doc\",\n        \"design\",\n        \"ideas\",\n        \"maintenance\",\n        \"promotion\",\n        \"question\",\n        \"test\"\n      ]\n    },\n    {\n      \"login\": \"lucyjstephenson\",\n      \"name\": \"Lucy Stephenson\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/112892956?v=4\",\n      \"profile\": \"https://github.com/lucyjstephenson\",\n      \"contributions\": [\n        \"example\",\n        \"content\",\n        \"bug\",\n        \"maintenance\",\n        \"ideas\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"CDonesCU\",\n      \"name\": \"CDonesCU\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/169474876?v=4\",\n      \"profile\": \"https://github.com/CDonesCU\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"aranas\",\n      \"name\": \"Sophie Arana\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/6906140?v=4\",\n      \"profile\": \"https://github.com/aranas\",\n      \"contributions\": [\n        \"bug\",\n        \"content\",\n        \"ideas\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"gandrewgabriel\",\n      \"name\": \"George Gabriel\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/52380254?v=4\",\n      \"profile\": \"https://github.com/gandrewgabriel\",\n      \"contributions\": [\n        \"infra\",\n        \"code\",\n        \"test\"\n      ]\n    },\n    {\n      \"login\": \"amefonaffia\",\n      \"name\": \"Abasi-amefon Affia\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/20369026?v=4\",\n      \"profile\": \"https://github.com/amefonaffia\",\n      \"contributions\": [\n        \"content\",\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"luisacutillo78\",\n      \"name\": \"Luisa\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/13733038?v=4\",\n      \"profile\": \"https://github.com/luisacutillo78\",\n      \"contributions\": [\n        \"content\",\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"lwalma\",\n      \"name\": \"lwalma\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/100857620?v=4\",\n      \"profile\": \"https://github.com/lwalma\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"asoaresca\",\n      \"name\": \"asoaresca\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/143703780?v=4\",\n      \"profile\": \"https://github.com/asoaresca\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"NoorhanAbbas\",\n      \"name\": \"NoorhanAbbas\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/84336434?v=4\",\n      \"profile\": \"https://github.com/NoorhanAbbas\",\n      \"contributions\": [\n        \"content\",\n        \"ideas\"\n      ]\n    },\n    {\n      \"login\": \"harrietrs\",\n      \"name\": \"Harriet Sands\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/28767009?v=4\",\n      \"profile\": \"https://github.com/harrietrs\",\n      \"contributions\": [\n        \"review\",\n        \"a11y\"\n      ]\n    },\n    {\n      \"login\": \"manuGil\",\n      \"name\": \"Manuel Garcia\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/8195424?v=4\",\n      \"profile\": \"https://github.com/manuGil\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"danshearer\",\n      \"name\": \"Dan Shearer\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/3944577?v=4\",\n      \"profile\": \"https://cv.shearer.org\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"ccoulombe\",\n      \"name\": \"Charles Coulombe\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/22602168?v=4\",\n      \"profile\": \"https://github.com/ccoulombe\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"denisebianco\",\n      \"name\": \"denisebianco\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/151555588?v=4\",\n      \"profile\": \"https://github.com/denisebianco\",\n      \"contributions\": [\n        \"eventOrganizing\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"anjackson\",\n      \"name\": \"Andy Jackson\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/87843?v=4\",\n      \"profile\": \"http://anjackson.net\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"Preshh0\",\n      \"name\": \"Precious Onyewuchi\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/42142405?v=4\",\n      \"profile\": \"https://github.com/Preshh0\",\n      \"contributions\": [\n        \"content\",\n        \"a11y\",\n        \"review\",\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"fhreidsma\",\n      \"name\": \"fhreidsma\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/80468267?v=4\",\n      \"profile\": \"https://github.com/fhreidsma\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"sreenithyaa\",\n      \"name\": \"sreenithyaa\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/64282208?v=4\",\n      \"profile\": \"https://github.com/sreenithyaa\",\n      \"contributions\": [\n        \"review\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"RVFlowers\",\n      \"name\": \"Sophie T\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/44363442?v=4\",\n      \"profile\": \"https://github.com/RVFlowers\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"aframosp\",\n      \"name\": \"Andrés Ramos\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/13357890?v=4\",\n      \"profile\": \"http://www.astro.rug.nl/~ramos\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"bbartholdy\",\n      \"name\": \"Bjørn Peare Bartholdy\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/47455812?v=4\",\n      \"profile\": \"https://github.com/bbartholdy\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"LelleDi\",\n      \"name\": \"LélléD\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/108274982?v=4\",\n      \"profile\": \"https://github.com/LelleDi\",\n      \"contributions\": [\n        \"content\",\n        \"review\",\n        \"a11y\",\n        \"eventOrganizing\"\n      ]\n    },\n    {\n      \"login\": \"StatsRhian\",\n      \"name\": \"Rhian Davies\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/7017740?v=4\",\n      \"profile\": \"https://rhian.rbind.io\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"andreaczhang\",\n      \"name\": \"Chi Zhang\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/32897643?v=4\",\n      \"profile\": \"https://andreaczhang.github.io\",\n      \"contributions\": [\n        \"review\",\n        \"a11y\"\n      ]\n    },\n    {\n      \"login\": \"JFormoso\",\n      \"name\": \"Jesica Formoso\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/32418102?v=4\",\n      \"profile\": \"https://github.com/JFormoso\",\n      \"contributions\": [\n        \"review\",\n        \"a11y\"\n      ]\n    },\n    {\n      \"login\": \"PatriLoto\",\n      \"name\": \"Patricia A. Loto\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/39300655?v=4\",\n      \"profile\": \"https://patricia-loto.netlify.app/\",\n      \"contributions\": [\n        \"content\",\n        \"a11y\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"chrisdburr\",\n      \"name\": \"Christopher Burr\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/63010234?v=4\",\n      \"profile\": \"https://chrisdburr.github.io\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"giuliatomba\",\n      \"name\": \"giuliatomba\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/56237678?v=4\",\n      \"profile\": \"https://github.com/giuliatomba\",\n      \"contributions\": [\n        \"ideas\",\n        \"content\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"nghuixin\",\n      \"name\": \"Renee (Hui Xin) Ng\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/16829271?v=4\",\n      \"profile\": \"http://huixinng.com\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"DiegoOLopez\",\n      \"name\": \"Diego O Lopez\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/92211663?v=4\",\n      \"profile\": \"https://github.com/DiegoOLopez\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"agoose77\",\n      \"name\": \"Angus Hollands\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/1248413?v=4\",\n      \"profile\": \"https://oieltd.com\",\n      \"contributions\": [\n        \"content\",\n        \"bug\",\n        \"talk\"\n      ]\n    },\n    {\n      \"login\": \"rowanc1\",\n      \"name\": \"Rowan Cockett\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/913249?v=4\",\n      \"profile\": \"http://row1.ca\",\n      \"contributions\": [\n        \"bug\",\n        \"infra\",\n        \"platform\",\n        \"talk\"\n      ]\n    },\n    {\n      \"login\": \"MarionBWeinzierl\",\n      \"name\": \"Marion\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/56403724?v=4\",\n      \"profile\": \"https://github.com/MarionBWeinzierl\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"ahkrook\",\n      \"name\": \"ahkrook\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/167080825?v=4\",\n      \"profile\": \"https://github.com/ahkrook\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"afuetterer\",\n      \"name\": \"Heinz-Alexander Fuetterer\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/35225576?v=4\",\n      \"profile\": \"https://github.com/afuetterer\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"vrajesh-daga\",\n      \"name\": \"vrajesh-daga\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/201659831?v=4\",\n      \"profile\": \"https://github.com/vrajesh-daga\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"SydneyAmbrose\",\n      \"name\": \"SydneyAmbrose\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/144704015?v=4\",\n      \"profile\": \"https://github.com/SydneyAmbrose\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"Avaga123\",\n      \"name\": \"Avaga123\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/112536906?v=4\",\n      \"profile\": \"https://github.com/Avaga123\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"Nagabharan1\",\n      \"name\": \"Nagabharan1\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/72192695?v=4\",\n      \"profile\": \"https://github.com/Nagabharan1\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"Cedeli\",\n      \"name\": \"Ced\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/96904745?v=4\",\n      \"profile\": \"https://github.com/Cedeli\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"tongyu0924\",\n      \"name\": \"tongyu\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/119610311?v=4\",\n      \"profile\": \"https://github.com/tongyu0924\",\n      \"contributions\": [\n        \"maintenance\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"bakhshir\",\n      \"name\": \"Rena Bakhshi\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/16703268?v=4\",\n      \"profile\": \"https://github.com/bakhshir\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"cecibaldoni\",\n      \"name\": \"Cecilia Baldoni\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/111133332?v=4\",\n      \"profile\": \"https://github.com/cecibaldoni\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"gulesaman\",\n      \"name\": \"gulesaman\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/60602896?v=4\",\n      \"profile\": \"https://github.com/gulesaman\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"DSrinivasKarthik\",\n      \"name\": \"D Srinivas Karthik\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/139240749?v=4\",\n      \"profile\": \"https://github.com/DSrinivasKarthik\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"nkosaku\",\n      \"name\": \"Kosaku Nakano\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/64463851?v=4\",\n      \"profile\": \"https://github.com/nkosaku\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"stefanv\",\n      \"name\": \"Stefan van der Walt\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/45071?v=4\",\n      \"profile\": \"https://mentat.za.net\",\n      \"contributions\": [\n        \"bug\",\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"Kj263\",\n      \"name\": \"Kjirsten Fastabend\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/114452573?v=4\",\n      \"profile\": \"https://github.com/Kj263\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"stweil\",\n      \"name\": \"Stefan Weil\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/6734573?v=4\",\n      \"profile\": \"https://github.com/stweil\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"kafitzgerald\",\n      \"name\": \"Katelyn FitzGerald\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/7872563?v=4\",\n      \"profile\": \"https://github.com/kafitzgerald\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"JZhou-ScottLogic\",\n      \"name\": \"JZhou-ScottLogic\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/205162886?v=4\",\n      \"profile\": \"https://github.com/JZhou-ScottLogic\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"JohnnyRobs19\",\n      \"name\": \"Jonathan Siew\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/145652841?v=4\",\n      \"profile\": \"https://github.com/JohnnyRobs19\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"TylerGHawthorne\",\n      \"name\": \"TylerGHawthorne\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/218156932?v=4\",\n      \"profile\": \"https://github.com/TylerGHawthorne\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"FreekPols\",\n      \"name\": \"Freek Pols\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/55780866?v=4\",\n      \"profile\": \"https://github.com/FreekPols\",\n      \"contributions\": [\n        \"bug\",\n        \"talk\"\n      ]\n    },\n    {\n      \"login\": \"jewelyk\",\n      \"name\": \"jewelyk\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/66874197?v=4\",\n      \"profile\": \"https://github.com/jewelyk\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"AnneliesPieterman-Bos\",\n      \"name\": \"AnneliesPieterman-Bos\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/213759116?v=4\",\n      \"profile\": \"https://github.com/AnneliesPieterman-Bos\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"Annetrude\",\n      \"name\": \"Annetrude de Mooij\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/195094341?v=4\",\n      \"profile\": \"https://github.com/Annetrude\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"TiernanOSullivan\",\n      \"name\": \"Tiernan O'Sullivan\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/172599503?v=4\",\n      \"profile\": \"https://github.com/TiernanOSullivan\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"juliancervos\",\n      \"name\": \"Julian Lopez Gordillo\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/25617825?v=4\",\n      \"profile\": \"https://github.com/juliancervos\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"nnorouzi913\",\n      \"name\": \"nnorouzi913\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/239992651?v=4\",\n      \"profile\": \"https://github.com/nnorouzi913\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"StefanW0\",\n      \"name\": \"Stefan Wouters\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/183834624?v=4\",\n      \"profile\": \"https://github.com/StefanW0\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"jabezsamsondev-prog\",\n      \"name\": \"Jabez Samson\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/233149054?v=4\",\n      \"profile\": \"https://www.jabezsamson.in/\",\n      \"contributions\": [\n        \"doc\"\n      ]\n    },\n    {\n      \"login\": \"nikhil26vaddadi\",\n      \"name\": \"Sai Nikhil Vaddadi\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/29629242?v=4\",\n      \"profile\": \"https://github.com/nikhil26vaddadi\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"Vamsiindugu\",\n      \"name\": \"Vamsi Indugu\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/150576424?v=4\",\n      \"profile\": \"https://vamsiindugu.vercel.app/\",\n      \"contributions\": [\n        \"content\",\n        \"design\"\n      ]\n    },\n    {\n      \"login\": \"HyunKN\",\n      \"name\": \"Sugu\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/152015418?v=4\",\n      \"profile\": \"https://github.com/HyunKN\",\n      \"contributions\": [\n        \"infra\"\n      ]\n    },\n    {\n      \"login\": \"mikey247\",\n      \"name\": \"Michael Umeokoli\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/93191705?v=4\",\n      \"profile\": \"https://mikey24-7.xyz\",\n      \"contributions\": [\n        \"review\",\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"veerasai06\",\n      \"name\": \"veerasai06\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/229084338?v=4\",\n      \"profile\": \"https://github.com/veerasai06\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"brechtjehuiskes\",\n      \"name\": \"Brechtje\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/243357208?v=4\",\n      \"profile\": \"https://github.com/brechtjehuiskes\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"fwkoch\",\n      \"name\": \"Franklin Koch\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/9453731?v=4\",\n      \"profile\": \"https://github.com/fwkoch\",\n      \"contributions\": [\n        \"talk\"\n      ]\n    },\n    {\n      \"login\": \"rlanzafame\",\n      \"name\": \"Robert Lanzafame\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/22560680?v=4\",\n      \"profile\": \"https://github.com/rlanzafame\",\n      \"contributions\": [\n        \"talk\"\n      ]\n    },\n    {\n      \"login\": \"luukfroling\",\n      \"name\": \"Luuk Fröling\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/31106485?v=4\",\n      \"profile\": \"https://github.com/luukfroling\",\n      \"contributions\": [\n        \"talk\"\n      ]\n    },\n    {\n      \"login\": \"rendell\",\n      \"name\": \"Rendell de Kort\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/10668732?v=4\",\n      \"profile\": \"http://www.c-economics.com\",\n      \"contributions\": [\n        \"translation\"\n      ]\n    },\n    {\n      \"login\": \"alwil\",\n      \"name\": \"Aleksandra Ewa Wilczynska\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/7210572?v=4\",\n      \"profile\": \"https://github.com/alwil\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"campioru\",\n      \"name\": \"Ruaidhrí Campion\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/79585079?v=4\",\n      \"profile\": \"https://www.maths.tcd.ie/~rcampion/\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"yaochengchen\",\n      \"name\": \"yaochengchen\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/51320658?v=4\",\n      \"profile\": \"https://github.com/yaochengchen\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"BuildingTech24\",\n      \"name\": \"BuildingTech24\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/257283328?v=4\",\n      \"profile\": \"https://github.com/BuildingTech24\",\n      \"contributions\": [\n        \"review\"\n      ]\n    },\n    {\n      \"login\": \"xchen101\",\n      \"name\": \"Xiaoli Chen\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/3393596?v=4\",\n      \"profile\": \"https://github.com/xchen101\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"mitre88\",\n      \"name\": \"Dr Alex Mitre\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/30060514?v=4\",\n      \"profile\": \"https://github.com/mitre88\",\n      \"contributions\": [\n        \"bug\"\n      ]\n    },\n    {\n      \"login\": \"priya-gitTest\",\n      \"name\": \"Priyanka O\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/21082240?v=4\",\n      \"profile\": \"https://github.com/priya-gitTest\",\n      \"contributions\": [\n        \"content\"\n      ]\n    },\n    {\n      \"login\": \"perashanid\",\n      \"name\": \"Shanid Sajjatuz Islam\",\n      \"avatar_url\": \"https://avatars.githubusercontent.com/u/155494150?v=4\",\n      \"profile\": \"http://shanidsajjatuz.is-a.dev\",\n      \"contributions\": [\n        \"content\"\n      ]\n    }\n  ]\n}\n"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/01_bug_report.yml",
    "content": "name: \"\\U0001F41B Bug report\"\ndescription: Create a report to help us repair something that is currently broken\ntitle: \"[BUG]:\"\nlabels: [\"bug\"]\nbody:\n  - type: markdown\n    attributes:\n      value: |\n        Use this template to raise issues about viewing or building _The Turing Way_.\n        If you would like to raise an issue about fixing typos, or formatting issues in chapters, please use the [Editor's Issue template](https://github.com/alan-turing-institute/the-turing-way/issues/new?assignees=&labels=&template=EDITOR_ISSUE_TEMPLATE.yml).\n  - type: textarea\n    attributes:\n      label: Description\n      description: Use this section to clearly and concisely describe the bug.\n    validations:\n      required: true\n  - type: textarea\n    attributes:\n      label: Expected behavior\n      description: Tell us what you thought would happen.\n  - type: textarea\n    attributes:\n      label: Actual behaviour\n      description: Tell us what actually happens.\n  - type: textarea\n    attributes:\n      label: How to reproduce\n      description: Use this section to describe the steps that a user would take to experience this bug.\n      placeholder: |\n        1. Go to '...'\n        2. Click on '....'\n        3. Scroll down to '....'\n        4. See error -->\n  - type: textarea\n    attributes:\n      label: Your personal set up\n      description: Tell us a little about the system you're using or tested this bug in.\n      value: |\n        - **Operating System**:\n        - **Browser**:\n  - type: textarea\n    attributes:\n      label: Dependencies\n      description:\n        If you have found a bug when building the book, please give a list of the dependencies you are using.\n        You can generate a list of this using `pip freeze`.\n  - type: textarea\n    attributes:\n      label: Log messages\n      description:\n        Please include any relevant log or error messages here.\n        You may also include screenshots.\n"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/02_edit_a_chapter.yml",
    "content": "name: \"\\U0001F50D Edit a chapter\"\ndescription: An existing chapter needs to be updated\ntitle: \"[TO EDIT]: chapter/subchapter\"\nbody:\n  - type: markdown\n    attributes:\n      value: |\n        This template will guide you through the steps necessary for you to propose a chapter/subchapter to edit, review or restructure.\n        Please fill in the title above but do not remove the text \"[TO EDIT]\".\n  - type: textarea\n    id: summary\n    attributes:\n      label: Summary\n      description: |\n        Please provide a detailed description of the chapter/subchapter you propose to edit, review or restructure.\n        Please provide as much context as possible and link to related issues and/or pull requests.\n        Providing links to sections you're referencing for clarity is highly encouraged.\n    validations:\n      required: true\n  - type: textarea\n    id: todo\n    attributes:\n      label: What needs to be done?\n      description: |\n        Please comment on the overall structure of the file.\n        Your response can cover the questions such as,\n        \"Do sections need clearer headings? Are there any technical terms that might not be understood? Is something missing that is worth discussing before adding?\"\n      placeholder: Please use bullets (* or -) and filled checkboxes ([x]) as necessary.\n    validations:\n      required: true\n  - type: textarea\n    id: helpers\n    attributes:\n      label: Who can help?\n      description: |\n        If you know the original author the chapter/section, it may be useful to tag them here for their input.\n      placeholder: |\n        - …\n        - …\n  - type: checkboxes\n    id: updates\n    attributes:\n      label: Updates\n      description: |\n        Please update the initial issue with important updates (for example, actions or decisions taken) regularly so that all the important information is available at one glance.\n        You may use the checklist here to get started, feel free to modify this list.\n      options:\n        - label: \"First set of edits to chapter/subchapter\"\n        - label: \"Proofread\"\n        - label: \"Request reviews\"\n        - label: \"Address reviews\"\n        - label: \"Merge to main branch\"\n"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/03_new_chapter.yml",
    "content": "name: \"\\U0001F4D6 New chapter\"\ndescription: Propose a new chapter\ntitle: \"[CHAPTER]: chapter\"\nlabels: [book]\nbody:\n- type: markdown\n  attributes:\n    value: |\n      Please complete the following sections to propose a new chapter.\n- type: input\n  id: title\n  attributes:\n    label: Title\n    description: |\n      Your proposed chapter's title.\n  validations:\n    required: true\n- type: input\n  id: guide\n  attributes:\n    label: Guide\n    description: |\n      Which Guide will your chapter be a part of? Please reference the [book](https://the-turing-way.netlify.app/welcome.html)'s table of contents to see which Guides make up the book.\n  validations:\n    required: true\n- type: input\n  id: branch\n  attributes:\n    label: Draft\n    description: |\n      Please provide a link to your draft.\n      This might be in a document such as a hackmd or a new file on your GitHub branch.\n      If you already have a PR you can update the PR with a keyword to link directly to this issue - see instructions [here](https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue).\n      You can provide this later if you haven't started yet!\n- type: textarea\n  id: summary\n  attributes:\n    label: Summary of proposed chapter\n    description: |\n      Please provide a detailed description of the chapter you are proposing.\n\n      - What is the purpose of your chapter?\n      - Why are you proposing it?\n  validations:\n    required: true\n- type: textarea\n  id: resources\n  attributes:\n    label: Resources\n    description: List and describe any external resources that may be helpful when writing the chapter.\n    placeholder: |\n      - …\n      - …\n- type: textarea\n  id: who_can_help\n  attributes:\n    label: Who can help?\n    description: Suggest people who can help.\n    placeholder: |\n      - …\n      - …\n- type: checkboxes\n  id: updates\n  attributes:\n    label: Updates\n    description: Please comment on this issue with updates so that all the important information is available at a glance. You may use the checklist here to get started or create a new checklist in the comments.\n    options:\n    - label: Write chapter outline\n    - label: Add material to the chapter\n    - label: Combine materials into a readable chapter\n    - label: Proofread\n    - label: Create PR and link in the comments\n    - label: Request reviews\n    - label: Address reviews\n    - label: Merge to main branch\n- type: markdown\n  attributes:\n    value: \"**When you are ready to create a pull request for your chapter please don't forget to add a link in the comments on this issue.**\"\n"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/04_request_translation.yml",
    "content": "name: \"\\U0001F4D1 Request Translation\"\ndescription: Propose a translation\ntitle: \"[TRANSLATION]:\"\nbody:\n  - type: markdown\n    attributes:\n      value: |\n        Use this template to propose a tnraslation.\n  - type: textarea\n    attributes:\n      label: Summary\n      description: |\n        Please provide a detailed description of the language/languages that you want to translate to and the chapters that you would like to translate.\n        Please provide as much context as possible and link to related issues and/or pull requests.\n        Providing links to sections you're referencing for clarity is highly encouraged.\n    validations:\n      required: true\n  - type: input\n    attributes:\n      label: Target language\n      description: What is/are the target language/languages?\n    validations:\n      required: true\n  - type: checkboxes\n    attributes:\n      label: Translation options\n      options:\n        - label: I wish to be manager in Crowdin for entries in this language.\n        - label: I will only proofread translation for this language.\n        - label: I have a local translation to be uploaded to the Translation Memory?\n  - type: textarea\n    attributes:\n      label: Chapters to translation\n      description: Which chapters do you want to translate?\n      placeholder: |\n        - …\n        - …\n  - type: textarea\n    id: who_can_help\n    attributes:\n      label: Who can help?\n      description: Suggest people who can help.\n      placeholder: |\n        - …\n        - …\n"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/05_general.yml",
    "content": "name: \"\\u2728 General\"\ndescription: Have a different idea?\nbody:\n  - type: markdown\n    attributes:\n      value: |\n        Please complete the following sections when you open an issue.\n  - type: textarea\n    attributes:\n      label: Summary\n      description: |\n        Please provide a detailed description of the change or addition you are proposing, or the question you're asking.\n        Please provide as much context as possible and link to related issues and/or pull requests.\n    validations:\n      required: true\n  - type: textarea\n    attributes:\n      label: What needs to be done?\n      description:\n        We suggest using bullets (indicated by * or -) and filled checkboxes [x] here.\n      placeholder: |\n        - [ ] …\n        - [ ] …\n  - type: textarea\n    attributes:\n      label: Who can help?\n      description: |\n        Suggest people who can help.\n      placeholder: |\n        - …\n        - …\n"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/config.yml",
    "content": "contact_links:\n  - name: \"\\U0001F525 Suggest a Fireside Chat\"\n    url: https://github.com/the-turing-way/fireside-chats/issues/new?template=12_fireside_chat_checklist.md\n    about: Resources and checklist for giving a talk about the Turing Way\n  - name: \"\\U0001F4E3 Give a talk\"\n    url: https://github.com/the-turing-way/conferences/issues/new?assignees=&labels=talks-and-workshops%2Cnewsletter&projects=&template=give_a_talk.yml&title=%5BTALK%5D+%3Ctitle%3E\n    about: Resources and checklist for giving a talk about the Turing Way\n  - name: \"\\u2615 Collaboration cafe\"\n    url: https://book.the-turing-way.org/community-handbook/community-calls/community-calls-collabcafe/\n    about: Sign up for mentored sprints and co-working sessions with Turing Way community members\n  - name: \"\\U0001F5E3 All other questions and general chat\"\n    url: https://slack.the-turing-way.org\n    about: Chat with the Turing Way community on Slack\n"
  },
  {
    "path": ".github/PULL_REQUEST_TEMPLATE.md",
    "content": "<!--\nPlease complete the following sections when you submit your pull request. You are encouraged to keep this top level comment box updated as you develop and respond to reviews. Note that text within html comment tags will not be rendered.\n-->\n### Checklist\n\n- [ ] I agree to follow _The Turing Way_'s [code of conduct](https://book.the-turing-way.org/community-handbook/coc/)\n- [ ] I have read the [contribution guide](https://book.the-turing-way.org/community-handbook/contributing/)\n- [ ] I have read the [style guide](https://book.the-turing-way.org/community-handbook/style/)\n\n### Summary\n\n<!-- Describe the problem you're trying to fix in this pull request. Please reference any related issue and use fixes/close to automatically close them, if pertinent. For example: \"Fixes #58\", or \"Addresses (but does not close) #238\". -->\n\nFixes #<NUM>\n\n*Lorem ipsum dolor sit amet, consectetur adipiscing.*\n\n### List of changes proposed in this PR (pull-request)\n\n<!-- We suggest using bullets (indicated by * or -) and filled checkboxes [x] here -->\n\n* *Lorem ipsum dolor sit amet, consectetur adipiscing.*\n* *Lorem ipsum dolor sit amet, consectetur adipiscing.*\n\n\n### What should a reviewer concentrate their feedback on?\n\n<!-- This section is particularly useful if you have a pull request that is still in development. You can guide the reviews to focus on the parts that are ready for their comments. We suggest using bullets (indicated by * or -) and filled checkboxes [x] here -->\n\n- [ ] *Lorem ipsum dolor sit amet, consectetur adipiscing.*\n- [ ] Everything looks ok?\n\n\n### Acknowledging contributors\n\n<!-- Please select the correct box -->\n\n- [ ] All contributors to this pull request are already named in the [table of contributors](https://github.com/the-turing-way/the-turing-way/blob/main/README.md#contributors) in the README file.\n- [ ] The following people should be added to the [table of contributors](https://github.com/the-turing-way/the-turing-way/blob/main/README.md#contributors) in the README file: <!-- replace this text with the GitHub IDs of any new contributors -->\n"
  },
  {
    "path": ".github/config.yml",
    "content": "# Configuration for welcome - https://github.com/behaviorbot/welcome\n\n# Configuration for new-issue-welcome - https://github.com/behaviorbot/new-issue-welcome\n\n# Comment to be posted to on first time issues\nnewIssueWelcomeComment: >\n  [![Welcome Banner](https://zenodo.org/api/iiif/record:3695300:BannerWelcome.jpg/full/!750,750/0/default.jpg)](https://zenodo.org/record/3695300)\n\n  🎉 Welcome to _The Turing Way_! 🎉\n  We're really excited to have your input into the project! 💖\n\n  <br>If you haven't done so already, please make sure you check out our [Contributing Guidelines](https://github.com/the-turing-way/the-turing-way/blob/main/CONTRIBUTING.md) and [Code of Conduct](https://github.com/the-turing-way/the-turing-way/blob/main/CODE_OF_CONDUCT.md).\n  If you need to connect more synchronously with members of _The Turing Way_ community, please feel free to chat with us in our [Slack workspace](https://join.slack.com/t/theturingway/shared_invite/zt-fn608gvb-h_ZSpoA29cCdUwR~TIqpBw), or you can join our [Collaboration Cafe](https://the-turing-way.netlify.app/community-handbook/coworking/coworking-collabcafe.html) for mentored contribution or co-working.\n\n# Configuration for new-pr-welcome - https://github.com/behaviorbot/new-pr-welcome\n\n# Comment to be posted to on PRs from first time contributors in your repository\nnewPRWelcomeComment: >\n  [![Thank You Banner](https://zenodo.org/api/iiif/record:3695300:BannerThanks.jpg/full/!750,750/0/default.jpg)](https://zenodo.org/record/3695300)\n\n  💖 Thanks for opening this pull request! 💖\n  _The Turing Way_ community really appreciates your time and effort to contribute to the project.\n  Please make sure you have read our [Contributing Guidelines](https://github.com/the-turing-way/the-turing-way/blob/main/CONTRIBUTING.md) and filled in our pull request template to the best of your ability.\n\n  If you are submitting a new chapter, here are some things that will help get your pull request across the finish line! 🏁\n\n  - Check you have removed all _lorem ipsums_ from the chapter template (if you used it)\n\n  - Check for any abbreviations or latin phrases (such as \"e.g.\" or \"i.e.\") in your writing. See our [style guide](https://github.com/the-turing-way/the-turing-way/blob/main/CONTRIBUTING.md#writing-style) for more information on this topic.\n\n  - Make sure you have added your new chapter to the [Table of Contents](https://github.com/the-turing-way/the-turing-way/blob/main/book/website/myst.yml)\n\n  <br>We have Continuous Integration tests that check the writing style and will help you track down any slip-ups ♻\n  The Netlify bot will also comment with a preview of the book with your additions so you can see how it will look once it's merged! 🎉\n\n  <br>We get a lot of pull requests on this repo, so please be patient and we will get back to you as soon as we can.\n  If we don't acknowledge this pull request after 7 days, feel free to chat to us about it in our [Slack workspace](https://join.slack.com/t/theturingway/shared_invite/zt-fn608gvb-h_ZSpoA29cCdUwR~TIqpBw).\n\n# Configuration for first-pr-merge - https://github.com/behaviorbot/first-pr-merge\n\n# Comment to be posted to on pull requests merged by a first time user\nfirstPRMergeComment: >\n  [![Congratulations Banner](https://zenodo.org/api/iiif/record:3695300:BannerCongratulations.jpg/full/!750,750/0/default.jpg)](https://zenodo.org/record/3695300)\n\n  Congrats on merging your first pull request! 🎉\n  We here at _The Turing Way_ are proud of you! 💖\n  Thank you so much for your contribution 🎁\n"
  },
  {
    "path": ".github/dependabot.yaml",
    "content": "version: 2\nupdates:\n  # Maintain dependencies for GitHub Actions in workflow files\n  # By default, the directory to be checked is .github/workflows for the github-actions\n  # package ecosystem\n  # ref: https://docs.github.com/en/code-security/dependabot/working-with-dependabot/keeping-your-actions-up-to-date-with-dependabot\n  - package-ecosystem: \"github-actions\"\n    directory: \"/\"\n    schedule:\n      interval: \"monthly\"\n    groups:\n      # Group all GHA updates together into single PR (to avoid desync in related actions e.g. upload-artifact, download-artifact)\n      # ref: https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#groups\n      actions:\n        patterns:\n          - \"*\"\n  # \"pip\" is the package ecosystem value for pip-compile\n  # https://docs.github.com/en/code-security/reference/supply-chain-security/dependabot-options-reference#package-ecosystem-\n  - package-ecosystem: \"pip\"\n    directory: \"/book/\"\n    schedule:\n      interval: \"monthly\"\n    groups:\n      # Group all dependencies into a single PR\n      dependencies:\n        patterns:\n          - '*'\n    # Ignore patch updates\n    ignore:\n      - dependency-name: \"*\"\n        update-types: [\"version-update:semver-patch\"]\n"
  },
  {
    "path": ".github/in-solidarity.yml",
    "content": "rules:\n  master:\n    level: warning\n  slave:\n    level: failure\n  whitelist:\n    level: failure\n  blacklist:\n    level: failure\n"
  },
  {
    "path": ".github/release-drafter.yml",
    "content": "template: |\n  ## The Turing Way: A handbook for reproducible, ethical and collaborative research\n\n  [The Turing Way March 2022](https://github.com/the-turing-way/the-turing-way/releases/tag/v1.0.2) [Latest](https://github.com/the-turing-way/the-turing-way/releases/latest)\n\n  The Turing Way is an open source community-driven guide to reproducible, ethical, inclusive and collaborative data science. The Turing Way book is collaboratively developed by its diverse community of researchers, learners, educators, and other stakeholders.\n\n  The Turing Way project is openly developed and any and all questions, comments and recommendations are welcome at our github repository: https://github.com/the-turing-way/the-turing-way. In 2020, the project underwent a major overhaul categorising chapters into 5 guides on reproducible research, project design, collaboration, communication and ethical research. Additionally, we added a community handbook to document all the practices designed and implemented towards the development of the project and community.\n\n  This release in 2021 includes additional chapters developed by our contributors across five guides and the community handbook. In addition, all the project documents from the project are provided as they appear on The Turing Way GitHub repository including the Zenodo metadata: https://github.com/the-turing-way/the-turing-way.\n\n  Release log\n\n  v1.0.3: Zenodo metadata information and additional chapters from Book Dash May 2022\n  v1.0.2: Zenodo metadata information and additional chapters since Book Dash November 2021\n  v1.0.1: Zenodo metadata information and additional chapters.\n  v1.0.0: Five guide expansion of The Turing Way with a community handbook\n  v0.0.4: Continuous integration chapter merged to main.\n  v0.0.3: Reproducible environments chapter merged to main.\n  v0.0.2: Version control chapter merged to main.\n  v0.0.1: Reproducibility chapter merged to main.\n\n  Full Changelog: https://github.com/the-turing-way/the-turing-way/compare/v1.0.1...v1.0.2 (Previous release: https://github.com/the-turing-way/the-turing-way/compare/v0.0.3...v1.0.1)\n\n  $PREVIOUS_TAG\n"
  },
  {
    "path": ".github/workflows/accessibility-alt-text-bot.yml",
    "content": "name: Accessibility-alt-text-bot\non:\n  issues:\n    types: [opened, edited]\n  pull_request:\n    types: [opened, edited]\n  issue_comment:\n    types: [created, edited]\n  discussion:\n    types: [created, edited]\n  discussion_comment:\n    types: [created, edited]\n\npermissions:\n  issues: write\n  pull-requests: write\n  discussions: write\n\njobs:\n  accessibility_alt_text_bot:\n    name: Check alt text is set on issue or pull requests\n    runs-on: ubuntu-latest\n    if: ${{ github.event.issue || github.event.pull_request || github.event.discussion }}\n    steps:\n      - name: Get action 'github/accessibility-alt-text-bot'\n        uses: github/accessibility-alt-text-bot@v1.7.3\n"
  },
  {
    "path": ".github/workflows/ci.yml",
    "content": "name: CI\n\n# run on pull requests to main\non:\n  pull_request:\n    branches:\n      - main\n\n# set the default shell to bash for all jobs\n# this is important for the windows OS!\ndefaults:\n  run:\n    shell: bash\n\njobs:\n  build-jb:\n    name: Build\n    strategy:\n      matrix:\n        os: [ubuntu-latest, macos-latest, windows-latest]\n        python_version: [\"3.13\"]\n      fail-fast: false # Don't cancel all jobs if one fails\n\n    runs-on: ${{ matrix.os }}\n    permissions:\n      issues: write\n      pull-requests: write\n\n    steps:\n      - name: Extract the PR number from the ref\n        # only for pull requests from the all-contributors bot\n        if: ${{ contains(github.head_ref, 'all-contributors') && contains(matrix.os, 'ubuntu') }}\n        id: pr_number\n        run: |\n          if [[ ${{ github.ref }} =~ [0-9]+ ]]; then\n            echo \"pr_num=${BASH_REMATCH[0]}\" >> \"$GITHUB_OUTPUT\"\n          else\n            exit 1\n          fi\n\n      - name: Post a comment about skipping this workflow\n        # only for pull requests from the all-contributors bot\n        if: ${{ contains(github.head_ref, 'all-contributors') && contains(matrix.os, 'ubuntu') }}\n        uses: peter-evans/create-or-update-comment@v5\n        with:\n          token: ${{ secrets.GITHUB_TOKEN }}\n          issue-number: ${{ steps.pr_number.outputs.pr_num }}\n          body: >-\n            Hello human reviewer! I have marked the CI build for this PR as\n            passed because it has come from an `all-contributors` branch - which\n            we do not want to build - but allows branch protection rules to pass.\n\n            Please check that this PR is indeed related to the `all-contributors`\n            bot. If not, the branch may need renaming so that the tests trigger\n            correctly.\n\n      - name: Checkout-repository\n        # ignore pull requests from the all-contributors bot\n        if: ${{ !contains(github.head_ref, 'all-contributors') }}\n        uses: actions/checkout@v6\n\n      - name: Setup Python ${{ matrix.python_version }}\n        # ignore pull requests from the all-contributors bot\n        if: ${{ !contains(github.head_ref, 'all-contributors') }}\n        uses: actions/setup-python@v6\n        with:\n          python-version: ${{ matrix.python_version }}\n\n      - name: Install dependencies\n        # ignore pull requests from the all-contributors bot\n        if: ${{ !contains(github.head_ref, 'all-contributors') }}\n        run: make deps\n        working-directory: ./book\n\n      - name: Build the book\n        # ignore pull requests from the all-contributors bot\n        if: ${{ !contains(github.head_ref, 'all-contributors') }}\n        working-directory: ./book\n        run: make ci\n\n      - name: Upload html output as artifact\n        # ignore pull requests from the all-contributors bot\n        if: contains(matrix.os, 'ubuntu') && !contains(github.head_ref, 'all-contributors')\n        uses: actions/upload-artifact@v7\n        with:\n          name: book-html-${{ github.run_id }}\n          path: ./book/website/_build/html/\n\n  offline-link-check:\n    name: Link Check\n    needs: build-jb\n    if: ${{ !contains(github.head_ref, 'all-contributors') }}\n    runs-on: ubuntu-latest\n    steps:\n      # We only need the lychee config file from the repository\n      - name: Checkout lychee config file from repository\n        uses: actions/checkout@v6\n        with:\n          sparse-checkout: |\n            lychee.toml\n          sparse-checkout-cone-mode: false\n\n      - name: Ensure destination folder exists\n        run: |\n          mkdir -p ./book/website/_build/html\n\n      - name: Download book html files from artifact\n        uses: actions/download-artifact@v8\n        with:\n          name: book-html-${{ github.run_id }}\n          path: ./book/website/_build/html/\n\n      - name: Check offline links\n        uses: lycheeverse/lychee-action@v2.8.0\n        with:\n          args: --config './lychee.toml' --no-progress --offline --root-dir \"$GITHUB_WORKSPACE/book/website/_build/html/\" 'book/website/_build/html/**/*.html'\n          fail: true\n        env:\n          GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} # Use runners GitHub token to avoid rate limiting\n"
  },
  {
    "path": ".github/workflows/crowdin-contributors.yml",
    "content": "name: Crowdin Contributors Action\n\non:\n  schedule:\n    - cron: '0 0 * * 1' # 'https://crontab.guru/#0_0_*_*_1'\n  # To manually run this workflow\n  workflow_dispatch:\n\njobs:\n  crowdin-contributors:\n\n    runs-on: ubuntu-latest\n\n    # This environment contains secrets specific to crowdin and only workflows\n    # listing this environment can use them\n    environment: crowdin\n    steps:\n      - name: Checkout\n        uses: actions/checkout@v6\n\n      - name: Generate Crowdin Contributors table\n        uses: andrii-bodnar/action-crowdin-contributors@v3.2.0\n        with:\n          contributors_per_line: 5\n          max_contributors: 10000\n          image_size: 100\n          min_words_contributed: 1\n          include_languages: true\n          placeholder_start: <!-- CROWDIN-CONTRIBUTORS-LIST:START -->\n          placeholder_end: <!-- CROWDIN-CONTRIBUTORS-LIST:END -->\n          crowdin_project_link: https://turingway.crowdin.com/turing-way\n          files: |\n            README.md\n            book/website/afterword/contributors/translators.md\n        env:\n          CROWDIN_PROJECT_ID: 1\n          CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }}\n          CROWDIN_ORGANIZATION: turingway\n\n      - name: Create Pull Request\n        uses: peter-evans/create-pull-request@v8\n        with:\n          token: ${{ secrets.CROWDIN_ACTION_TOKEN }}\n          title: Update Crowdin Contributors table\n          body: By [action-crowdin-contributors](https://github.com/andrii-bodnar/action-crowdin-contributors) GitHub action\n          commit-message: Update Crowdin Contributors table\n          committer: Crowdin Bot <support+bot@crowdin.com>\n          branch: crowdin-contributors/patch\n          team-reviewers: |\n            translation\n"
  },
  {
    "path": ".github/workflows/external_link_check.yml",
    "content": "name: External Link Check\n\non:\n  workflow_dispatch:\n  schedule:\n    - cron: \"0 0 * * MON\"\n\njobs:\n  external-link-check:\n    name: External Link Check\n    runs-on: ubuntu-latest\n    steps:\n      - name: Checkout-repository\n        uses: actions/checkout@v6\n\n      - name: Setup Python\n        uses: actions/setup-python@v6\n        with:\n          python-version: \"3.13\"\n\n      - name: Install dependencies\n        run: make deps\n        working-directory: ./book\n\n      - name: Build Jupyter-Book\n        run: make book\n        working-directory: ./book\n\n      - name: Restore lychee cache\n        uses: actions/cache@v5\n        with:\n          path: .lycheecache\n          key: cache-lychee-${{ github.sha }} # save cache using commit sha\n          restore-keys: cache-lychee- # restore latest cache (not a specific commit)\n\n      - name: Check links\n        uses: lycheeverse/lychee-action@v2\n        with:\n          args: --config './lychee.toml' --no-progress --root-dir \"$GITHUB_WORKSPACE/book/website/_build/html/\" 'book/website/_build/html/**/*.html'\n          fail: false\n        env:\n          GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} # Use runner's GitHub token to avoid rate limiting\n\n      - name: Concatenate Lychee output with issue header\n        run: cat .github/workflows/resources/external_link_check_header.md lychee/out.md > issue_text.md\n\n      - name: Update Issue\n        uses: peter-evans/create-issue-from-file@v6\n        with:\n          title: Broken links\n          issue-number: 3171\n          content-filepath: issue_text.md\n          token: ${{secrets.GITHUB_TOKEN}}\n          labels: |\n            infrastructure\n            caretaking\n"
  },
  {
    "path": ".github/workflows/lorem-ipsums.yml",
    "content": "# Give your test a name!\nname: Check for Lorem Ipsums\n\n# Decide when to run the tests\n#\n# This configuration sets the test to run on pushes to main\n# and on pull requests that are opened to main\non:\n  push:\n    branches:\n      - main\n  pull_request:\n    branches:\n      - main\n\n# Set up the Continuous Integration job\njobs:\n  lorem-ipsums:\n    if: (github.event.pull_request) && !contains(github.head_ref, 'all-contributors')\n    # Run on the latest Ubuntu distribution\n    runs-on: ubuntu-latest\n    # This section collects together the steps involved in running the test\n    steps:\n      # Checkout the repository. Relies on another GH-Action.\n      - uses: actions/checkout@v6\n      # Set up the Python version. Relies on another GH-Action.\n      - name: Setup Python 3.13\n        uses: actions/setup-python@v6\n        with:\n          python-version: \"3.13\"\n      # Install Python dependencies\n      - name: Install dependencies\n        working-directory: ./tests\n        run: |\n          python -m pip install --upgrade pip\n          python -m pip install -r requirements.txt\n      # Run a Python script\n      - name: Run Python script to check for rogue \"Lorem ipsums\" - Pull Request\n        working-directory: ./tests\n        if: github.event.pull_request\n        run: |\n          python lorem-ipsums.py \\\n          --pull-request ${{ github.event.pull_request.number }} \\\n          --github-token ${{ secrets.GITHUB_TOKEN }}\n\n      - name: Run Python script to check for rogue \"Lorem ipsums\" - Main branch\n        working-directory: ./tests\n        if: github.event_name == 'push' && github.ref == 'refs/heads/main'\n        run: |\n          python lorem-ipsums.py\n"
  },
  {
    "path": ".github/workflows/no-bad-latin.yml",
    "content": "# Give your test a name!\nname: Check for Latin Phrases\n\n# Decide when to run the tests\n#\n# This configuration sets the test to run on pushes to main\n# and on pull requests that are opened to main\non:\n  push:\n    branches:\n      - main\n  pull_request:\n    branches:\n      - main\n\n# Set up the Continuous Integration job\njobs:\n  latin-phrases:\n    if: (github.event.pull_request) && !contains(github.head_ref, 'all-contributors')\n    # Run on the latest Ubuntu distribution\n    runs-on: ubuntu-latest\n    # This section collects together the steps involved in running the test\n    steps:\n      # Checkout the repository. Relies on another GH-Action.\n      - uses: actions/checkout@v6\n      # Set up the Python version. Relies on another GH-Action.\n      - name: Setup Python 3.13\n        uses: actions/setup-python@v6\n        with:\n          python-version: \"3.13\"\n      # Install Python dependencies\n      - name: Install dependencies\n        working-directory: ./tests\n        run: |\n          python -m pip install --upgrade pip\n          python -m pip install -r requirements.txt\n      # Run a Python script\n      - name: Run Python script to check for latin phrases - Main branch\n        working-directory: ./tests\n        if: github.event_name == 'push' && github.ref == 'refs/heads/main'\n        run: |\n          python no-bad-latin.py\n\n      - name: Run Python script to check for latin phrases - Pull Request\n        working-directory: ./tests\n        if: github.event.pull_request\n        run: |\n          python no-bad-latin.py --pull-request ${{ github.event.pull_request.number }}\n"
  },
  {
    "path": ".github/workflows/release-drafter.yml",
    "content": "name: Release Drafter\n\non:\n  workflow_dispatch:\n  push:\n    branches:\n      - main\n\njobs:\n  update-release-draft:\n    runs-on: ubuntu-latest\n    steps:\n      - name: Draft a new release\n        uses: release-drafter/release-drafter@v7\n        env:\n          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This might depend on how the github token is set up in the project as an environment variable\n"
  },
  {
    "path": ".github/workflows/release-workflow.yml",
    "content": "name: ReleaseWorkflow\n\non:\n  workflow_dispatch:\n  # schedule:\n  #   # minute (0 - 59), hour (0 - 23), day of month (1 - 31), month(1 - 12 or JAN-DEC), day of week (0 - 6 or SUN-SAT)\n  #   - cron: '0 0 25 */2 *'  # Do we want it to run at the start or end of every month?\n\njobs:\n  release-workflow:\n    runs-on: ubuntu-latest\n    steps:\n      - name: Checkout branch\n        uses: actions/checkout@v6\n\n      - name: Install dependencies\n        run: |\n          python -m pip install --upgrade pip\n          python -m pip install ruamel.yaml\n\n      - name: Update CITATION.cff file\n        working-directory: ./tests\n        run: |\n          python release_workflow.py\n\n      - name: Validate a CITATION.cff from a subdirectory\n        uses: citation-file-format/cffconvert-github-action@2.0.0\n        with:\n          args: \"--infile ./CITATION.cff --validate\"\n\n      - name: Convert CITATION.cff to Zenodo metadata format\n        uses: citation-file-format/cffconvert-github-action@2.0.0\n        with:\n          args: \"--infile ./CITATION.cff --format zenodo --outfile ./.zenodo.json\"\n\n      - name: Commit changes and create a Pull Request\n        uses: peter-evans/create-pull-request@v8\n        with:\n          add-paths: .zenodo.json, CITATION.cff\n          commit-message: \"🤖 Update citation.cff and .zenodo.json\"\n          title: \"[automated-pr] Update citation.cff and .zenodo.json\"\n          branch: release-workflow-bot\n          delete-branch: true\n          body: |\n            Update citation.cff and generate Zenodo metadata\n            - Updated by changing version and date-released in Citation.cff then running cffconvert to generate new Zenodo metadata file.\n          labels: |\n            automated-pr-release-workflow\n          author: \"CI User <ci-user@github.local>\"\n          committer: \"CI User <ci-user@github.local>\"\n"
  },
  {
    "path": ".github/workflows/resources/external_link_check_header.md",
    "content": "# Broken Links\n\n**This is an automated issue created in a weekly continuous integration job 🤖.**\n\nThis issue contains a list of links external to The Turing Way that appeared to be broken when the check was last run.\n\n**The conversation on this issue has been locked.**\nThis is because the list of broken links will change whenever the job is run, so this is not a good place to discuss particular links.\n\n## Understanding the Errors\n\n### Locating Errors\n\nErrors are grouped by the output html pages they appear in.\n\nThe paths of these pages after `book/website/_build/html` correspond to their source Markdown files.\nFor example, `book/website/_build/html/reproducible-research/vcs/vcs-workflow.html` corresponds to `book/website/reproducible-research/vcs/vcs-workflow.md`.\nBroken links can be fixed in the Markdown file.\n\n### False Negatives\n\nThe list of error **will contain false negatives**.\nSome domains will interpret the link checker as a possible denial of service attack, especially if it makes multiple requests.\nOthers may require authentication for particular pages.\nThe link checker may then be unable to verify that certain links works.\n\nIf certain domains are repeatedly producing false negatives they can be ignored by adding an entry to the `exclude` list in the [Lychee configuration file](https://github.com/the-turing-way/the-turing-way/blob/main/lychee.toml).\n\n### Link Status\n\nEach failing link is presented with its status which is either a string like `ERR`, `TIMEOUT` or a HTTP response status code like `404`.\nMozilla has a [guide to HTTP response codes](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status) which can help explain the codes in the list.\n\nHere are some rules of thumb.\nThese are quite likely to be false negatives,\n\n- 403\n- TIMEOUT\n\nThese are quite likely to be genuine problems,\n\n- 404\n- ERR\n- 50? (500, 501, 502, _etc._)\n"
  },
  {
    "path": ".github/workflows/test-file-size.yml",
    "content": "# Give your test a name!\nname: TestFileSizes\n\n# Decide when to run the tests\n#\n# This configuration sets the test to run on pushes to main\n# and on pull requests that are opened to main\non:\n  push:\n    branches:\n      - main\n  pull_request:\n    branches:\n      - main\n\n# Set up the Continuous Integration job\njobs:\n  testfilesizes:\n    # Run on the latest Ubuntu distribution\n    runs-on: ubuntu-latest\n    # This section collects together the steps involved in running the test\n    steps:\n      # Checkout the repository. Relies on another GH-Action.\n      - uses: actions/checkout@v6\n      # Run the script to check file sizes\n      - name: Check for large files\n        run: |\n          ./tests/test-file-size.sh\n"
  },
  {
    "path": ".github/workflows/validate-all-contributorsrc.yml",
    "content": "name: Validate All Contributors file\n\non:\n  push:\n    branches:\n      - main\n  pull_request:\n    paths:\n      - \".all-contributorsrc\"\n      - \"tests/validate-all-contributorsrc.py\"\n\njobs:\n  validate:\n    name: Validate all-contributorsrc\n    runs-on: ubuntu-latest\n\n    steps:\n      - name: Checkout-repository\n        uses: actions/checkout@v6\n\n      - name: Setup Python\n        uses: actions/setup-python@v6\n        with:\n          python-version: \"3.13\"\n\n      - name: Install dependencies\n        working-directory: ./tests/\n        run: pip install -r requirements.txt\n\n      - name: Run validation script\n        working-directory: ./tests/\n        run: python3 validate-all-contributorsrc.py\n"
  },
  {
    "path": ".github/workflows/validate-dependabot.yml",
    "content": "name: Validate Dependabot configuration\n\non:\n  push:\n    branches:\n      - main\n  pull_request:\n    paths:\n      - \".github/dependabot.yaml\"\n      - \"tests/validate-dependabot.py\"\n\njobs:\n  validate:\n    name: Validate Dependabot configuration\n    runs-on: ubuntu-latest\n\n    steps:\n      - name: Checkout-repository\n        uses: actions/checkout@v6\n\n      - name: Setup Python\n        uses: actions/setup-python@v6\n        with:\n          python-version: \"3.13\"\n\n      - name: Install dependencies\n        working-directory: ./tests/\n        run: pip install -r requirements.txt\n\n      - name: Run validation script\n        working-directory: ./tests/\n        run: python3 validate-dependabot.py\n"
  },
  {
    "path": ".github/workflows/validate_citation.yml",
    "content": "name: Validate citation file\n\non:\n  push:\n    branches:\n      - main\n  pull_request:\n    paths:\n      - CITATION.cff\n\njobs:\n  validate:\n    name: \"validate\"\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions/checkout@v6\n\n      - name: Validate CITATION.cff\n        uses: citation-file-format/cffconvert-github-action@2.0.0\n        with:\n          args: \"--validate\"\n"
  },
  {
    "path": ".github/workflows/validate_issue_templates.yml",
    "content": "name: Validate GitHub Issue templates\n\non:\n  push:\n    branches:\n      - main\n    pull_request:\n      paths:\n        - \".github/ISSUE_TEMPLATE/**\"\n    workflow_dispatch:\n\njobs:\n  validate:\n    name: Validate GitHub Issue templates\n    runs-on: ubuntu-latest\n    steps:\n      - name: Checkout-repository\n        uses: actions/checkout@v6\n\n      - name: Setup Python\n        uses: actions/setup-python@v6\n        with:\n          python-version: \"3.13\"\n\n      - name: Install dependencies\n        run: pipx install check-jsonschema\n\n      - name: Validate templates\n        working-directory: .github/ISSUE_TEMPLATE/\n        run: |\n          check-jsonschema --verbose --schemafile https://json.schemastore.org/github-issue-forms.json ./??_*.yml\n"
  },
  {
    "path": ".github/workflows/yamllint.yaml",
    "content": "name: Lint and Validate YAML files\n\non:\n  pull_request:\n    paths:\n      - \"**.yaml\"\n      - \"**.yml\"\n  push:\n    branches:\n      - main\n\njobs:\n  yamllint:\n    runs-on: ubuntu-latest\n    steps:\n      - name: Checkout repo\n        uses: actions/checkout@v6\n\n      - name: Setup Python 3.10\n        uses: actions/setup-python@v6\n        with:\n          python-version: \"3.10\"\n\n      - name: Install yamllint via pip\n        run: |\n          python -m pip install yamllint\n\n      # This command automatically reads in the .yamllint config file\n      - name: Run yamllint on all files in the repo\n        run: |\n          yamllint -f colored .\n"
  },
  {
    "path": ".gitignore",
    "content": "# Project management files that should not be in public VC\n.secrets/*\n\n# OS dependent metadata files\n.DS_Store\n\n# Large, binary files\nworkshops/boost-research-reproducibility-binder/workshop-presentations/*pptx\n\n# Compiled files\n**/__pycache__/\n\n# IDE configs\n.vscode/settings.json\n.Rproj.user\n.idea\n\n# Python virtual environments\nvenv/\nenv/\n"
  },
  {
    "path": ".yamllint",
    "content": "# Learn about yamllint configuration here\n# https://yamllint.readthedocs.io/en/stable/configuration.html\n#\n# Learn about yamllint rules here\n# https://yamllint.readthedocs.io/en/stable/rules.html\n---\nextends: relaxed\nrules:\n  line-length: disable\n"
  },
  {
    "path": ".zenodo.json",
    "content": "{\n  \"creators\": [\n    {\n      \"name\": \"The Turing Way Community\"\n    }\n  ],\n  \"description\": \"This is the most recent release of the main repository of The Turing Way Book\",\n  \"license\": {\n    \"id\": \"CC-BY-4.0\"\n  },\n  \"publication_date\": \"2025-04-14\",\n  \"title\": \"The Turing Way handbook for reproducible, ethical and collaborative research\",\n  \"version\": \"1.2.3\"\n}\n"
  },
  {
    "path": "ACCESSIBILITY.md",
    "content": "# Accessibility Policy of The Turing Way Community\n\nWithin _The Turing Way_ community, we define accessibility practices as a set of community-wide, behavioural, social, and technical decisions that can be taken to ensure that all are welcome and are able to enter and participate in research, data-driven processes, communities and events despite any barriers for access.\n\nWhile accessibility is commonly understood with respect to disability, we – meaning _The Turing Way_ community – define accessibility as giving access to everyone, with specific attention given to ensuring proper access for groups of people that encounter different barriers for participation. Barriers may be anything related to, including, and extending beyond the following: \n- Age\n- Disability\n- Ethnicity and race\n- Family\n- Language (written and/or spoken)\n- Geography\n- Nationality\n- Religion, faith and belief\n- Sex and gender\n- Sexual orientation\n- Socioeconomic status\n- Technical or disciplinary background\n- Mental health\n- Digital barriers (such as connectivity, computational capacity, and design)\n\nWe recognise the complex and interlinking ways in which intersectionality affects identity, and thereby, access or inclusion within any community project like _The Turing Way_. So in this sense, our accessibility practices may overlap with practices that enable inclusion more broadly within any community.\n\nIn developing this policy, we aim to draw from the [access-centered framework](https://accesscenteredmovement.com/what-access-centered-means/) in describing access as a constant process that changes in each space with each individual. This document is a part of a broader collection of documentation across accessibility, listed below:\n- [Accessibility policy](https://github.com/the-turing-way/the-turing-way/blob/main/ACCESSIBILITY.md): Our vision and guiding principles for how we practice accessibility.\n- [Community Handbook Accessibility Guidelines](https://book.the-turing-way.org/community-handbook/accessibility): Practical advice to build accessibility into your contributions and activity within the community.\n- Accessibility Guide: A broader discussion of accessibility and access-related practices that extend beyond The Turing Way.\n\nEach resource (this Accessibility Policy, Community Handbook Accessibility Guidelines, and our Accessibility Guide) plays a different yet overlapping role in enabling, documenting, and sharing our evolving language around accessible and inclusive collaboration.\n\nThis policy is a work in progress, as are the practices that we employ as a community. Much like how _The Turing Way_ is always being written and rewritten, our accessibility policies and practices are constantly being updated as broader awareness grows and changes in technology are made.\n\n## 1.1 Core Principles\n\nThese core principles are at the heart of our accessibility policy, and they extend beyond the web accessibility of our open access guides to our broader practices as a community, expanded upon in Section 2.0.\n\nThis means that questions of access are tied to how people read the guides as well as their ability to participate in the project and the community. Participation in _The Turing Way_ itself can be defined broadly, but doing so often requires navigating a number of different platforms. In all contexts, we aim to facilitate access in a broad sense through:\n\n1. **Removing barriers**: We actively advocate for and employ tactics that seek to remove barriers for any current or future participants in our community. This may include people who have historically been limited or structurally excluded from participating due to any of the barriers listed above.\n2. **Sharing openly**: We aim to draft, write, review, and edit our open access guides using open practices documented in our [guides](https://book.the-turing-way.org/reproducible-research/open). We do this in order to enable people from a broad range of backgrounds to get involved in the project.\n3. **Supporting inclusive participation**: We acknowledge that openness alone does not make a project accessible in a broad sense, and we are committed to maintaining a socio-technical infrastructure that enables inclusive participation more broadly. This includes hosting spaces for contribution, documenting our practices, and actively gathering feedback.\n\nThe practices and policies listed here relate to these three operating principles, which shape how we work within the community to enable access on the web, on our community platforms, and while planning events.\n\n### 2.0 Community Accessibility Practices\n\nAs an open source community that relies on projects and platforms for our underlying infrastructure, we acknowledge that _The Turing Way_ is limited in what standalone access-centred support we can offer.\n\nWith this being said, we are committed to ensuring greater access to our guides, events, and community platforms through a variety of ways. \n\n1. **Ensuring web accessibility for our open access resources**:  Our project is built with [JupyterBook](https://jupyter-accessibility.readthedocs.io/en/latest/index.html) on the [Github](https://accessibility.github.com/) platform, which have initiatives that address their compliance with [W3C WAI's Web Content Accessibility Guidelines 2.0](https://www.w3.org/TR/WCAG/).\n  As a community documentation project, we aim to use and employ appropriate and relevant [alt text (also known as 'alternative text'](https://book.the-turing-way.org/community-handbook/accessibility/alt-text) for all of our images, charts, and data visualisations.\n2. **Enabling accessibility of our shared community platforms**: Our community is dedicated to enabling access across the various platforms we communicate on, which extends not only to the accessibility practices mentioned above, but also to the language we employ to ensure a broad audience. Our [slack welcome guide](https://the-turing-way.netlify.app/community-handbook/communication-channels/slack-welcome-guide.html) delineates best practices we use on the platform.\n3. **Implementing accessible practices for community events**: As a community, we frequently organise events for a variety of purposes: for coworking, training, workshops, panels, conference talks, and more.\n  We are committed to supplying and recording audio transcripts and closed captioning, uploading slides and/or presentation materials, and enabling broad access to our program content [as described in our community handbook](https://book.the-turing-way.org/community-handbook/accessibility/event-organising).\n\n### 3.0 How we work with Access-related Feedback\n\nGathering access-related feedback is integral for ensuring that we can remain accessible as a community. We would like to offer a a few ways of sharing feedback with us, and are currently working to develop the following initiatives:\n\n1. **Feedback form**: Please submit access related comments to our [accessibility feedback form](https://forms.gle/Ngr2eUtQmf7aEeao6).\nAll of the information in this form is processed anonymously, with the option of submitting contact information by choice. \n2. **Drop-in sessions**: Throughout the calendar year, we would like to facilitate drop-in session to receive feedback about access related different parts of project.\nThese may take place at our [Collaboration Cafe](https://book.the-turing-way.org/community-handbook/coworking/coworking-collabcafe.html) or may be hosted separately. \n3. **Email us**: You can reach out to the Project Delivery Team by emailing [turingway@turing.ac.uk](mailto:turingway@turing.ac.uk). You can also reach out to [specific members of the team](https://github.com/the-turing-way/the-turing-way/blob/main/GOVERNANCE_ROLES.md).\n4. **Attend the Accessibility Working Group meeting**: The\n   Accessibility Working Group meetings may be a place where you can\n   deliver feedback in a small group environment. Monthly meetings are\n   held concurrently with the first [Collaboration Cafe](https://book.the-turing-way.org/community-handbook/coworking/coworking-collabcafe.html) of each month. \n   Please [subscribe to the community calendar](https://calendar.the-turing-way.org) or [download the calendar](https://ics.the-turing-way.org) to stay up to date with meeting times.\n   Please join the #Accessibility channel on slack for more information.\n\nWe recognise that oftentimes feedback and evaluation forms operate as 'blackboxes' that receive information without taking actionable steps to address them. \nKnowing this, we are actively working to develop processes that enable us to implement feedback and to report transparently.\nThese may include: \n\n\n- Reporting within the Accessibility Working Group in order to discuss possible actions that can be taken to address feedback.\n  Currently, this process is under development.\n- Liaising with appropriate groups within _The Turing Way_ project (for example, the Infrastructure Working Group) in order to create or resource technical changes that may be needed.\n  Information about these working groups can be found in {ref}`subprojects`.\n- Escalating feedback to the project co-leads, funders, and others at the constitutional level of the project as needed.\n\n## Confidentiality\n\nBy default, all reports will be kept confidential. If submitted through a non-anonymised option, when the team discusses incidents and feedback, we will anonymise details as much as we can to protect reporter privacy. In some cases we may determine that a public statement will need to be made. If that’s the case, the identities of all victims and reporters will remain confidential unless those individuals instruct us otherwise.\n\n## Acknowledging Third-Party Platforms\n\nWe recognise that our project relies on a number of third party platforms, and that all of these platforms may not be accessible by default. In future iterations of this policy and guidelines, we aim to employ community audits to understand and review the use of these platforms and their commitment and process for accessibility. \n\n## Acknowledgements\n\nThis Accessibility Policy was created by _The Turing Way_.\n\nIn developing this policy, we have referred to numerous people who and resources that have developed similar materials. \n\nContributors to the initial document are Alexandra Araujo Alvarez, Andrea Sanchez-Tapia, Anne Lee Steele, Arielle Bennett, Chi Zhang, Esther Plomp, Laurel Ascenzi, Harriet Sands, Jesica Formoso, Jim Madge, Léllé Demertzi, Liz Hare, Malvika Sharan, Patricia Loto, Precious Onyewuchi, Richard Acton, Sara Villa, Saranjeet Kaur, Sophia Batchelor, and Tania Allard. Initial drafts of this policy have been made and were documented from 2022 to 2024.\n\nWe also refer to the resources and process of Silvia Canelon's [\"Accessibility Commitment\"](https://silviacanelon.com/accessibility), and have reviewed a number of Accessibility and Access-related policies in the drafting of this document. This includes the [Open Accessibility Policy project](https://github.com/ascott1/accessibility-policy), the [Wigan Accessibility Statement](https://www.wigan.gov.uk/SitePages/Accessibility-statement.aspx), [gov.uk guidance](https://www.gov.uk/government/publications/sample-accessibility-statement), and [Metadocencia's Accessibility Policy](https://www.metadocencia.org/en/politica_accesibilidad/), a resource for accessibility in open science communities.\n\n"
  },
  {
    "path": "CITATION.cff",
    "content": "cff-version: 1.2.0\nmessage: To reference the latest version of The Turing Way, please cite it as below.\ntitle: The Turing Way handbook for reproducible, ethical and collaborative research\nabstract: This is the most recent release of the main repository of The Turing Way Book\nauthors:\n  - name: \"The Turing Way Community\"\nversion: 1.2.3\nidentifiers:\n  - description: This is the collection of archived snapshots of all versions of The Turing Way.\n    type: doi\n    value: \"10.5281/zenodo.3233853\"\nlicense: \"CC-BY-4.0\"\ndate-released: \"2025-04-14\"\nreferences:\n  - type: book\n    authors:\n      - family-names: All contributors\n        given-names: The Turing Way Community\n    title: \"The Turing Way Project\"\n    year: 2025\n"
  },
  {
    "path": "CODEOWNERS",
    "content": "# Infrastructure working group\n# Github files and workflows\n.github/ @the-turing-way/infrastructure-working-group\ntests/ @the-turing-way/infrastructure-working-group\n# Makefile\nbook/Makefile @the-turing-way/infrastructure-working-group\n# Requirements\nbook/requirements.in @the-turing-way/infrastructure-working-group\nbook/requirements.txt @the-turing-way/infrastructure-working-group\n# Lychee configuration\nlychee.toml @the-turing-way/infrastructure-working-group\n# Netlify configuration\nnetlify.toml @the-turing-way/infrastructure-working-group\n# MyST Plugins\nbook/website/plugins/ @the-turing-way/infrastructure-working-group\n"
  },
  {
    "path": "CODE_OF_CONDUCT.md",
    "content": "# Code of Conduct\n\nWe value the participation of every member of our community and want to ensure that every contributor has an enjoyable and fulfilling experience.\nAccordingly, everyone who participates in the Turing Way project is expected to show respect and courtesy to other community members at all times.\n\n*The Turing Way* community is dedicated to a ***welcoming and harassment-free experience for everyone***, regardless of gender, gender identity and expression, sexual orientation, disability, physical appearance, body size, race, age or religion. **We do not tolerate harassment by and/or of members of our community in any form**.\n\nWe are particularly motivated to support new and/or anxious collaborators, people who are looking to learn and develop their skills, and anyone who has experienced discrimination in the past.\n\nTo make clear what is expected, we ask all members of the community to conform to the following Code of Conduct.\n\nThe Code of Conduct document has been written in 4 parts: Overview, Details, Reporting and Enforcement.\n\nThe last part acknowledges all sources that this Code of Conduct has been built upon.\n\n## 1 Code of Conduct: Overview\n\nThe Turing Way is a community-oriented and -led project.\nWe value the involvement of everyone in the community.\nWe are committed to creating a friendly and respectful place for learning, teaching and contributing.\nAll participants in our in-person events and online communications are expected to show respect and courtesy to others at all times.\n\nTo make clear what is expected, everyone participating in activities associated with the Turing Way project is required to conform to this Code of Conduct.\nThis Code of Conduct applies to all spaces managed by the Turing Way project including, but not limited to, in-person focus groups and workshops, and communications online via GitHub.\n\n### Contact for Reporting\n\n_The Turing Way_ constitution level members, listed in the [Governance Roles documentation](https://github.com/the-turing-way/the-turing-way/blob/main/GOVERNANCE_ROLES.md), are responsible for enforcing the Code of Conduct.\n\nPlease email [turingway@turing.ac.uk](mailto:turingway@turing.ac.uk).\n\nYou can reach out to specific members of the team for support in making a report to the project leads on your behalf, with or without your name associated with it.\n\nReports may be reviewed by other members of the core development team, unless there is a conflict of interest, and will be kept confidential.\n\n# 2 Code of Conduct: Details\n\nThe Turing Way team are dedicated to providing a welcoming and supportive environment for all people, regardless of background or identity.\nAs such, we do not tolerate behaviour that is disrespectful to our community members or that excludes, intimidates, or causes discomfort to others.\nWe do not tolerate discrimination or harassment based on characteristics that include, but are not limited to: gender identity and expression, sexual orientation, disability, physical appearance, body size, citizenship, nationality, ethnic or social origin, pregnancy, familial status, veteran status, genetic information, religion or belief (or lack thereof), membership of a national minority, property, age, education, socio-economic status, technical choices, and experience level.\n\nEveryone who participates in the Turing Way project activities is required to conform to this Code of Conduct.\nThis Code of Conduct applies to all spaces managed by the Turing Way project including, but not limited to, in-person focus groups and workshops, and communications online via GitHub.\nBy participating, contributors indicate their acceptance of the procedures by which the Turing Way project core development team resolves any Code of Conduct incidents, which may include the storage and processing of their personal information.\n\n## 2.1 Expected Behaviour\n\nWe are confident that our community members will together build a supportive and collaborative atmosphere at our events and during online communications.\nThe following bullet points set out explicitly what we hope you will consider to be appropriate community guidelines:\n\n* **Be respectful of different viewpoints and experiences**. Do not engage in homophobic, racist, transphobic, ageist, ableist, sexist, or otherwise exclusionary behaviour.\n* **Use welcoming and inclusive language**. Exclusionary comments or jokes, threats or violent language are not acceptable. Do not address others in an angry, intimidating, or demeaning manner. Be considerate of the ways the words you choose may impact others. Be patient and respectful of the fact that English is a second (or third or fourth!) language for some participants.\n* **Do not harass people**. Harassment includes unwanted physical contact, sexual attention, or repeated social contact. Know that consent is explicit, conscious and continuous—not implied. If you are unsure whether your behaviour towards another person is welcome, ask them. If someone tells you to stop, do so.\n* **Respect the privacy and safety of others**. Do not take photographs of others without their permission. Do not share other participants’ personal experiences without their express permission. Note that posting (or threatening to post) personally identifying information of others without their consent (\"doxing\") is a form of harassment.\n* **Be considerate of others’ participation**. Everyone should have an opportunity to be heard. In update sessions, please keep comments succinct so as to allow maximum engagement by all participants. Do not interrupt others on the basis of disagreement; hold such comments until they have finished speaking.\n* **Don’t be a bystander**. If you see something inappropriate happening, speak up. If you don't feel comfortable intervening but feel someone should, please feel free to ask a member of the Code of Conduct response team for support.\n* As an overriding general rule, please **be intentional in your actions and humble in your mistakes**.\n\nAll interactions should be professional regardless of platform: either online or in-person.\nSee [this explanation of the four social rules](https://www.recurse.com/manual#sub-sec-social-rules) - no feigning surprise, no well-actually's, no back-seat driving, no subtle -isms - for further recommendations for inclusive behaviours.\n\n## 2.2 Unacceptable Behaviour\n\nExamples of unacceptable behaviour by Turing Way community members at any project event or platform include:\n\n* written or verbal comments which have the effect of excluding people on the basis of membership in any specific group\n* causing someone to fear for their safety, such as through stalking, following, or intimidation\n* violent threats or language directed against another person\n* the display of sexual or violent images\n* unwelcome sexual attention\n* nonconsensual or unwelcome physical contact\n* sustained disruption of talks, events or communications\n* insults or put-downs\n* sexist, racist, homophobic, transphobic, ableist, or exclusionary jokes\n* excessive swearing\n* incitement to violence, suicide, or self-harm\n* continuing to initiate interaction (including photography or recording) with someone after being asked to stop\n* publication of private communication without consent\n\n## 2.3 Consequences of Unacceptable Behaviour\n\nParticipants who are asked to stop any inappropriate behaviour are expected to comply immediately.\nThis applies to all Turing Way community events and platforms, either online or in-person.\nIf a participant engages in behaviour that violates this Code of Conduct, any member of the core development team may warn the offender, ask them to leave the event or platform (without refund), or impose any other appropriate sanctions (see the enforcement manual for details).\n\n## 2.4 Feedback\n\nThis Code of Conduct is not intended as a static set of rules by which everyone must abide.\nRather, you are invited to make suggestions for updates or clarifications by contacting *The Turing Way* constitution level members individually, reaching out to the maintenance level members by emailing [theturingway@gmail.com](mailto:theturingway@gmail.com) or by making a pull request to this document on GitHub.\n\n# 3 Incident Reporting Guidelines\n\n## 3.1 Contact points\n\nIf you feel able to, please contact _The Turing Way_ constitution level members directly or reach out to the maintenance level members by emailing [theturingway@gmail.com](mailto:theturingway@gmail.com) who are responsible for enforcing the Code of Conduct.\nYou can directly contact the senior members of the team listed in the [Governance Roles documentation](https://github.com/the-turing-way/the-turing-way/blob/main/GOVERNANCE_ROLES.md).\n\n## 3.2 Alternate contact points\n\nYou can reach out to our Research Community Manager and Research Project Manager listed in the [Governance Roles documentation](https://github.com/the-turing-way/the-turing-way/blob/main/GOVERNANCE_ROLES.md), for support in making a report to the project leads on your behalf or anonymously.\n\n## 3.3 What to do if someone is in physical danger\n\nIf you believe someone is in physical danger, please contact the appropriate emergency responders.\n\n## 3.4 Code of Conduct Enforcement\n\nA detailed enforcement policy is available in the Enforcement Manual.\n\n# 4 Enforcement Manual\n\nThis is the enforcement manual used by the Code of Conduct Committee when they respond to an issue to make sure they are consistent and fair.\nEnforcement of the Code of Conduct should be respectful and not include any harassing behaviours.\n\n## 4.1 Urgent Situations: Acting Unilaterally\n\nIf the incident involves physical danger or involves a threat to anyone's safety (such as threats of violence), any member of the community may -- and should -- act unilaterally to protect the safety of any community member.\nThis can include contacting law enforcement (or other local personnel) and speaking on behalf of the Turing Way team.\n\nIf the act is ongoing, any community member may act immediately, before reaching a consensus, to diffuse the situation.\nIn ongoing situations, any member may at their discretion employ any of the tools available in this enforcement manual, including bans and blocks online, or removal from a physical space.\n\nIn situations where an individual community member acts unilaterally, they must inform the committee as soon as possible, and report their actions for review within 24 hours.\n\n## 4.2 Less-Urgent Situations\n\nUpon receiving a report of an incident, the CoC committee will review the incident and determine, to the best of their ability:\n\n- whether this is an ongoing situation\n- whether there is a threat to anyone's physical safety\n- what happened\n- whether this event constitutes a Code of Conduct violation\n- who, if anyone, was the bad actor\n\nThis information will be collected either in person or in writing.\nThe CoC committee will provide a written summary of the information surrounding the incident.\nAll participants will be anonymised in the summary report, referred to as \"Community Member 1\", \"Community Member 2\", or \"Research Team Member 1\".\nThe \"de-anonymising key\" will be kept in a separate file and only accessed to link repeated reports against the same person over time.\n\nThe CoC committee will aim to have a resolution agreed upon within one week.\nIn the event that a resolution can't be determined in that time, a member of the CoC committee will respond to the reporter(s) with an update and projected timeline for resolution.\n\n## 4.4 Resolutions\n\nThe CoC committee will seek to agree on a resolution by consensus of all members investigating the report in question.\n\nPossible responses may include:\n\n* A mediated conversation or agreement between the impacted community members.\n* A request for a verbal or written apology, public or private, from a community member.\n* A public announcement clarifying community responsibilities under the Code of Conduct.\n* Nothing, if the issue reported is not a violation or outside of the scope of this Code of Conduct.\n* A private in-person conversation between a member of the committee and the individual(s) involved.\n  In this case, the person who has the conversation will provide a written summary for record keeping.\n* A private written reprimand from a member of the committee to the individual(s) involved.\n  In this case, the committee member will deliver that reprimand to the individual(s) over email for record keeping.\n* A public announcement of an incident, ideally in the same venue that the violation occurred (such as on the listserv for a listserv violation; and GitHub for a GitHub violation).\n  The committee may choose to publish this message elsewhere for posterity.\n* An imposed \"time out\" from online spaces.\n  Committee members will communicate this \"time out\" to the individual(s) involved.\n* A permanent or temporary ban from some or all Turing Way project spaces (like on GitHub, online calls or in-person events).\n  The committee will maintain records of all such bans so that they may be reviewed in the future, extended to a Code of Conduct safety team as it is built, or otherwise maintained.\n  If a member of the community is removed from an event they will not be reimbursed for any part of the event that they miss.\n\nOnce a resolution is agreed upon, but before it is enacted, a member of the CoC committee will contact the original reporter and any other affected parties and explain the proposed resolution.\nThe CoC committee member will ask if this resolution is acceptable, and must note feedback for the record.\nHowever, the CoC committee is not required to act on this feedback.\n\n## 4.5 Conflicts of Interest\n\nIf the report is about someone is the committee, please send the report to the other individuals on the committee.\n\n# 5 Acknowledgement\n\nThis code is adapted from the [Carpentries Code of Conduct](https://docs.carpentries.org/topic_folders/policies/code-of-conduct.html)  with sections from the [Alan Turing Institute Data Study Group Code of Conduct](https://docs.google.com/document/d/1iv2cizNPUwtEhHqaezAzjIoKkaIX02f7XbYmFMXDTGY/edit).\nBoth are used under the creative commons attribution license.\n\nThe Carpentries Code of Conduct was adapted from guidelines written by the [Django Project](https://www.djangoproject.com/conduct/enforcement-manual/), which was itself based on the [Ada Initiative template](http://geekfeminism.wikia.com/wiki/Conference_anti-harassment/Responding_to_reports) and the [PyCon 2013 Procedure for Handling Harassment Incidents](https://us.pycon.org/2013/about/code-of-conduct/harassment-incidents/). \nContributors to the initial document are Adam Obeng, Aleksandra Pawlik, Bill Mills, Carol Willing, Erin Becker, Hilmar Lapp, Kara Woo, Karin Lagesen, Pauline Barmby, Sheila Miguez, Simon Waldman, and Tracy Teal. \nIn 2018, the Code of Conduct was revised to add a summary, straightforward examples of both beneficial and unwanted behaviors, and evaluating intent. \nReporting guidelines were also revised to include alternate contact points and a reporting form with the procedure was added. \nContributors of these revised documents are Ethan White, Kari L. Jordan, Karin Lagesen, Malvika Sharan, Samantha Ahern, and Simon Waldman. \nAdditional language was added by Otter Tech from the PyCon U.S. 2018 Code of Conduct (licensed CC BY 3.0).\n\nThe Turing Institute Data Study Group Code of Conduct was heavily adapted from the [Citizen Lab Summer Institute 2017 Code of Conduct](https://citizenlab.ca/summerinstitute/codeofconduct.html) and used under a CC BY 2.5 CA license.\nCitizen Lab based their Code of Conduct on the [xvzf Code of Conduct](http://xvzf.io/#coc), the [Contributor Covenant](http://contributor-covenant.org/), the [Django Code of Conduct and Reporting Guide](https://www.djangoproject.com/conduct/) and we are also grateful for [this guidance from Ada Initiative](http://geekfeminism.wikia.com/wiki/Conference_anti-harassment/Responding_to_reports).\n\nWe really appreciate the work that all of the communities linked above have put into creating such a well considered process.\n\nThis Code of Conduct is licensed under a [Creative Commons Attribution 4.0 International](https://creativecommons.org/licenses/by/4.0/) (CC BY 4.0 CA) license which means you are free to share and adapt the work so long as the attribution to _The Turing Way_ community is retained, along with the attribution to the Carpentries, the Alan Turing Institute Data Study Group organising team, Citizen Lab and the other resources.\n"
  },
  {
    "path": "CONTRIBUTING.md",
    "content": "# Contributing To _The Turing Way_\n\n🎉🎈🍰 **Welcome to _The Turing Way_ repository!** 🍰🎈🎉\n\n💫 _We're excited that you're here and want to contribute._ 💫\n\nTo get started, please read the [contribution guide in the book](https://book.the-turing-way.org/community-handbook/contributing)\n"
  },
  {
    "path": "GOVERNANCE_ROLES.md",
    "content": "# Governance Roles in _The Turing Way_\n\nGovernance in *_The Turing Way_* occurs across three levels as discussed in the [governance chapter](https://book.the-turing-way.org/foreword/governance).\n\nThis document provides details about the governance roles and members collaborating across all levels of governance in _The Turing Way_.\n\nFor an overview of how members of *_The Turing Way_* community collaborate across these three levels of governance, please refer to the [Ways of Working](https://github.com/the-turing-way/the-turing-way/blob/main/ways_of_working.md) documentation.\n\n## Steering Committee Members\n\n| Name | Position; Affiliation | Project Role | Role length | Previous roles in _The Turing Way_ |\n|---|---|---|---|---|\n| Kirstie Whitaker ([KirstieJane](https://book.the-turing-way.org/afterword/contributors-record#kirstie-whitaker)) | Executive Director, Berkeley Institute for Data Science (BIDS) | Delivery Team: Voices of JupyterHub Project; Founder | Nov 2024 - present | Project Lead of _The Turing Way_ (Oct 2018 - Oct 2024), Programme Director of Tools, Practices and Systems (TPS); The Alan Turing Institute, May 2020 - Nov 2024 |\n| Arielle Bennett ([Arielle-Bennett](https://book.the-turing-way.org/afterword/contributors-record#arielle-bennett)) | Senior Researcher - Open Source Practices; The Alan Turing Institute | Co-Lead Practitioners Hub, Book Dash Working Group Chair | Nov 2024 - Present | Previously: Project Manager and various Maintenance Level roles, 2021 - Nov 2024 |\n| Batool Almarzouq ([BatoolMM](https://github.com/BatoolMM)) | The Alan Turing Institute, The University of Liverpool  | Translation and Localisation Working Chair | 2020 - Present | Various Maintenance Level roles |\n| Jim Madge ([JimMadge](https://github.com/JimMadge)) | Senior Research Software Engineer, The Alan Turing Institute | Infrastructure Wroking Group Chair | 2022 - Present | - |\n| Emma Karoune ([EKaroune](https://book.the-turing-way.org/afterword/contributors-record#emma-karoune)) | Principle Researcher - Community Management Team; The Alan Turing Institute | Book Dash Working Group member | Jan 2021 - Present | Various Maintenance Level roles |\n| Léllé Demertzi ([LelleDemertzi](https://book.the-turing-way.org/afterword/contributors-record#l-ll-demertzi)) | Research Project Manager; The Alan Turing Institute | Community Management Working Group Co-Chair; Project Manager and Practitioners Hub | 2024 - Present | - |\n| Liz Hare ([LizHareDogs](https://book.the-turing-way.org/afterword/contributors-record#liz-hare)) | Qualitative Geneticist, Dog Genetics LLC | _The Turing Way_ Accessibility Working Group Chair | 2023 - Present | - |\n| Precious Onyewuchi | OSPO NOW  - Data Science Without Borders | Book Dash Planning Committee Member | 2024 - Present | - |\n| Malvika Sharan ([malvikasharan](https://book.the-turing-way.org/afterword/contributors-record#malvika-sharan)) | St. Jude Children's Research Hospital | Funding and Sustainability Working Group | June 2025-Present | Previously: Postdoctoral Research Associate - Community Manager, Jan 2020 - Jun 2021; Senior Researcher - Open Research; The Alan Turing Institute | Lead of the Project Delivery Team, Co-Lead Practitioners Hub (Jul 2021 - June 2025) |\n| Oscar Seip ([OscarSeip](https://github.com/OscarSeip)) | Research Community Manager, Software Sustainability Institute | in-kind contribution, _The Turing Way_ Funding and Sustainability Working Group Member | 2025 - Present | Previously: Fireside Chat Governance Series Co-Host |\n| Sara Villa ([SaraVilla](https://github.com/SaraVilla)) | Community and Training Lead, Open Life Science | Community Management Working Group Co-Chair; Book Dash Working Group member; Funding and Sustainability Working Group member | 2025 - Present | Contributor |\n\n## Participation and Engagement at the Community Level\n\nAt the Community Level, participation is comprised of the everyday actions and decisions made by all community members as they participate in the community and contribute to the book.\nExpectations and responsibilities for all members, including Code of Conduct, Contributing Guidelines and Acknowledgements, have been provided and maintained in [_The Turing Way_ Community Handbook](https://book.the-turing-way.org/community-handbook/community-handbook).\n\nAll contributors to _The Turing Way_ are listed as [Contributors in the README file](https://github.com/the-turing-way/the-turing-way?tab=readme-ov-file#contributors) and invited to optionally share narrative details in the [contributors.md](https://github.com/the-turing-way/the-turing-way/blob/main/contributors.md).\n\nInformation from these base files is also published as the [Contributors Record](https://book.the-turing-way.org/afterword/contributors-record) in the afterwards of the book.\n\nPlease refer to the Foreword of the book to learn about different kinds of [community roles](https://book.the-turing-way.org/foreword/community).\n\n## Maintenance Level Roles\n\nAt the Maintenance Level, different groups of people come together to work on and promote specific areas and initiatives in the project, as well as define or change processes to make Community Level participation easier.\nPlease read [Ways of Working document](https://github.com/the-turing-way/the-turing-way/blob/main/ways_of_working.md) for community structure, commitments and resources used by members at the Maintenance Level.\n\nMembers participating in different Working Groups and projects carried out in _The Turing Way_ are listed below.\n\n| Name | Position;  Affiliation | Community Role(s) | Role length | Previous roles in _The Turing Way_ |\n|---|---|---|---|---|\n| Alexandra Araujo Alvarez ([alexandraaaj](https://book.the-turing-way.org/afterword/contributors-record#alexandra-araujo-alvarez)) | Senior Research Community Manager, BridgeAI; The Alan Turing Institute | Book Dash Working Group member | February 2023 - Present | Research Project Manager, Feb 2023 - Apr 2024 |\n| Alejandro Coca Castro ([acocac](https://github.com/acocac)) | Research Fellow, The Alan Turing Institute | Environmental Data Science Book Co-Lead, Community Management Working Group member | 2021 - Present | _The Turing Way_ Translation and Localisation Co-Lead, 2021 - May 2023 |\n| Brigitta Sipőcz ([bsipocz](https://github.com/bsipocz)) | Research Software Engineer, Caltech/IPAC -- NASA/IPAC Infrared Science Archive | _The Turing Way_ Infrastructure Maintainers Co-lead | 2022 - Present | - |\n| Carlos Martinez-Ortiz ([c-martinez](https://github.com/c-martinez)) | RSE community manager, Netherlands eScience Center | Book Dash Working Group member| Feb 2020 - Present | - |\n| Cecilia Baldoni ([cecibaldoni](https://github.com/cecibaldoni/cecibaldoni.github.io)) | Behavioural Ecologist, Max Planck Institute of Animal Behavior | Community Management Working Group member | 2025 - Present | - |\n| Danny Garside ([da5nsy](https://github.com/da5nsy)) | Postdoctoral Visiting Fellow, National Institutes of Health (NIH) | _The Turing Way_ Infrastructure Maintainers Co-lead | 2021 - Present | - |\n| Esther Plomp ([EstherPlomp](https://book.the-turing-way.org/afterword/contributors-record/#esther-plomp)) | University of Aruba | Book Dash Working Group member and various community roles | Feb 2020 - Present | Various Maintenance Level roles |\n| Johanna Bayer ([likeajumprope](https://book.the-turing-way.org/afterword/contributors-record#likeajumprope)) | Post Doctoral Fellow (CNS) | Infrastructure Working Group member, Community Management Working Group member | 2023 - Present | GSOC Co-Mentor 2023 |\n| Neha Moopen ([NehaMoopen](https://github.com/nehamoopen)) | Research Data Manager, Utrecht University | Community Management Working Group member | 2025 - Present | - |\n| Sarah Gibson ([sgibson91](https://github.com/sgibson91)) | Open Source Infrastructure Engineer, 2i2c & JupyterHub Community Development | in-kind contribution, _The Turing Way_ Infrastructure Maintainers Co-lead | 2019 - Present | Previously: Research Data Scientist, Nov 2018 - Aug 2021 (40%) |\n| Susana Roman Garcia ([Susana465](https://book.the-turing-way.org/afterword/contributors-record#susana-roman-garcia)) | PhD researcher, University of Edinburgh | Book Dash Working Group member, Community Management Working Group member | 2024 - November 2024 | - |\n\n## Representation at Constitution Level Steering Committee\n\n\"Constitutional-level\" participation in the Steering Committee by community leaders allows the development, approval and establishment of Working Group and project-related norms that affect the entire project, community and sustainability.\n\nPlease read [Ways of Working document](https://github.com/the-turing-way/the-turing-way/blob/main/ways_of_working.md) for community structure, commitments and resources used by members at the Maintenance Level, which also applies to the Constitution Level.\nSpecific governance documentation and processes for this level will be developed with the founding members of the Steering Committee in 2025.\n\nChairs or a designated representative of the following **Working Groups** join the Steering Committee at this level:\n\n- **Community Management Working Group**\n- **Infrastructure Working Group**\n- **Book Dash Working Group**\n- **Accessibility Working Group**\n- **Translation and Localisation Working Group**\n- **Funding and Sustainability Working Group**\n\nLeads or designated representatives of the **Delivery Groups** for the following projects within _The Turing Way_ also serve on the Steering Committee for accountability:\n\n- **_The Turing Way_ Practitioners Hub**, a Turing Way project under the Innovate UK BridgeAI initiative that engages with industries in sharing and adopting best practices for data science and AI.\n- **Voices of JupyterHub Project**: A CZI-funded project in collaboration with Organizational Mycology to reinvigorate community practices within JupyterHub and share generalisable findings with the wide community via _The Turing Way_.\n- **Data Science Without Borders** (DSWB), a Wellcome Trust-funded project that leverages _The Turing Way_ for adopting and sharing best practices with the DSWB community.\n\n## Previous Contributors to the Maintenance Level\n\nThe following people are no longer involved in the Maintenance Level of the project (although they remain very valuable members of the community!)\nYou can request contact information through the project members above, or tag them in the GitHub issues and Pull Requests so others can answer if the folks you're looking for are not around.\n\n| Name | Role | Volunteer Member or Funded in Full-Time Equivalent (or %) | Time period allocated to the project |\n|---|---|---|---|\n| Anne Lee Steele ([aleesteele](https://book.the-turing-way.org/afterword/contributors-record#anne-lee-steele)) | Research Community Manager; The Alan Turing Institute | _The Turing Way_ Community Manager - Maintenance Level | March 2022 - June 2025 | - |\n| Andrea Sánchez-Tapia ([AndreaSanchezTapia](https://github.com/AndreaSanchezTapia)) | Data Scienst, Global Fisheries watch | Translation and Localisation Working Group Co-Lead and various community roles | 2021 - 2024 |\n| Melissa Black ([melibleq](https://github.com/melibleq)) | Translation and Localisation Working Group member | Volunteer Member  | 2023 - 2024 |\n| Arya A. ([arya1302](https://book.the-turing-way.org/afterword/contributors-record#arya-a)) | Google Summer of Code (GSoC) 2023 intern on Pathway Package | 50% | Apr 2023 - Sep 2023 |\n| Camila Rangel-Smith ([crangelsmith](https://github.com/crangelsmith)) | Translation and Localisation Working Group Co-Lead | Volunteer Member | 2020 - 2023 |\n| Lydia France ([LydiaFrance](https://github.com/LydiaFrance)) | Research Data Scientist on Pathway Package and training materials | 50% | Oct 2021 - Jan 2022 |\n| May Yong ([myyong](https://github.com/myyong)) | Senior Research Software Engineer on Pathway Package | 40% | Oct 2021 - Jan 2022 |\n| Federico Nanni ([myyong](https://github.com/myyong)) | Senior Research Software Engineer on training materials | in-kind | Oct 2021 - Jan 2022 |\n| Iain Stanson ([Iain-S](https://github.com/Iain-S)) | Research Software Engineer on Pathway Package | 30% | Nov 2021 - Jan 2022 |\n| Paul Owoicho ([paulowoicho](https://github.com/paulowoicho)) | Google Season of Docs - Technical Writer for Community Handbook | 100% | Sep 2020 - Dec 2020 |\n| Rachael Ainsworth ([rainsworth](https://github.com/rainsworth)) | Research Associate, Project Delivery Member | 100% | Apr 2019 - May 2019 |\n| Rosie Higman ([rosiehigman](https://github.com/rosiehigman)) | Research Data Librarian, Project Delivery Member | 20% | Jan 2019 - Mar 2019 |\n| Becky Arnold ([r-j-arnold](https://github.com/r-j-arnold)) | Research Software Engineer, Project Delivery Member | 100% | Dec 2018 - Mar 2019 |\n| Louise Bowler ([LouiseABowler](https://github.com/LouiseABowler)) | Research Data Scientist, Project Delivery Member | 40% | Nov 2018 - Mar 2019 |\n| Patricia Herterich ([pherterich](https://github.com/pherterich)) | Data Librarian, Project Delivery Member | 40% | Nov 2018 - Mar 2019 |\n| Alex Morley ([alexmorley](https://github.com/alexmorley)) | Mozilla Fellow | Volunteer Member |  Nov 2018 - June 2019  |\n| Anna Krystalli ([annakrystalli](https://github.com/annakrystalli)) | Research Software Engineer, Project Delivery Member | 10% | Dec 2018 - Mar 2019 |\n| Martin O'Reilly ([martintoreilly](https://github.com/martintoreilly)) | Advisor | Volunteer Member | Nov 2018 - Mar 2019 |\n"
  },
  {
    "path": "LICENSE.md",
    "content": "# LICENSE\n\nThe Turing Way Community makes all of their materials publicly available under open source licenses.\n\nThe process documents and data are made available under a CC-BY license.\nSoftware are made available under an MIT license.\n\nThe  license text listed below (describing both CC-BY and MIT licenses as well as their usage in The Turing Way) is re-used under a CC-BY license from The Carpentries community materials.\n(Specifically from the [Reproducible Science Curriculum](https://github.com/Reproducible-Science-Curriculum/sharing-RR-Jupyter/blob/gh-pages/LICENSE.md)).\n\nYou can read more about licenses [in the book itself](https://book.the-turing-way.org/reproducible-research/licensing.html).\n\n## Process documents and data\n\nAll documentation and chapter materials in this repository are made available under the [Creative Commons Attribution license][cc-by-human].\nThe following is a human-readable summary of (and not a substitute for) the [full legal text of the CC BY 4.0 license][cc-by-legal].\n\nYou are free:\n\n* to **Share**---copy and redistribute the material in any medium or format\n* to **Adapt**---remix, transform, and build upon the material\n\nfor any purpose, even commercially.\n\nThe licensor cannot revoke these freedoms as long as you follow the license terms.\n\nUnder the following terms:\n\n* **Attribution**---You must give appropriate credit (mentioning that your work is derived from work that is Copyright © The Turing Way Community and, where practical, linking to https://github.com/the-turing-way/the-turing-way), provide a [link to the license][cc-by-human], and indicate if changes were made.\n  You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.\n* **No additional restrictions**---You may not apply legal terms or technological measures that legally restrict others from doing\nanything the license permits.\n  \nWith the understanding that:\n\n* You do not have to comply with the license for elements of the material in the public domain or where your use is permitted by an\n  applicable exception or limitation.\n* No warranties are given. The license may not give you all of the permissions necessary for your intended use.\n  For example, other rights such as publicity, privacy, or moral rights may limit how you use the material.\n\n## Software\n\nExcept where otherwise noted, the software and infrastructure provided by the The Turing Way Community are made available under the [OSI][osi]-approved [MIT license][mit-license].\n\n> Permission is hereby granted, free of charge, to any person obtaining\n> a copy of this software and associated documentation files (the\n> \"Software\"), to deal in the Software without restriction, including\n> without limitation the rights to use, copy, modify, merge, publish,\n> distribute, sublicense, and/or sell copies of the Software, and to\n> permit persons to whom the Software is furnished to do so, subject to\n> the following conditions:\n>\n> The above copyright notice and this permission notice shall be\n> included in all copies or substantial portions of the Software.\n> \n> THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n> EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n> MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n> NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n> LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n> OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n> WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n[cc-by-human]: https://creativecommons.org/licenses/by/4.0/\n[cc-by-legal]: https://creativecommons.org/licenses/by/4.0/legalcode\n[mit-license]: https://opensource.org/licenses/mit-license.html\n[osi]: https://opensource.org\n"
  },
  {
    "path": "README-translated/README-Chinese.md",
    "content": "<a href=\"https://book.the-turing-way.org/welcome.html\"><img src=\"book/figures/logo/logo.jpg?raw=true)\" width=\"180\" align=\"Right\" /></a>\n\n# _The Turing Way_\n\n>_此 README.md 文件还提供荷兰语 (README-Dutch)、法语 (README-French.md)、德语 (README-German.md)、印度尼西亚语 (README-Indonesian)、意大利语 (README-Italian)、韩语 (README-Korean)、葡萄牙语 (README-Portuguese) 和西班牙语 (README-Spanish)（按字母顺序列出）。_\n\n*总共贡献者:*\n\n<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->\n[![All Contributors](https://img.shields.io/badge/all_contributors-328-orange.svg)](#contributors)\n<!-- ALL-CONTRIBUTORS-BADGE:END -->\n\n| 资料 | 链接 |\n| :--- | :--- |\n| **项目** | [![读这本书](https://img.shields.io/badge/read-the%20book-blue.svg)](https://book.the-turing-way.org) [![](https://img.shields.io/static/v1?label=TuringWay&message=I%20want%20to%20contribute!&color=yellow&logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8%2F9hAAACYklEQVQ4jXXTy09TQRTH8f5VPhI1xoVxYURNAFcmRleaGDdGXQlKAYkLUARNfICoScGKpTyE3t5bkKD2AUQepUXB0gcgLTalD9rema8LKRVrT3I2k%2Fl95kwyY6BMfQiFqHaoVDlUBoJBZJl9hn8XRsIhqh0abd55tnWdrBA8WfBSpakMhUqhXUCJhKl2aLR65%2FEtLeGc%2BYoy5aHf46bX7cThctK%2BAw2HQkVAW41wzqHRMjNNRteR%2BQzGjg5udZtQ47FiO50gdLZ1nVbvPNUOFSUSxnB4sJ%2F0TjCTTjHk%2BoJl%2BRtqPEaL6zMH79Rw0dyDVVURqRgyn0EkN8jkshwZGsBQodgQyQ2kyDPsce859drjdqLRKE0D%2FZhHR5F6DpHc2B3%2FjF3BcFqxARIpBXXmt9ii67vAYDhIr8fNx0UfE3OzzC0sIHIpxNYqSPEHqFBsiFQMkU3h8vs5%2FvABTeNje6BCj%2FxcwzLlIZHYROq5v4EoIr2JyCbJ57Kobjd3u7o41v4I68pyCfTGrhSvUKHYAJD5bcTWGjKbJJdO4A8E6JyexP4rWgK8Vkb2AjK7hcxnmZybxfF9kff%2BhZJQofvXwhg7O4vAfU2l79ME79xOrjY3c9ZYVzZs8nvZf6%2BRQCRCTgiODg1iCK6vc6WtjZM1tzlRW8sNa99%2Fx64fH%2BNAQz0un49nfh%2BVmspAcKX4lKWUbMbjXOg2cf3Vy%2BLIoRWqekxc7nhB6%2FQ0lZqKJRBAyjKfKZFIcKixgVPPn3LTamFfUyPne7qp1Oz0Bn4g5d7vVAIUamJ2FqPZzCW7gvlHabBQvwE2XnlAiFRrOwAAAABJRU5ErkJggg%3D%3D)](https://github.com/the-turing-way/the-turing-way/blob/main/CONTRIBUTING.md) |\n| **新闻** | [![Twitter 关注](https://img.shields.io/twitter/follow/turingway?style=social)](https://twitter.com/turingway) [![Join our tinyletter mailing list](https://img.shields.io/badge/receive-our%20newsletter%20❤%EF%B8%8F-blueviolet.svg)](https://buttondown.com/turingway)  [![YouTube Channel Views](https://img.shields.io/youtube/channel/views/UCPDxZv5BMzAw0mPobCbMNuA?style=social)](https://www.youtube.com/channel/UCPDxZv5BMzAw0mPobCbMNuA)  |\n| **聊天** | [![加如 Slack](https://img.shields.io/badge/Chat-on%20Slack-ff69b4)](https://join.slack.com/t/theturingway/shared_invite/zt-2v7euwuo7-BYstHdKuTNd1ce0puDtBxA) [![GitHub issues](https://img.shields.io/github/issues/the-turing-way/the-turing-way)](https://github.com/the-turing-way/the-turing-way/issues) [![GitHub pull requests](https://img.shields.io/github/issues-pr/the-turing-way/the-turing-way)](https://github.com/the-turing-way/the-turing-way/pulls) |\n| **构建** | [![Netlify 构建](https://github.com/the-turing-way/the-turing-way/workflows/CI/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3ACI+branch%3Amain) [![Latin Phrases](https://github.com/the-turing-way/the-turing-way/workflows/Check%20for%20Latin%20Phrases/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3A%22Check+for+Latin+Phrases%22+branch%3Amain) [![TestFileSizes](https://github.com/the-turing-way/the-turing-way/workflows/TestFileSizes/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3ATestFileSizes+branch%3Amain) [![Check for Lorem Ipsums](https://github.com/the-turing-way/the-turing-way/workflows/Check%20for%20Lorem%20Ipsums/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3A%22Check+for+Lorem+Ipsums%22+branch%3Amain) |\n| **引用** |  [![引用 使用这个DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3233853.svg)](https://doi.org/10.5281/zenodo.3233853) |\n\n*欢迎来到The Turing Way项目 GitHub 存储库。 这里是开发、审查和维护项目所有组件的地方。*\n\n_The Turing Way_ 是一本关于可重复的、合乎道德的和协作的数据科学的手册。我们参与并支持由不同贡献者组成的社区，使数据科学对每个人都是可访问的、可理解的和有效的。 我们的目标是提供学术界、工业界和公共部门的研究人员和数据科学家在项目开始时所需的所有信息，以确保项目结束后易于复制。\n\n[![The Turing Way project is a book, community, an open-source project and a culture of collaboration. This is shown in four illustrations, the first one showing the Turing Way book, the second showing how the community can grow, the third one showing two people collaborating on a pull request, the last one is showing a balance where reproducibility is valued more than the number of papers published](../book/figures/README_imgs/README_turingway.png)](https://docs.google.com/presentation/d/13Nm8LcRW87ffxEugGEs5j6HKQEvhiuH8b7MfIdX7MpI/edit#slide=id.p1).\n\n*The Turing Way是一本书、一个社区和一个全球合作。*\n\n我们鼓励所有的利益相关者，包括学生、研究人员、软件工程师、项目负责人和融资团队，使用The Turing Way来了解他们在数据科学中的角色和可重复性责任。\n您可以线上阅读这本书 [在线版本](https://book.the-turing-way.org), 按照我们的贡献指南所述为项目做出贡献 [贡献指南](https://github.com/the-turing-way/the-turing-way/blob/main/CONTRIBUTING.md) and 并重新使用所有材料 ([（见许可证）](https://github.com/the-turing-way/the-turing-way/blob/main/LICENSE.md)).\n\n[![This is a screenshot of the online Turing Way book. It also shows one of the Turing Way illustrations at the beginning of the book. In this illustration, there is a road or path with shops for different data science skills. People can go in and out with their shopping cart and pick and choose what they need.](../book/figures/README_imgs/README_book.png)](https://book.the-turing-way.org/welcome.html)\n\n*The Turing Way 线上书籍的截图 ([use this image in a presentation](https://drive.google.com/file/d/1wJR664YECSc8b_RSHeyVjDlHs-Ls9lkc/view?usp=sharing))*\n\n始于2019年，_The Turing Way_是一本固执己见的数据科学指南，后来扩展为一系列关于可重复研究、项目设计、沟通、协作和伦理研究的指南。每个指南都提供了关于一系列主题的章节，涵盖了最佳实践、指导和建议。这些章节是由来自不同的背景、生活经历和领域知识的学生、研究人员、教育工作者、社区领袖、政策制定者和专业人士共同撰写的。\n\n***我们的服务器目标是使可重复性变得“太简单到不能不做”***\n\n**目录:**\n\n- [关于项目](#about-the-project)\n- [团队](#the-team)\n- [贡献](#contributing)\n- [引用  _The Turing Way_](#citing-the-turing-way)\n- [联系我们](#get-in-touch)\n- [贡献者](#contributors)\n\n🎧 如果您喜欢用音频来介绍该项目的话，我们的团队成员Rachael在波尔图[开放科学博览会2019](https://www.opensciencefair.eu/)上做了演示，她的演示由[Orion播客](https://orionopenscience.podbean.com/e/the-fair-is-in-town-figshare-the-turing-way-and-open-science-quest-at-the-osfair2019/)进行录制.\n_The Turing Way_ 的概述从第5:13分钟开始。\n\n### 关于项目\n\n可重复性研究对于确保科学工作的可信性是必要的。 资助者和出版商开始要求出版物包含访问基础数据和分析代码的权限。其目的是确保所有的结果都能被独立验证，并在未来的工作中得到巩固。说起来容易做起来难。共享这些研究成果意味着理解数据管理、图书馆学、软件开发和持续集成技术：这些技能并没有被广泛教授，也不是学术研究人员和数据科学家所期望的。 由于这些活动通常不被教授，我们认识到，需求的负担以及新技能的获取可能会吓到刚接触这些的人。\n_The Turing Way_ 是一本手册，帮助学生、他们的导师、融资者以及期刊编辑确保可再生数据科学“太简单到不能不做”，即使对从未以这种方式工作过的人来说也是如此。 它将包括关于版本控制、分析测试以及与未来用户进行公开透明沟通的培训材料，并以Turing研究所的案例研究和研讨会为基础。这个项目是公开开发的，欢迎在我们的GitHub存储库中提出任何问题、评论和建议： <https://github.com/the-turing-way/the-turing-way>.\n\n### 团队\n\n_The Turing Way_ 是一个开放式协作和社区主导的项目。\n每个为本书做出贡献的人，无论贡献大小，在这个项目中都被视为贡献者和社区成员。项目的长期贡献者被认为是核心贡献者群体的一部分，他们在项目中承担着各种领导角色。\n\n该项目由联合首席调查员 **Kirstie Whitaker** (创始人) 和 **Malvika Sharan**进行协调, 并由[The Alan Turing Institute](https://www.turing.ac.uk/).进行主持。\n**Anne Lee Steele**自2022年3月起担任The Turing Way的社区经理\n\n你可以阅读 [_The Turing Way_ 的致谢过程](https://book.the-turing-way.org/community-handbook/acknowledgement/acknowledgement-members.html#community-members-contributors-and-co-authors) 和 [贡献记录](https://book.the-turing-way.org/afterword/contributors-record.html) 来了解我们如何认可您的工作以及如何在项目中突出我们的贡献者。\n请参阅 [贡献者表](#contributors) 来了解我们所有贡献者的GitHub简介。\n\n### 贡献\n\n:construction: 这个资源库一直在开发中，我们鼓励**每个人**帮助我们建立对许多人有用的东西。 :construction:\n\n每个加入项目的人都应该遵守我们的 [行为准则](CODE_OF_CONDUCT.md) ，并查看我们的 [贡献指南](CONTRIBUTING.md) ，了解更多关于如何开始的信息。\n我们希望能够满足我们的贡献者的需求。\n因此，我们根据你的兴趣、有效性或技能要求，为你的贡献提供多个切入点。\n\n![This image shows six of many kinds of contributions that anyone can make. These are: Develop and share, Maintain and improve, Share resources, Review and update, Make it global through translation, and Share best practices](../book/figures/README_imgs/README_contributions.png)\n\n*贡献包括开发和分享新的章节；维护和改进现有的章节；分享 _The Turing Way_ 资源；审查和更新以前开发的材料；翻译其章节，以帮助该项目在全球范围内使用，并分享研究的最佳实践。*\n\n社区成员有机会学习新技能，分享他们的想法和与他人合作。 当他们为 _The Turing Way_ 或其他开源项目做出贡献时，他们也会在项目中获得指导机会，并被鼓励指导项目的新参与者。\n\n我们创建了一个[推广包](https://github.com/the-turing-way/the-turing-way/tree/main/communications/promotion-pack)帮助您在您的网络中介绍和分享 _The Turing Way_ 。\n\n### Citing _The Turing Way_\n\n我们通过项目的Zenodo归档使用DOI：[10.5281/zenodo.3233853](https://doi.org/10.5281/zenodo.3233853)发布了 _The Turing Way_ 的最新版本。这个DOI是一个\"[概念DOI](https://help.zenodo.org)\"，意味着它将永远解析到最新版本。\n如果你需要引用一个特定的版本，你可以在上面的Zenodo页面上找到这些DOI。\nDOI允许我们对资源库进行归档，它们对于确保学术出版物对研究进行追踪。\n\n引用应该是这样看:\n> The Turing Way Community. (2021, November 10). The Turing Way: A handbook for reproducible, ethical and collaborative research. Zenodo. [http://doi.org/10.5281/zenodo.3233853](http://doi.org/10.5281/zenodo.3233853)\n\n\n要查看我们为不同版本发布的工作流，并提出改进建议，请前往 [发布工作流文档。](./release-workflow.md).\n\n您可以将人们可读取的链接 共享到书中的某个页面，例如 <https://book.the-turing-way.org/reproducible-research/overview/overview-definitions.html>，但请注意该项目正在开发中，因此这些链接可能会不断更新。\n您可能需要包含一个网络存档链接，例如 <https://web.archive.org/web/20191030093753/https://book.the-turing-way.org/reproducibility/03/definitions.html> 以确保不是失效链接！\n\n我们非常感谢您在您的工作中对The Turing Way项目所做的任何参考，我们希望它是有用的。 如果您有任何问题，请[联系我们](#get-in-touch).\n\n### 引用 _The Turing Way_ 插图\n\n![This is an example of one of The Turing Way illustrations. It tries to shows the evolution towards an open science era](../book/figures/evolution-open-research.jpg)\n\n_The Turing Way_ 插图由[Scriberia](https://www.scriberia.co.uk/)的艺术家进行创作，作为[_The Turing Way_ book dashes](https://github.com/the-turing-way/the-turing-way/tree/main/workshops/book-dash)书冲入市场的一部分，分别于 2019 年 5 月 17 日在曼彻斯特、2019 年 5 月 28 日和 2020 年 2 月 21 日在伦敦以及 2020 年 11 月 27 日和 2021 年 5 月 28 日在网上发布。它们描绘了各种 手册中的内容、社区中的协同努力以及 _The Turing Way_ 项目的总体情况。 在 CC-BY 许可下，可在 Zenodo ([https://doi.org/10.5281/zenodo.3332807)](https://doi.org/10.5281/zenodo.3332807)上获得这些插图。\n\n当使用任何照片时，请包括以下属性：\n\n> 本图片由Scriberia为The Turing Way创作，在CC-BY许可下使用\n\nZenodo的最新版本可以引用如下：\n\n> The Turing Way Community, & Scriberia. (2021, May 29). Illustrations from the Turing Way book dashes. Zenodo. https://doi.org/10.5281/zenodo.4906004\n\n我们在这个GitHub资源库中的[欢迎机器人](https://github.com/apps/welcome)对新成员投稿的回复中使用了一些这样的插图。\n\n### 联系我们\n\n#### 邮箱\n你可以通过给[theturingway@gmail.com](mailto:theturingway@gmail.com)发送电邮与*The Turing Way* 团队取得联系。\n\n你也可以联系**Anne Lee Steele** ([asteele@turing.ac.uk](mailto:asteele@turing.ac.uk)), **Malvika Sharan** ([msharan@turing.ac.uk](mailto:msharan@turing.ac.uk))或者 **Kirstie Whitaker** ([kwhitaker@turing.ac.uk](mailto:kwhitaker@turing.ac.uk)).\n\n\n#### 聊天\n\n使用这个[邀请链接](https://join.slack.com/t/theturingway/shared_invite/zt-2v7euwuo7-BYstHdKuTNd1ce0puDtBxA)与他人练习并在Slack上讨论你的想法。\n\n我们也有一个Gitter聊天室（如果你更喜欢开放源替代的聊天方案）。\n我们很乐意你在<https://gitter.im/the-turing-way/the-turing-way>上打个招呼方式。\n\n这聊天室也可以通过[#alan-turing-institute_the-turing-way:gitter.im](https://matrix.to/#/#alan-turing-institute_the-turing-way:gitter.im)的[Matrix](https://matrix.org)帐户加入。\n\n#### 接收更新消息\n\n我们有一个*tinyletter*列表，每月会发送项目更新。\n\n订阅地址：<https://buttondown.com/turingway>.\n\n你也可以在Twitter上关注我们([@turingway](https://twitter.com/turingway)).\n\n## 贡献者\n\n感谢这些了不起的人 ([emoji key](https://allcontributors.org/docs/en/emoji-key)):\n\n<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->\n<!-- prettier-ignore-start -->\n<!-- markdownlint-disable -->\n<table>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/Aakash-Raj-2001\"><img src=\"https://avatars.githubusercontent.com/u/79682170?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Aakash Raj</b></sub></a><br /><a href=\"#translation-Aakash-Raj-2001\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"http://abelsiqueira.github.io\"><img src=\"https://avatars.githubusercontent.com/u/1068752?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Abel Siqueira</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aabelsiqueira\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://achintyarao.in\"><img src=\"https://avatars.githubusercontent.com/u/7623019?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Achintya Rao</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ARaoOfPhysics\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ARaoOfPhysics\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"http://www.adina-wagner.com\"><img src=\"https://avatars1.githubusercontent.com/u/29738718?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Adina Wagner</b></sub></a><br /><a href=\"#content-adswa\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://warwick.ac.uk/aditishenvi\"><img src=\"https://avatars2.githubusercontent.com/u/39489147?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Aditi Shenvi</b></sub></a><br /><a href=\"#ideas-ashenvi10\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/afzal442\"><img src=\"https://avatars.githubusercontent.com/u/11625672?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Afzal Ansari</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aafzal442\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Ago3\"><img src=\"https://avatars.githubusercontent.com/u/30800478?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Ago3</b></sub></a><br /><a href=\"#ideas-Ago3\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/Hanaffi\"><img src=\"https://avatars.githubusercontent.com/u/35642947?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Ahmed Essam</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AHanaffi\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/AidaMehonic\"><img src=\"https://avatars.githubusercontent.com/u/45169136?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Aida Mehonic</b></sub></a><br /><a href=\"#ideas-AidaMehonic\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/ahornos\"><img src=\"https://avatars0.githubusercontent.com/u/9551786?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Albert Hornos Vidal</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aahornos\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aahornos\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/aldenc\"><img src=\"https://avatars.githubusercontent.com/u/20688591?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Alden Conner</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aaldenc\" title=\"Bug reports\">🐛</a> <a href=\"#tool-aldenc\" title=\"Tools\">🔧</a></td>\n    <td align=\"center\"><a href=\"https://github.com/acocac\"><img src=\"https://avatars.githubusercontent.com/u/13321552?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Alejandro ©</b></sub></a><br /><a href=\"#content-acocac\" title=\"Content\">🖋</a> <a href=\"#ideas-acocac\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/alekszaf\"><img src=\"https://avatars.githubusercontent.com/u/15204615?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Aleksandra Zaforemska</b></sub></a><br /><a href=\"#ideas-alekszaf\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-alekszaf\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://ornithos.github.io/\"><img src=\"https://avatars3.githubusercontent.com/u/8834882?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Alex Bird</b></sub></a><br /><a href=\"#tutorial-ornithos\" title=\"Tutorials\">✅</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aornithos\" title=\"Reviewed Pull Requests\">👀</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://alexwlchan.net\"><img src=\"https://avatars0.githubusercontent.com/u/301220?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Alex Chan</b></sub></a><br /><a href=\"#ideas-alexwlchan\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://informationcake.com\"><img src=\"https://avatars3.githubusercontent.com/u/16001543?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Alex Clarke</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=informationcake\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"http://alexmorley.me\"><img src=\"https://avatars2.githubusercontent.com/u/13655521?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Alexander Morley</b></sub></a><br /><a href=\"#question-alexmorley\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aalexmorley\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#ideas-alexmorley\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=alexmorley\" title=\"Tests\">⚠️</a> <a href=\"#infra-alexmorley\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"#maintenance-alexmorley\" title=\"Maintenance\">🚧</a></td>\n    <td align=\"center\"><a href=\"http://www.saral.it\"><img src=\"https://avatars1.githubusercontent.com/u/11707417?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Ali Seyhun Saral</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=seyhunsaral\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"http://www.saral.it\"><img src=\"https://avatars.githubusercontent.com/u/82848414?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Ali Seyhun Saral</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aaseyq\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/amasud08\"><img src=\"https://avatars.githubusercontent.com/u/93528449?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Ambreen Masud</b></sub></a><br /><a href=\"#ideas-amasud08\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-amasud08\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/kir0ul\"><img src=\"https://avatars3.githubusercontent.com/u/6053592?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Andrea Pierré</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Akir0ul\" title=\"Bug reports\">🐛</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://andreasancheztapia.netlify.app/\"><img src=\"https://avatars.githubusercontent.com/u/4183062?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Andrea Sánchez-Tapia (she/her)</b></sub></a><br /><a href=\"#content-AndreaSanchezTapia\" title=\"Content\">🖋</a> <a href=\"#ideas-AndreaSanchezTapia\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/andreea-avramescu\"><img src=\"https://avatars.githubusercontent.com/u/33720256?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Andreea Avramescu</b></sub></a><br /><a href=\"#content-andreea-avramescu\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://inwaves.io\"><img src=\"https://avatars.githubusercontent.com/u/8530685?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Andrei Alexandru</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ainwaves\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ainwaves\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://scholar.google.co.uk/citations?user=o0cD2JgAAAAJ&hl=en\"><img src=\"https://avatars3.githubusercontent.com/u/26226804?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Andrew Stewart</b></sub></a><br /><a href=\"#tutorial-ajstewartlang\" title=\"Tutorials\">✅</a></td>\n    <td align=\"center\"><a href=\"http://www.linkedin.com/in/andriannobella\"><img src=\"https://avatars0.githubusercontent.com/u/57834926?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Andrian Nobella</b></sub></a><br /><a href=\"#translation-andriannobella\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"http://varlotta.xyz\"><img src=\"https://avatars3.githubusercontent.com/u/5478922?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Angelo Varlotta</b></sub></a><br /><a href=\"#translation-varlottaang\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://github.com/aniketh-varma\"><img src=\"https://avatars.githubusercontent.com/u/55805574?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Aniketh Varma</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aaniketh-varma\" title=\"Bug reports\">🐛</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/annahadji\"><img src=\"https://avatars0.githubusercontent.com/u/14828356?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Anna Hadjitofi</b></sub></a><br /><a href=\"#content-annahadji\" title=\"Content\">🖋</a> <a href=\"#translation-annahadji\" title=\"Translation\">🌍</a> <a href=\"#tutorial-annahadji\" title=\"Tutorials\">✅</a></td>\n    <td align=\"center\"><a href=\"https://www.annakrystalli.me/\"><img src=\"https://avatars1.githubusercontent.com/u/5583057?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Anna Krystalli</b></sub></a><br /><a href=\"#question-annakrystalli\" title=\"Answering Questions\">💬</a> <a href=\"#example-annakrystalli\" title=\"Examples\">💡</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aannakrystalli\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#ideas-annakrystalli\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#tutorial-annakrystalli\" title=\"Tutorials\">✅</a></td>\n    <td align=\"center\"><a href=\"https://annabelelizabethwhipp.github.io/homepage\"><img src=\"https://avatars0.githubusercontent.com/u/32568227?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Annabel Elizabeth Whipp</b></sub></a><br /><a href=\"#ideas-annabelelizabethwhipp\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://www.aleesteele.com\"><img src=\"https://avatars.githubusercontent.com/u/18509789?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Anne Lee Steele</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aaleesteele\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Arielle-Bennett\"><img src=\"https://avatars.githubusercontent.com/u/74651964?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Arielle-Bennett</b></sub></a><br /><a href=\"#ideas-Arielle-Bennett\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AArielle-Bennett\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#content-Arielle-Bennett\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://www.getmarkup.com\"><img src=\"https://avatars.githubusercontent.com/u/4941299?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Arron Lacey</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aarronlacey\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://aryanuwu.myportfolio.com/\"><img src=\"https://avatars.githubusercontent.com/u/26514224?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Aryan nath</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AAryannath\" title=\"Bug reports\">🐛</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/augustinas1\"><img src=\"https://avatars1.githubusercontent.com/u/10000223?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Augustinas Sukys</b></sub></a><br /><a href=\"#ideas-augustinas1\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://barbaravreede.com\"><img src=\"https://avatars2.githubusercontent.com/u/5747405?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Barbara Vreede</b></sub></a><br /><a href=\"#content-bvreede\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://medium.com/@batool664\"><img src=\"https://avatars1.githubusercontent.com/u/53487593?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Batool</b></sub></a><br /><a href=\"#ideas-BatoolMM\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-BatoolMM\" title=\"Content\">🖋</a> <a href=\"#translation-BatoolMM\" title=\"Translation\">🌍</a> <a href=\"#infra-BatoolMM\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ABatoolMM\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"http://beckigreen.netlify.app\"><img src=\"https://avatars.githubusercontent.com/u/77735779?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Becki Green</b></sub></a><br /><a href=\"#ideas-beckigreen\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-beckigreen\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/r-j-arnold\"><img src=\"https://avatars1.githubusercontent.com/u/20441134?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Becky Arnold</b></sub></a><br /><a href=\"#question-r-j-arnold\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=r-j-arnold\" title=\"Code\">💻</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=r-j-arnold\" title=\"Documentation\">📖</a> <a href=\"#ideas-r-j-arnold\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ar-j-arnold\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/BenjaminMummery\"><img src=\"https://avatars3.githubusercontent.com/u/46931690?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Benjamin Mummery</b></sub></a><br /><a href=\"#ideas-BenjaminMummery\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-BenjaminMummery\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/AlfAWolf140\"><img src=\"https://avatars2.githubusercontent.com/u/29063219?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Beth Montague-Hellen</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=AlfAWolf140\" title=\"Documentation\">📖</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/bouweandela\"><img src=\"https://avatars3.githubusercontent.com/u/5430937?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Bouwe Andela</b></sub></a><br /><a href=\"#content-bouweandela\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Abouweandela\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://brndnlee.me/\"><img src=\"https://avatars3.githubusercontent.com/u/39078797?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Brandon Lee</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ablee1710\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://bsipocz.github.io/\"><img src=\"https://avatars1.githubusercontent.com/u/6788290?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Brigitta Sipőcz</b></sub></a><br /><a href=\"#content-bsipocz\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/bcamino\"><img src=\"https://avatars.githubusercontent.com/u/39554331?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Bruno Camino</b></sub></a><br /><a href=\"#content-bcamino\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/callummole\"><img src=\"https://avatars1.githubusercontent.com/u/22677759?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Callum Mole</b></sub></a><br /><a href=\"#ideas-callummole\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#infra-callummole\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"#maintenance-callummole\" title=\"Maintenance\">🚧</a></td>\n    <td align=\"center\"><a href=\"http://trotts.io\"><img src=\"https://avatars3.githubusercontent.com/u/9531671?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Cameron Trotter</b></sub></a><br /><a href=\"#ideas-Trotts\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/crangelsmith\"><img src=\"https://avatars2.githubusercontent.com/u/11162074?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Camila Rangel Smith</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=crangelsmith\" title=\"Documentation\">📖</a> <a href=\"#translation-crangelsmith\" title=\"Translation\">🌍</a> <a href=\"#maintenance-crangelsmith\" title=\"Maintenance\">🚧</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/c-martinez\"><img src=\"https://avatars3.githubusercontent.com/u/7782231?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Carlos Martinez</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ac-martinez\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ac-martinez\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#content-c-martinez\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/vladoxNCL\"><img src=\"https://avatars0.githubusercontent.com/u/33488410?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Carlos Vladimiro González Zelaya</b></sub></a><br /><a href=\"#ideas-vladoxNCL\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/cassgvp\"><img src=\"https://avatars2.githubusercontent.com/u/43407869?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Cassandra Gould van Praag</b></sub></a><br /><a href=\"#ideas-cassgvp\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=cassgvp\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/cemulus\"><img src=\"https://avatars3.githubusercontent.com/u/55829938?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Cem Ulus</b></sub></a><br /><a href=\"#translation-cemulus\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://github.com/chadsgilbert\"><img src=\"https://avatars1.githubusercontent.com/u/524598?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Chad Gilbert</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Achadsgilbert\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"http://chandlerklein.com\"><img src=\"https://avatars3.githubusercontent.com/u/18371945?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Chandler Klein</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AChandlerKlein\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/illushka\"><img src=\"https://avatars1.githubusercontent.com/u/8143964?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Chanuki Illushka Seresinhe</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=illushka\" title=\"Documentation\">📖</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/watson-c\"><img src=\"https://avatars3.githubusercontent.com/u/48691807?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Charlotte Watson</b></sub></a><br /><a href=\"#ideas-watson-c\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://chrisholdgraf.com\"><img src=\"https://avatars1.githubusercontent.com/u/1839645?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Chris Holdgraf</b></sub></a><br /><a href=\"#question-choldgraf\" title=\"Answering Questions\">💬</a> <a href=\"#ideas-choldgraf\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/effigies\"><img src=\"https://avatars0.githubusercontent.com/u/83442?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Chris Markiewicz</b></sub></a><br /><a href=\"#ideas-effigies\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://ctomlinson.net\"><img src=\"https://avatars.githubusercontent.com/u/46465574?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Chris Tomlinson</b></sub></a><br /><a href=\"#ideas-tomlincr\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Chrisisour\"><img src=\"https://avatars2.githubusercontent.com/u/49248075?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Christina Hitrova</b></sub></a><br /><a href=\"#ideas-Chrisisour\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://christopherlovell.co.uk\"><img src=\"https://avatars3.githubusercontent.com/u/4648092?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Christopher Lovell</b></sub></a><br /><a href=\"#infra-christopherlovell\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n    <td align=\"center\"><a href=\"https://github.com/ClareLiggins\"><img src=\"https://avatars3.githubusercontent.com/u/47981871?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Clare Liggins</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=ClareLiggins\" title=\"Documentation\">📖</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"http://users.aber.ac.uk/cos\"><img src=\"https://avatars3.githubusercontent.com/u/1053628?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Colin Sauze</b></sub></a><br /><a href=\"#ideas-colinsauze\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-colinsauze\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://collinschwantes.github.io\"><img src=\"https://avatars.githubusercontent.com/u/6107885?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Collin Schwantes</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Acollinschwantes\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/DACNC\"><img src=\"https://avatars.githubusercontent.com/u/57093439?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>DACNC</b></sub></a><br /><a href=\"#ideas-DACNC\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-DACNC\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/DaisyParry\"><img src=\"https://avatars.githubusercontent.com/u/56261324?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>DaisyParry</b></sub></a><br /><a href=\"#content-DaisyParry\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://spot.colorado.edu/~daho1668/\"><img src=\"https://avatars3.githubusercontent.com/u/6867260?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Dan Hobley</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=SiccarPoint\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/kerchner\"><img src=\"https://avatars.githubusercontent.com/u/3451175?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Dan Kerchner</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Akerchner\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/taunsquared\"><img src=\"https://avatars1.githubusercontent.com/u/27739141?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Danbee Kim</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=taunsquared\" title=\"Documentation\">📖</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/dlintott\"><img src=\"https://avatars2.githubusercontent.com/u/4700562?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Daniel Lintott</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Adlintott\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://orcid.org/0000-0001-9488-1870\"><img src=\"https://avatars3.githubusercontent.com/u/465923?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Daniel Mietchen</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ADaniel-Mietchen\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://nordholmen.net\"><img src=\"https://avatars1.githubusercontent.com/u/1325054?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Daniel Nüst</b></sub></a><br /><a href=\"#content-nuest\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://dannygarside.co.uk\"><img src=\"https://avatars3.githubusercontent.com/u/3739866?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Danny Garside</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ada5nsy\" title=\"Bug reports\">🐛</a> <a href=\"#content-da5nsy\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ada5nsy\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/foster999\"><img src=\"https://avatars0.githubusercontent.com/u/31405412?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>David Foster</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Afoster999\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Afoster999\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://research.ncl.ac.uk/geospatial-systems/phdresearchers/profiles/davidgregg.html\"><img src=\"https://avatars.githubusercontent.com/u/45788793?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>David Gregg</b></sub></a><br /><a href=\"#ideas-davidegregg\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-davidegregg\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://www.davidstansby.com\"><img src=\"https://avatars0.githubusercontent.com/u/6197628?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>David Stansby</b></sub></a><br /><a href=\"#content-dstansby\" title=\"Content\">🖋</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/DerienFe\"><img src=\"https://avatars3.githubusercontent.com/u/55786232?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>DerienFe</b></sub></a><br /><a href=\"#ideas-DerienFe\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://www.imperial.ac.uk/quantum-photovoltaics\"><img src=\"https://avatars1.githubusercontent.com/u/6095790?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Diego Alonso Alvarez</b></sub></a><br /><a href=\"#ideas-dalonsoa\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Adalonsoa\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://dblana.github.io/\"><img src=\"https://avatars0.githubusercontent.com/u/13907429?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Dimitra Blana</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Adblana\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#content-dblana\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/dineshkumar12004\"><img src=\"https://avatars.githubusercontent.com/u/67814205?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Dinesh kumar</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Adineshkumar12004\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://www.linkedin.com/in/edwin-ajong-51601a217/\"><img src=\"https://avatars.githubusercontent.com/u/80322163?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Edwin Ajong</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aeddybruv\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"http://emalliaraki.com\"><img src=\"https://avatars3.githubusercontent.com/u/36627260?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Eirini Malliaraki</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=rockita\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/eirini-zormpa\"><img src=\"https://avatars3.githubusercontent.com/u/30151074?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Eirini Zormpa</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aeirini-zormpa\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aeirini-zormpa\" title=\"Reviewed Pull Requests\">👀</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/Elisa-on-GitHub\"><img src=\"https://avatars.githubusercontent.com/u/78543806?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Elisa-on-GitHub</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AElisa-on-GitHub\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"http://emdupre.me\"><img src=\"https://avatars3.githubusercontent.com/u/15017191?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Elizabeth DuPre</b></sub></a><br /><a href=\"#infra-emdupre\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"#question-emdupre\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aemdupre\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/EKaroune\"><img src=\"https://avatars2.githubusercontent.com/u/58147174?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Em K</b></sub></a><br /><a href=\"#content-EKaroune\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AEKaroune\" title=\"Bug reports\">🐛</a> <a href=\"#blog-EKaroune\" title=\"Blogposts\">📝</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AEKaroune\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#talk-EKaroune\" title=\"Talks\">📢</a></td>\n    <td align=\"center\"><a href=\"http://www.glerean.com\"><img src=\"https://avatars1.githubusercontent.com/u/8993301?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Enrico Glerean</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aeglerean\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/edaub\"><img src=\"https://avatars0.githubusercontent.com/u/45598892?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Eric Daub</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=edaub\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://erictleung.com\"><img src=\"https://avatars2.githubusercontent.com/u/2754821?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Eric Leung</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aerictleung\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"http://www.ericrscott.com\"><img src=\"https://avatars2.githubusercontent.com/u/25404783?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Eric R Scott</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AAariq\" title=\"Bug reports\">🐛</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/EstherPlomp\"><img src=\"https://avatars1.githubusercontent.com/u/46314469?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Esther Plomp</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AEstherPlomp\" title=\"Bug reports\">🐛</a> <a href=\"#ideas-EstherPlomp\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-EstherPlomp\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AEstherPlomp\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#talk-EstherPlomp\" title=\"Talks\">📢</a> <a href=\"#blog-EstherPlomp\" title=\"Blogposts\">📝</a> <a href=\"#translation-EstherPlomp\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"http://evelinag.com\"><img src=\"https://avatars2.githubusercontent.com/u/5541162?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Evelina Gabasova</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aevelinag\" title=\"Bug reports\">🐛</a> <a href=\"#content-evelinag\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/fdiblen\"><img src=\"https://avatars.githubusercontent.com/u/144492?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Faruk D.</b></sub></a><br /><a href=\"#content-fdiblen\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://federiconanni.com/\"><img src=\"https://avatars2.githubusercontent.com/u/8415204?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Federico Nanni</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Afedenanni\" title=\"Bug reports\">🐛</a> <a href=\"#content-fedenanni\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Afedenanni\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://www.turing.ac.uk/people/doctoral-students/ferran-gonzalez-hernandez\"><img src=\"https://avatars0.githubusercontent.com/u/43019129?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Ferran Gonzalez Hernandez</b></sub></a><br /><a href=\"#ideas-fgh95\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://asquera.de\"><img src=\"https://avatars2.githubusercontent.com/u/47542?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Florian Gilcher</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Askade\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"http://francescooper.net\"><img src=\"https://avatars3.githubusercontent.com/u/14854230?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Frances Cooper</b></sub></a><br /><a href=\"#content-fmcooper\" title=\"Content\">🖋</a> <a href=\"#ideas-fmcooper\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/FrancesMadden\"><img src=\"https://avatars3.githubusercontent.com/u/52208466?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Frances Madden</b></sub></a><br /><a href=\"#content-FrancesMadden\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Froguin99\"><img src=\"https://avatars.githubusercontent.com/u/93538632?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Froguin99</b></sub></a><br /><a href=\"#ideas-Froguin99\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-Froguin99\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://www.linkedin.com/in/fuad-reza-pahlevi-531283160/\"><img src=\"https://avatars1.githubusercontent.com/u/25898509?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Fuad Reza Pahlevi</b></sub></a><br /><a href=\"#translation-fuadreza\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://github.com/GeorgiaHCA\"><img src=\"https://avatars1.githubusercontent.com/u/46889966?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Georgia</b></sub></a><br /><a href=\"#ideas-GeorgiaHCA\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/GeorgiaA\"><img src=\"https://avatars2.githubusercontent.com/u/33513781?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Georgia Atkinson</b></sub></a><br /><a href=\"#ideas-GeorgiaA\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/georgiatomova\"><img src=\"https://avatars3.githubusercontent.com/u/17258191?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Georgia Tomova</b></sub></a><br /><a href=\"#ideas-georgiatomova\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/GeorgianaElena\"><img src=\"https://avatars0.githubusercontent.com/u/7579677?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Georgiana Elena</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AGeorgianaElena\" title=\"Reviewed Pull Requests\">👀</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"http://gertjan.dev\"><img src=\"https://avatars2.githubusercontent.com/u/3286696?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Gertjan van den Burg</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=GjjvdBurg\" title=\"Documentation\">📖</a> <a href=\"#ideas-GjjvdBurg\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#question-GjjvdBurg\" title=\"Answering Questions\">💬</a></td>\n    <td align=\"center\"><a href=\"https://github.com/giannidsp\"><img src=\"https://avatars1.githubusercontent.com/u/40976911?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Gianni Scolaro</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Agiannidsp\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://labrary.online\"><img src=\"https://avatars0.githubusercontent.com/u/237254?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Graham Lee</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aiamleeg\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aiamleeg\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"http://gkiar.github.io\"><img src=\"https://avatars3.githubusercontent.com/u/4883288?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Greg Kiar</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=gkiar\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Agkiar\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/gustavobecelli\"><img src=\"https://avatars3.githubusercontent.com/u/39573195?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Gustavo Becelli do Nacimento</b></sub></a><br /><a href=\"#translation-gustavobecelli\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://twitter.com/HeidiBaya\"><img src=\"https://avatars1.githubusercontent.com/u/14146757?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Heidi Seibold</b></sub></a><br /><a href=\"#ideas-HeidiSeibold\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-HeidiSeibold\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://www.hoang.co.uk/hieu\"><img src=\"https://avatars1.githubusercontent.com/u/691732?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Hieu Hoang</b></sub></a><br /><a href=\"#ideas-hieuhoang\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/Iain-S\"><img src=\"https://avatars.githubusercontent.com/u/25081046?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Iain</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AIain-S\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://ianhinder.net\"><img src=\"https://avatars3.githubusercontent.com/u/213274?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Ian Hinder</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=ianhinder\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://aspdenlab.weebly.com/isabel-birds.html\"><img src=\"https://avatars.githubusercontent.com/u/44876111?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>IsabelBirds</b></sub></a><br /><a href=\"#ideas-IsabelBirds\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://twitter.com/complexbrains\"><img src=\"https://avatars1.githubusercontent.com/u/45263281?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Isil Bilgin</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Acomplexbrains\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Ismael-KG\"><img src=\"https://avatars0.githubusercontent.com/u/64027166?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Ismael-KG</b></sub></a><br /><a href=\"#content-Ismael-KG\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AIsmael-KG\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#blog-Ismael-KG\" title=\"Blogposts\">📝</a> <a href=\"#ideas-Ismael-KG\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://sites.google.com/view/drjkasmireresearch/home\"><img src=\"https://avatars2.githubusercontent.com/u/1334163?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>JKasmire</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AJKasmire\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/jspickering\"><img src=\"https://avatars3.githubusercontent.com/u/28339195?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Jade Pickering</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jspickering\" title=\"Documentation\">📖</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://www.linkedin.com/in/james-kent-24666468/\"><img src=\"https://avatars0.githubusercontent.com/u/12564882?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>James Kent</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ajdkent\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"http://www.jamesmyatt.co.uk/\"><img src=\"https://avatars1.githubusercontent.com/u/1047337?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>James Myatt</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jamesmyatt\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/jemrobinson\"><img src=\"https://avatars2.githubusercontent.com/u/3502751?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>James Robinson</b></sub></a><br /><a href=\"#ideas-jemrobinson\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jemrobinson\" title=\"Code\">💻</a></td>\n    <td align=\"center\"><a href=\"https://linkedin.com/in/jatonline\"><img src=\"https://avatars.githubusercontent.com/u/48878399?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>James Thomas</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ajatonline\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/jmgate\"><img src=\"https://avatars3.githubusercontent.com/u/20327215?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Jason Gates</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jmgate\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ajmgate\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/jmoldon\"><img src=\"https://avatars2.githubusercontent.com/u/1053066?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Javier Moldon</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jmoldon\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/IIITM-Jay\"><img src=\"https://avatars2.githubusercontent.com/u/65283880?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Jay Dev Jha</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AIIITM-Jay\" title=\"Bug reports\">🐛</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"http://jending.com\"><img src=\"https://avatars.githubusercontent.com/u/5104098?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Jennifer Ding</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Adingaaling\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/ubikcan\"><img src=\"https://avatars.githubusercontent.com/u/23242626?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Jeremy Crampton</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aubikcan\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://twitter.com/jermdemo\"><img src=\"https://avatars3.githubusercontent.com/u/147991?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Jeremy Leipzig</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aleipzig\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/JessicaS11\"><img src=\"https://avatars.githubusercontent.com/u/11756442?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Jessica</b></sub></a><br /><a href=\"#content-JessicaS11\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/jessyprovencher\"><img src=\"https://avatars2.githubusercontent.com/u/70674444?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Jessy Provencher</b></sub></a><br /><a href=\"#translation-jessyprovencher\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"http://erambler.co.uk/\"><img src=\"https://avatars3.githubusercontent.com/u/457628?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Jez Cope</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jezcope\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/JiaruiWang-Jill\"><img src=\"https://avatars.githubusercontent.com/u/41178872?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Jill Wang</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AJiaruiWang-Jill\" title=\"Bug reports\">🐛</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/JimMadge\"><img src=\"https://avatars2.githubusercontent.com/u/23616154?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Jim Madge</b></sub></a><br /><a href=\"#content-JimMadge\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=JimMadge\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/JoannaLeng\"><img src=\"https://avatars1.githubusercontent.com/u/23033397?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Joanna Leng</b></sub></a><br /><a href=\"#content-JoannaLeng\" title=\"Content\">🖋</a> <a href=\"#ideas-JoannaLeng\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://www.jearly.co.uk\"><img src=\"https://avatars2.githubusercontent.com/u/7620667?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Joe Early</b></sub></a><br /><a href=\"#ideas-JAEarly\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/joe-fennell\"><img src=\"https://avatars3.githubusercontent.com/u/25105262?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Joe Fennell</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=joe-fennell\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/jbteves\"><img src=\"https://avatars3.githubusercontent.com/u/26722533?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Joshua Teves</b></sub></a><br /><a href=\"#ideas-jbteves\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://www.madrimasd.org/blogs/bioinformatica\"><img src=\"https://avatars1.githubusercontent.com/u/2072150?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>José María Fernández</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ajmfernandez\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"http://guiomarniso.com\"><img src=\"https://avatars.githubusercontent.com/u/4451818?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Julia Guiomar Niso Galán</b></sub></a><br /><a href=\"#translation-guiomar\" title=\"Translation\">🌍</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aguiomar\" title=\"Reviewed Pull Requests\">👀</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://orcid.org/0000-0002-3127-5520\"><img src=\"https://avatars2.githubusercontent.com/u/1876667?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Julien Colomb</b></sub></a><br /><a href=\"#content-jcolomb\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/kdixey\"><img src=\"https://avatars2.githubusercontent.com/u/59925972?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Katherine Dixey</b></sub></a><br /><a href=\"#ideas-kdixey\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Kelly-dot\"><img src=\"https://avatars0.githubusercontent.com/u/59481756?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Kelly-dot</b></sub></a><br /><a href=\"#ideas-Kelly-dot\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/kessonovitch\"><img src=\"https://avatars0.githubusercontent.com/u/23242159?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Kesson Magid</b></sub></a><br /><a href=\"#ideas-kessonovitch\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://kkmann.github.io/\"><img src=\"https://avatars2.githubusercontent.com/u/2482236?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Kevin Kunzmann</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=kkmann\" title=\"Documentation\">📖</a> <a href=\"#ideas-kkmann\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Akkmann\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/KimDeRuyck\"><img src=\"https://avatars1.githubusercontent.com/u/26715049?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Kim De Ruyck</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AKimDeRuyck\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/kderuyck\"><img src=\"https://avatars3.githubusercontent.com/u/74196557?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Kim De Ruyck</b></sub></a><br /><a href=\"#content-kderuyck\" title=\"Content\">🖋</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://whitakerlab.github.io\"><img src=\"https://avatars1.githubusercontent.com/u/3626306?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Kirstie Whitaker</b></sub></a><br /><a href=\"#question-KirstieJane\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=KirstieJane\" title=\"Documentation\">📖</a> <a href=\"#design-KirstieJane\" title=\"Design\">🎨</a> <a href=\"#eventOrganizing-KirstieJane\" title=\"Event Organizing\">📋</a> <a href=\"#fundingFinding-KirstieJane\" title=\"Funding Finding\">🔍</a> <a href=\"#ideas-KirstieJane\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AKirstieJane\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#talk-KirstieJane\" title=\"Talks\">📢</a></td>\n    <td align=\"center\"><a href=\"https://github.com/KristijanArmeni\"><img src=\"https://avatars3.githubusercontent.com/u/14061041?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Kristijan Armeni</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AKristijanArmeni\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://krrank.live\"><img src=\"https://avatars0.githubusercontent.com/u/44499991?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Krunal Rank</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AKRHero03\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/masonlr\"><img src=\"https://avatars2.githubusercontent.com/u/5828176?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Lachlan Mason</b></sub></a><br /><a href=\"#ideas-masonlr\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=masonlr\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=masonlr\" title=\"Code\">💻</a></td>\n    <td align=\"center\"><a href=\"http://lacion.rbind.io\"><img src=\"https://avatars3.githubusercontent.com/u/17729900?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Laura Acion</b></sub></a><br /><a href=\"#a11y-lauracion\" title=\"Accessibility\">️️️️♿️</a> <a href=\"#translation-lauracion\" title=\"Translation\">🌍</a> <a href=\"#content-lauracion\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/LauraCarter\"><img src=\"https://avatars3.githubusercontent.com/u/16853500?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Laura Carter</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ALauraCarter\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ALauraCarter\" title=\"Bug reports\">🐛</a> <a href=\"#ideas-LauraCarter\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-LauraCarter\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Karvovskaya\"><img src=\"https://avatars3.githubusercontent.com/u/44666630?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Lenka</b></sub></a><br /><a href=\"#blog-Karvovskaya\" title=\"Blogposts\">📝</a> <a href=\"#content-Karvovskaya\" title=\"Content\">🖋</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"http://csd.utexas.edu/research/hamilton-lab\"><img src=\"https://avatars2.githubusercontent.com/u/3268583?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Liberty Hamilton</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Alibertyh\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Lion-admin\"><img src=\"https://avatars.githubusercontent.com/u/72327875?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Lion-admin</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ALion-admin\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/LouiseABowler\"><img src=\"https://avatars1.githubusercontent.com/u/25640708?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Louise Bowler</b></sub></a><br /><a href=\"#question-LouiseABowler\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=LouiseABowler\" title=\"Code\">💻</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=LouiseABowler\" title=\"Documentation\">📖</a> <a href=\"#example-LouiseABowler\" title=\"Examples\">💡</a> <a href=\"#ideas-LouiseABowler\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#eventOrganizing-LouiseABowler\" title=\"Event Organizing\">📋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ALouiseABowler\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Lovkush-A\"><img src=\"https://avatars.githubusercontent.com/u/25344832?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Lovkush</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ALovkush-A\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"http://www.robots.ox.ac.uk/~luca\"><img src=\"https://avatars3.githubusercontent.com/u/3330489?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Luca Bertinetto</b></sub></a><br /><a href=\"#translation-bertinetto\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://github.com/GGn0\"><img src=\"https://avatars.githubusercontent.com/u/44038661?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Luigi Scalzone</b></sub></a><br /><a href=\"#translation-GGn0\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://www.lukeconibear.com/\"><img src=\"https://avatars.githubusercontent.com/u/19871268?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Luke Conibear</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Alukeconibear\" title=\"Bug reports\">🐛</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/perluna\"><img src=\"https://avatars.githubusercontent.com/u/47083632?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Luna</b></sub></a><br /><a href=\"#translation-perluna\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"http://laboratoria.la\"><img src=\"https://avatars0.githubusercontent.com/u/15850514?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Lupe CaMay</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aluucamay\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/malvikasharan\"><img src=\"https://avatars0.githubusercontent.com/u/5370471?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Malvika Sharan</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=malvikasharan\" title=\"Documentation\">📖</a> <a href=\"#eventOrganizing-malvikasharan\" title=\"Event Organizing\">📋</a> <a href=\"#ideas-malvikasharan\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#projectManagement-malvikasharan\" title=\"Project Management\">📆</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Amalvikasharan\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#talk-malvikasharan\" title=\"Talks\">📢</a> <a href=\"#maintenance-malvikasharan\" title=\"Maintenance\">🚧</a> <a href=\"#video-malvikasharan\" title=\"Videos\">📹</a></td>\n    <td align=\"center\"><a href=\"https://marcosellys.com\"><img src=\"https://avatars.githubusercontent.com/u/6751242?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Marcos Ellys Rocha Honorato</b></sub></a><br /><a href=\"#translation-MarcosEllys\" title=\"Translation\">🌍</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AMarcosEllys\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/MariaEriksson\"><img src=\"https://avatars1.githubusercontent.com/u/43676485?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Maria Eriksson</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AMariaEriksson\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Mariam-ke\"><img src=\"https://avatars3.githubusercontent.com/u/39956740?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Mariam-ke</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AMariam-ke\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/marianaiv\"><img src=\"https://avatars.githubusercontent.com/u/53548707?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Mariana V.</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Amarianaiv\" title=\"Bug reports\">🐛</a> <a href=\"#content-marianaiv\" title=\"Content\">🖋</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://www.turing.ac.uk/people/researchers/mariona-coll-ardanuy\"><img src=\"https://avatars.githubusercontent.com/u/46483603?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Mariona</b></sub></a><br /><a href=\"#content-mcollardanuy\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://www.imperial.ac.uk/ict/rcs\"><img src=\"https://avatars3.githubusercontent.com/u/1724545?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Mark Woodbridge</b></sub></a><br /><a href=\"#ideas-mwoodbri\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-mwoodbri\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://www.linkedin.com/in/mloning/\"><img src=\"https://avatars3.githubusercontent.com/u/21020482?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Markus Löning</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Amloning\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#content-mloning\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Marta-MM\"><img src=\"https://avatars2.githubusercontent.com/u/67780317?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Marta-MM</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AMarta-MM\" title=\"Bug reports\">🐛</a> <a href=\"#content-Marta-MM\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/martintoreilly\"><img src=\"https://avatars3.githubusercontent.com/u/21147592?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Martin O'Reilly</b></sub></a><br /><a href=\"#question-martintoreilly\" title=\"Answering Questions\">💬</a> <a href=\"#tool-martintoreilly\" title=\"Tools\">🔧</a> <a href=\"#ideas-martintoreilly\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://martinagvilas.github.io\"><img src=\"https://avatars2.githubusercontent.com/u/37339384?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Martina G. Vilas</b></sub></a><br /><a href=\"#infra-martinagvilas\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=martinagvilas\" title=\"Tests\">⚠️</a> <a href=\"#talk-martinagvilas\" title=\"Talks\">📢</a> <a href=\"#video-martinagvilas\" title=\"Videos\">📹</a> <a href=\"#tutorial-martinagvilas\" title=\"Tutorials\">✅</a></td>\n    <td align=\"center\"><a href=\"https://github.com/mkuzak\"><img src=\"https://avatars2.githubusercontent.com/u/208443?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Mateusz Kuzak</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Amkuzak\" title=\"Bug reports\">🐛</a> <a href=\"#eventOrganizing-mkuzak\" title=\"Event Organizing\">📋</a> <a href=\"#ideas-mkuzak\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Amkuzak\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#content-mkuzak\" title=\"Content\">🖋</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"http://ml-evs.science\"><img src=\"https://avatars2.githubusercontent.com/u/7916000?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Matthew Evans</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aml-evs\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://mbjoseph.github.io\"><img src=\"https://avatars3.githubusercontent.com/u/2664564?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Max Joseph</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ambjoseph\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/melibleq\"><img src=\"https://avatars.githubusercontent.com/u/16723182?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Melissa Black</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Amelibleq\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#content-melibleq\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://www.mrc-bsu.cam.ac.uk/people/in-alphabetical-order/a-to-g/michael-grayling/\"><img src=\"https://avatars2.githubusercontent.com/u/4548867?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Michael Grayling</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=mjg211\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/m-rivera\"><img src=\"https://avatars1.githubusercontent.com/u/22956181?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Miguel Rivera</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Am-rivera\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://www.linkedin.com/in/aniltuncel/\"><img src=\"https://avatars2.githubusercontent.com/u/7026020?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Mustafa Anil Tuncel</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aanilbey\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/nadiasoliman\"><img src=\"https://avatars0.githubusercontent.com/u/41086364?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Nadia Soliman</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=nadiasoliman\" title=\"Documentation\">📖</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"http://npscience.github.io\"><img src=\"https://avatars2.githubusercontent.com/u/9406530?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Naomi Penfold</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Anpscience\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#ideas-npscience\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://mednche.github.io\"><img src=\"https://avatars0.githubusercontent.com/u/24226111?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Natacha Chenevoy</b></sub></a><br /><a href=\"#ideas-mednche\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/NatalieThurlby\"><img src=\"https://avatars1.githubusercontent.com/u/17617308?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Natalie Thurlby</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=NatalieThurlby\" title=\"Code\">💻</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=NatalieThurlby\" title=\"Tests\">⚠️</a></td>\n    <td align=\"center\"><a href=\"https://github.com/nathanbegbie\"><img src=\"https://avatars0.githubusercontent.com/u/7100966?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Nathan Begbie</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Anathanbegbie\" title=\"Bug reports\">🐛</a> <a href=\"#ideas-nathanbegbie\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/nehamoopen\"><img src=\"https://avatars3.githubusercontent.com/u/37183829?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Neha Moopen</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Anehamoopen\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#content-nehamoopen\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://www.software.ac.uk\"><img src=\"https://avatars1.githubusercontent.com/u/1507151?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Neil Chue Hong</b></sub></a><br /><a href=\"#ideas-npch\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/nbarlowATI\"><img src=\"https://avatars3.githubusercontent.com/u/33832774?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Nick Barlow</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AnbarlowATI\" title=\"Bug reports\">🐛</a> <a href=\"#content-nbarlowATI\" title=\"Content\">🖋</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/NZR\"><img src=\"https://avatars3.githubusercontent.com/u/2925086?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Nico</b></sub></a><br /><a href=\"#ideas-NZR\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://orcid.org/0000-0002-6595-0969\"><img src=\"https://avatars0.githubusercontent.com/u/43151303?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Nicolás Alessandroni</b></sub></a><br /><a href=\"#ideas-nalessandroni\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/ninadicara\"><img src=\"https://avatars.githubusercontent.com/u/44364127?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Nina</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aninadicara\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/nlharris\"><img src=\"https://avatars3.githubusercontent.com/u/348704?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Nomi Harris</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Anlharris\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/NotActuallyACat\"><img src=\"https://avatars.githubusercontent.com/u/69468081?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>NotActuallyACat</b></sub></a><br /><a href=\"#ideas-NotActuallyACat\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/obisargoni\"><img src=\"https://avatars0.githubusercontent.com/u/33906525?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Obi Thompson Sargoni</b></sub></a><br /><a href=\"#ideas-obisargoni\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/OliJimbo\"><img src=\"https://avatars2.githubusercontent.com/u/16899600?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Oliver Clark</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=OliJimbo\" title=\"Documentation\">📖</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/oforrest\"><img src=\"https://avatars2.githubusercontent.com/u/49275282?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Oliver Forrest</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=oforrest\" title=\"Documentation\">📖</a> <a href=\"#ideas-oforrest\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-oforrest\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aoforrest\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/defaultobject\"><img src=\"https://avatars2.githubusercontent.com/u/1484941?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Oliver Hamelijnck</b></sub></a><br /><a href=\"#ideas-defaultobject\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/ots22\"><img src=\"https://avatars1.githubusercontent.com/u/5434836?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Oliver Strickson</b></sub></a><br /><a href=\"#question-ots22\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=ots22\" title=\"Documentation\">📖</a> <a href=\"#tutorial-ots22\" title=\"Tutorials\">✅</a></td>\n    <td align=\"center\"><a href=\"https://github.com/OscartGiles\"><img src=\"https://avatars0.githubusercontent.com/u/12784013?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Oscar Giles</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=OscartGiles\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://pabrod.github.io/\"><img src=\"https://avatars0.githubusercontent.com/u/7677614?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Pablo Rodríguez-Sánchez</b></sub></a><br /><a href=\"#content-PabRod\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/pherterich\"><img src=\"https://avatars0.githubusercontent.com/u/8457675?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Patricia Herterich</b></sub></a><br /><a href=\"#question-pherterich\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=pherterich\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Apherterich\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#ideas-pherterich\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-pherterich\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://xcorr.net\"><img src=\"https://avatars.githubusercontent.com/u/3516539?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Patrick Mineault</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Apatrickmineault\" title=\"Bug reports\">🐛</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/paulbaniqued\"><img src=\"https://avatars2.githubusercontent.com/u/47854500?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Paul Dominick Baniqued</b></sub></a><br /><a href=\"#ideas-paulbaniqued\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://www.linkedin.com/in/paulowoicho/\"><img src=\"https://avatars3.githubusercontent.com/u/28223751?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Paul Owoicho</b></sub></a><br /><a href=\"#ideas-paulowoicho\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Apaulowoicho\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Apaulowoicho\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=paulowoicho\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/orchid00\"><img src=\"https://avatars3.githubusercontent.com/u/9795785?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Paula Andrea Martinez</b></sub></a><br /><a href=\"#ideas-orchid00\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aorchid00\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://ppintosilva.com\"><img src=\"https://avatars1.githubusercontent.com/u/11331882?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Pedro Pinto da Silva</b></sub></a><br /><a href=\"#ideas-ppintosilva\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/PeterC-ATI\"><img src=\"https://avatars1.githubusercontent.com/u/55786296?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>PeterC-ATI</b></sub></a><br /><a href=\"#ideas-PeterC-ATI\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://philipdarke.com\"><img src=\"https://avatars2.githubusercontent.com/u/43066442?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Philip Darke</b></sub></a><br /><a href=\"#ideas-philipdarke\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/pc494\"><img src=\"https://avatars.githubusercontent.com/u/32455330?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Phillip Crout</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Apc494\" title=\"Bug reports\">🐛</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/Phome95\"><img src=\"https://avatars.githubusercontent.com/u/100789966?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Phome95</b></sub></a><br /><a href=\"#ideas-Phome95\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-Phome95\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://p.ier.re\"><img src=\"https://avatars1.githubusercontent.com/u/1866496?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Pierre Grimaud</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Apgrimaud\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/pgadige\"><img src=\"https://avatars2.githubusercontent.com/u/8632025?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Pooja Gadige</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=pgadige\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Apgadige\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://pranavmahajan25.github.io/\"><img src=\"https://avatars0.githubusercontent.com/u/33349653?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Pranav Mahajan</b></sub></a><br /><a href=\"#content-PranavMahajan25\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/przemekdolata96\"><img src=\"https://avatars3.githubusercontent.com/u/26312462?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Przemek Dolata</b></sub></a><br /><a href=\"#translation-przemekdolata96\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://rainsworth.github.io\"><img src=\"https://avatars3.githubusercontent.com/u/10600877?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Rachael Ainsworth</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=rainsworth\" title=\"Documentation\">📖</a> <a href=\"#eventOrganizing-rainsworth\" title=\"Event Organizing\">📋</a> <a href=\"#ideas-rainsworth\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#question-rainsworth\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Arainsworth\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#talk-rainsworth\" title=\"Talks\">📢</a></td>\n    <td align=\"center\"><a href=\"https://github.com/radka-j\"><img src=\"https://avatars2.githubusercontent.com/u/29207091?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Radka Jersakova</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aradka-j\" title=\"Bug reports\">🐛</a> <a href=\"#content-radka-j\" title=\"Content\">🖋</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://bast.fr\"><img src=\"https://avatars.githubusercontent.com/u/5120679?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Radovan Bast</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Abast\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://www.linkedin.com/in/rafaelaqueirozg/\"><img src=\"https://avatars.githubusercontent.com/u/42815135?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Rafaela Queiroz</b></sub></a><br /><a href=\"#translation-rafaelaqueirozg\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://github.com/bantya\"><img src=\"https://avatars.githubusercontent.com/u/16685565?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Rahul Thakare</b></sub></a><br /><a href=\"#translation-bantya\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"http://rgaiacs.com\"><img src=\"https://avatars0.githubusercontent.com/u/1506457?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Raniere Silva</b></sub></a><br /><a href=\"#content-rgaiacs\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Argaiacs\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/camachoreina\"><img src=\"https://avatars0.githubusercontent.com/u/12454015?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Reina Camacho Toro</b></sub></a><br /><a href=\"#translation-camachoreina\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://remi-gau.github.io/\"><img src=\"https://avatars3.githubusercontent.com/u/6961185?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Remi Gau</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ARemi-Gau\" title=\"Bug reports\">🐛</a> <a href=\"#content-Remi-Gau\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://reshamas.github.io\"><img src=\"https://avatars0.githubusercontent.com/u/2507232?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Reshama Shaikh</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Areshamas\" title=\"Bug reports\">🐛</a> <a href=\"#content-reshamas\" title=\"Content\">🖋</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/rjjgilham\"><img src=\"https://avatars0.githubusercontent.com/u/18323072?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Richard Gilham</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=rjjgilham\" title=\"Documentation\">📖</a> <a href=\"#ideas-rjjgilham\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/risaueno\"><img src=\"https://avatars0.githubusercontent.com/u/22602921?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Risa Ueno</b></sub></a><br /><a href=\"#ideas-risaueno\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/RobPrecious\"><img src=\"https://avatars.githubusercontent.com/u/9133187?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Robert Precious</b></sub></a><br /><a href=\"#a11y-RobPrecious\" title=\"Accessibility\">️️️️♿️</a></td>\n    <td align=\"center\"><a href=\"https://github.com/longr\"><img src=\"https://avatars0.githubusercontent.com/u/3597743?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Robin Long</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=longr\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"http://rohitmidha23.github.io\"><img src=\"https://avatars1.githubusercontent.com/u/38888530?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Rohit Midha</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=RohitMidha23\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/romeroclaudino\"><img src=\"https://avatars1.githubusercontent.com/u/6520331?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Romero Silva</b></sub></a><br /><a href=\"#translation-romeroclaudino\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://github.com/rosesisk\"><img src=\"https://avatars2.githubusercontent.com/u/52324551?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Rose Sisk</b></sub></a><br /><a href=\"#ideas-rosesisk\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/rosiehigman\"><img src=\"https://avatars2.githubusercontent.com/u/15738325?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Rosie Higman</b></sub></a><br /><a href=\"#question-rosiehigman\" title=\"Answering Questions\">💬</a> <a href=\"#eventOrganizing-rosiehigman\" title=\"Event Organizing\">📋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Arosiehigman\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#ideas-rosiehigman\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/RostiReadioff\"><img src=\"https://avatars1.githubusercontent.com/u/45424690?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Rosti Readioff</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=RostiReadioff\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/SYU-NING\"><img src=\"https://avatars.githubusercontent.com/u/71600183?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>SYU-NING</b></sub></a><br /><a href=\"#ideas-SYU-NING\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/SamGuay\"><img src=\"https://avatars1.githubusercontent.com/u/30598330?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Samuel Guay</b></sub></a><br /><a href=\"#translation-SamGuay\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://snastase.github.io/\"><img src=\"https://avatars2.githubusercontent.com/u/3496566?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Samuel Nastase</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asnastase\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://sksahu.net\"><img src=\"https://avatars1.githubusercontent.com/u/23085664?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Sangram K Sahu</b></sub></a><br /><a href=\"#ideas-sk-sahu\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/sgibson91\"><img src=\"https://avatars2.githubusercontent.com/u/44771837?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Sarah Gibson</b></sub></a><br /><a href=\"#question-sgibson91\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=sgibson91\" title=\"Code\">💻</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=sgibson91\" title=\"Documentation\">📖</a> <a href=\"#tool-sgibson91\" title=\"Tools\">🔧</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Asgibson91\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#talk-sgibson91\" title=\"Talks\">📢</a> <a href=\"#ideas-sgibson91\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#tutorial-sgibson91\" title=\"Tutorials\">✅</a> <a href=\"#video-sgibson91\" title=\"Videos\">📹</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/Biostew\"><img src=\"https://avatars3.githubusercontent.com/u/17767752?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Sarah Stewart</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=BioStew\" title=\"Documentation\">📖</a> <a href=\"#ideas-BioStew\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://nl.linkedin.com/in/fakhereh-sarah-alidoost-11a24a89\"><img src=\"https://avatars3.githubusercontent.com/u/55081872?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>SarahAlidoost</b></sub></a><br /><a href=\"#content-SarahAlidoost\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://www.turing.ac.uk/people/doctoral-students/sedar-olmez\"><img src=\"https://avatars3.githubusercontent.com/u/10035934?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Sedar Olmez</b></sub></a><br /><a href=\"#ideas-SedarOlmez94\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Sergih28\"><img src=\"https://avatars.githubusercontent.com/u/16263046?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Sergi</b></sub></a><br /><a href=\"#translation-Sergih28\" title=\"Translation\">🌍</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ASergih28\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"http://growupboron.github.io\"><img src=\"https://avatars3.githubusercontent.com/u/41593068?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Shankho Boron Ghosh</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Agrowupboron\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/sianbladon\"><img src=\"https://avatars0.githubusercontent.com/u/60200458?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Sian Bladon</b></sub></a><br /><a href=\"#ideas-sianbladon\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://sibasmarak.blogspot.com \"><img src=\"https://avatars0.githubusercontent.com/u/49467053?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Siba Smarak Panigrahi</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asibasmarak\" title=\"Bug reports\">🐛</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/BeastyBlacksmith\"><img src=\"https://avatars.githubusercontent.com/u/18145188?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Simon Christ</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ABeastyBlacksmith\" title=\"Bug reports\">🐛</a> <a href=\"#ideas-BeastyBlacksmith\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-BeastyBlacksmith\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://www.solon-karapanagiotis.com/\"><img src=\"https://avatars2.githubusercontent.com/u/7536922?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Solon</b></sub></a><br /><a href=\"#ideas-solonkarapa\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/BrainonSilicon\"><img src=\"https://avatars1.githubusercontent.com/u/42813259?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Sophia Batchelor</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ABrainonSilicon\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#ideas-BrainonSilicon\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#maintenance-BrainonSilicon\" title=\"Maintenance\">🚧</a> <a href=\"#talk-BrainonSilicon\" title=\"Talks\">📢</a></td>\n    <td align=\"center\"><a href=\"https://github.com/sophiejean\"><img src=\"https://avatars.githubusercontent.com/u/100791169?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Sophie J Mann</b></sub></a><br /><a href=\"#ideas-sophiejean\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-sophiejean\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/sparkler0323\"><img src=\"https://avatars2.githubusercontent.com/u/18514015?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Sparkler</b></sub></a><br /><a href=\"#translation-sparkler0323\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://srishti-nema.github.io/\"><img src=\"https://avatars1.githubusercontent.com/u/42498900?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Srishti Nema</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asrishti-nema\" title=\"Bug reports\">🐛</a> <a href=\"#content-srishti-nema\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://stefanjanssen.nl\"><img src=\"https://avatars1.githubusercontent.com/u/6250246?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Stefan Janssen</b></sub></a><br /><a href=\"#translation-StefanJanssen95\" title=\"Translation\">🌍</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/sverhoeven\"><img src=\"https://avatars1.githubusercontent.com/u/1713488?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Stefan Verhoeven</b></sub></a><br /><a href=\"#content-sverhoeven\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://sdruskat.net\"><img src=\"https://avatars0.githubusercontent.com/u/3007126?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Stephan Druskat</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=sdruskat\" title=\"Documentation\">📖</a> <a href=\"#content-sdruskat\" title=\"Content\">🖋</a> <a href=\"#ideas-sdruskat\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://damtp.cam.ac.uk/user/eglen\"><img src=\"https://avatars1.githubusercontent.com/u/1095067?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Stephen Eglen</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Asje30\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Sylfrena\"><img src=\"https://avatars2.githubusercontent.com/u/35404119?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Sumera Priyadarsini</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ASylfrena\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://sansonegroup.eng.ox.ac.uk/\"><img src=\"https://avatars3.githubusercontent.com/u/525719?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Susanna-Assunta Sansone</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=SusannaSansone\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/svenvanderburg\"><img src=\"https://avatars.githubusercontent.com/u/9945255?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Sven van der Burg</b></sub></a><br /><a href=\"#content-svenvanderburg\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://www.bitsandchips.me\"><img src=\"https://avatars3.githubusercontent.com/u/23552331?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Tania Allard</b></sub></a><br /><a href=\"#ideas-trallard\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#question-trallard\" title=\"Answering Questions\">💬</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"http://www.tarekallamjr.com\"><img src=\"https://avatars1.githubusercontent.com/u/8843728?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Tarek Allam</b></sub></a><br /><a href=\"#infra-tallamjr\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=tallamjr\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/davehedgehog\"><img src=\"https://avatars0.githubusercontent.com/u/57715289?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Tess Gough</b></sub></a><br /><a href=\"#ideas-davehedgehog\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://www.linkedin.com/pub/thomas-sandmann/21/61b/410/\"><img src=\"https://avatars0.githubusercontent.com/u/10490984?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Thomas Sandmann</b></sub></a><br /><a href=\"#translation-tomsing1\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://github.com/ThyavdBerg\"><img src=\"https://avatars.githubusercontent.com/u/77287134?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Thya van den Berg</b></sub></a><br /><a href=\"#eventOrganizing-ThyavdBerg\" title=\"Event Organizing\">📋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/betatim\"><img src=\"https://avatars1.githubusercontent.com/u/1448859?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Tim Head</b></sub></a><br /><a href=\"#question-betatim\" title=\"Answering Questions\">💬</a> <a href=\"#ideas-betatim\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/timyers\"><img src=\"https://avatars.githubusercontent.com/u/48717893?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Tim Myers</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Atimyers\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/teapowell\"><img src=\"https://avatars1.githubusercontent.com/u/35264355?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Tim Powell</b></sub></a><br /><a href=\"#ideas-teapowell\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-teapowell\" title=\"Content\">🖋</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/tonyyzy\"><img src=\"https://avatars3.githubusercontent.com/u/38984697?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Tony Yang</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=tonyyzy\" title=\"Documentation\">📖</a> <a href=\"#translation-tonyyzy\" title=\"Translation\">🌍</a> <a href=\"#infra-tonyyzy\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n    <td align=\"center\"><a href=\"https://github.com/CapTen101\"><img src=\"https://avatars0.githubusercontent.com/u/45699327?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Tushar Rohilla</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ACapTen101\" title=\"Bug reports\">🐛</a> <a href=\"#content-CapTen101\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://www.veronikach.com\"><img src=\"https://avatars2.githubusercontent.com/u/10584818?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Veronika Cheplygina</b></sub></a><br /><a href=\"#ideas-vcheplygina\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-vcheplygina\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/blue-moon22\"><img src=\"https://avatars1.githubusercontent.com/u/15203325?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Victoria</b></sub></a><br /><a href=\"#ideas-blue-moon22\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/vdda\"><img src=\"https://avatars1.githubusercontent.com/u/642451?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Victoria Dominguez del Angel</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Avdda\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"http://warrickball.github.io\"><img src=\"https://avatars.githubusercontent.com/u/20858744?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Warrick Ball</b></sub></a><br /><a href=\"#ideas-warrickball\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-warrickball\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://wiebketoussaint.com\"><img src=\"https://avatars3.githubusercontent.com/u/11086407?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Wiebke Toussaint</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Awiebket\" title=\"Bug reports\">🐛</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/wjchulme\"><img src=\"https://avatars1.githubusercontent.com/u/25637345?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Will Hulme</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=wjchulme\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/wna-se\"><img src=\"https://avatars3.githubusercontent.com/u/1221165?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Wolmar Nyberg Åkerström</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Awna-se\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/xc308\"><img src=\"https://avatars1.githubusercontent.com/u/55785985?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Xiaoqing Chen</b></sub></a><br /><a href=\"#ideas-xc308\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://yabellini.netlify.com/\"><img src=\"https://avatars.githubusercontent.com/u/2473676?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Yanina Bellini Saibene</b></sub></a><br /><a href=\"#content-yabellini\" title=\"Content\">🖋</a> <a href=\"#translation-yabellini\" title=\"Translation\">🌍</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ayabellini\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"http://www.twinreality.blog\"><img src=\"https://avatars0.githubusercontent.com/u/44135465?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Yash Varshney</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AYash-Varshney\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/minnieho1115\"><img src=\"https://avatars1.githubusercontent.com/u/35134464?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Yini</b></sub></a><br /><a href=\"#translation-minnieho1115\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"http://yo-yehudi.com\"><img src=\"https://avatars0.githubusercontent.com/u/9271438?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Yo Yehudi</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=yochannah\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ayochannah\" title=\"Reviewed Pull Requests\">👀</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/ufangYang\"><img src=\"https://avatars3.githubusercontent.com/u/33165978?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Yu-Fang Yang</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AufangYang\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/ZoeIngr\"><img src=\"https://avatars.githubusercontent.com/u/80701413?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>ZoeIngr</b></sub></a><br /><a href=\"#content-ZoeIngr\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/abrown41\"><img src=\"https://avatars.githubusercontent.com/u/10060170?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>abrown41</b></sub></a><br /><a href=\"#ideas-abrown41\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-abrown41\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/acork25\"><img src=\"https://avatars0.githubusercontent.com/u/55786005?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>acork25</b></sub></a><br /><a href=\"#ideas-acork25\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/akira-endo\"><img src=\"https://avatars3.githubusercontent.com/u/26547770?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>akira-endo</b></sub></a><br /><a href=\"#ideas-akira-endo\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/alessandroragano\"><img src=\"https://avatars3.githubusercontent.com/u/44505487?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>alessandroragano</b></sub></a><br /><a href=\"#ideas-alessandroragano\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/alihumayun\"><img src=\"https://avatars.githubusercontent.com/u/78482064?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>alihumayun</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aalihumayun\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aalihumayun\" title=\"Reviewed Pull Requests\">👀</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/andreabecsek\"><img src=\"https://avatars.githubusercontent.com/u/50207436?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>andreabecsek</b></sub></a><br /><a href=\"#ideas-andreabecsek\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/andrealuppi\"><img src=\"https://avatars.githubusercontent.com/u/50251039?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>andrealuppi</b></sub></a><br /><a href=\"#ideas-andrealuppi\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://www.lse.ac.uk/media-and-communications/people/research-staff/asha-titus\"><img src=\"https://avatars3.githubusercontent.com/u/32542663?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>ashatitus</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aashatitus\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#content-ashatitus\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://www.drrebeccawilson.co.uk\"><img src=\"https://avatars0.githubusercontent.com/u/5114032?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>beccawilson</b></sub></a><br /><a href=\"#a11y-beccawilson\" title=\"Accessibility\">️️️️♿️</a></td>\n    <td align=\"center\"><a href=\"http://benkrikler.github.io\"><img src=\"https://avatars.githubusercontent.com/u/4083697?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>benkrikler</b></sub></a><br /><a href=\"#ideas-benkrikler\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-benkrikler\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/ceciledebezenac\"><img src=\"https://avatars2.githubusercontent.com/u/49871974?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>ceciledebezenac</b></sub></a><br /><a href=\"#ideas-ceciledebezenac\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/claudia-belardi\"><img src=\"https://avatars.githubusercontent.com/u/62244233?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>claudia-belardi</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aclaudia-belardi\" title=\"Reviewed Pull Requests\">👀</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/daniguariso\"><img src=\"https://avatars3.githubusercontent.com/u/40636435?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>daniguariso</b></sub></a><br /><a href=\"#ideas-daniguariso\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/giuliaok\"><img src=\"https://avatars1.githubusercontent.com/u/33548935?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>giuliaok</b></sub></a><br /><a href=\"#ideas-giuliaok\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/glumand\"><img src=\"https://avatars3.githubusercontent.com/u/55833875?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>glumand</b></sub></a><br /><a href=\"#translation-glumand\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://github.com/griff-rees\"><img src=\"https://avatars.githubusercontent.com/u/60181741?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>griff-rees</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Agriff-rees\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/harisood\"><img src=\"https://avatars.githubusercontent.com/u/67151373?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>harisood</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aharisood\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/hlnicholls\"><img src=\"https://avatars.githubusercontent.com/u/53306752?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>hlnicholls</b></sub></a><br /><a href=\"#content-hlnicholls\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/irenekp\"><img src=\"https://avatars2.githubusercontent.com/u/53008913?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>irenekp</b></sub></a><br /><a href=\"#content-irenekp\" title=\"Content\">🖋</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/keneuoe\"><img src=\"https://avatars.githubusercontent.com/u/32788068?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>keneuoe</b></sub></a><br /><a href=\"#ideas-keneuoe\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-keneuoe\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/kgrieman\"><img src=\"https://avatars0.githubusercontent.com/u/55785990?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>kgrieman</b></sub></a><br /><a href=\"#ideas-kgrieman\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/l-gorman\"><img src=\"https://avatars2.githubusercontent.com/u/55786252?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>l-gorman</b></sub></a><br /><a href=\"#ideas-l-gorman\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/leavanh\"><img src=\"https://avatars2.githubusercontent.com/u/50297755?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>leavanh</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aleavanh\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/lottycoupat\"><img src=\"https://avatars.githubusercontent.com/u/82104604?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>lottycoupat</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Alottycoupat\" title=\"Bug reports\">🐛</a> <a href=\"#content-lottycoupat\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/lukehare\"><img src=\"https://avatars.githubusercontent.com/u/44277986?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>lukehare</b></sub></a><br /><a href=\"#infra-lukehare\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"#maintenance-lukehare\" title=\"Maintenance\">🚧</a></td>\n    <td align=\"center\"><a href=\"https://github.com/mcnanton\"><img src=\"https://avatars.githubusercontent.com/u/42379883?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>mcnanton</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Amcnanton\" title=\"Bug reports\">🐛</a> <a href=\"#content-mcnanton\" title=\"Content\">🖋</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/mingyuzhuu\"><img src=\"https://avatars.githubusercontent.com/u/57093217?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>mingyuzhuu</b></sub></a><br /><a href=\"#ideas-mingyuzhuu\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-mingyuzhuu\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://twitter.com/mishkanemes\"><img src=\"https://avatars.githubusercontent.com/u/39628884?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>mishkanemes</b></sub></a><br /><a href=\"#eventOrganizing-mishkanemes\" title=\"Event Organizing\">📋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/mjcasy\"><img src=\"https://avatars1.githubusercontent.com/u/44202821?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>mjcasy</b></sub></a><br /><a href=\"#ideas-mjcasy\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-mjcasy\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/msanter01\"><img src=\"https://avatars0.githubusercontent.com/u/39199660?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>msanter01</b></sub></a><br /><a href=\"#translation-msanter01\" title=\"Translation\">🌍</a> <a href=\"#talk-msanter01\" title=\"Talks\">📢</a></td>\n    <td align=\"center\"><a href=\"https://github.com/oxpeter\"><img src=\"https://avatars3.githubusercontent.com/u/6393360?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>oxpeter</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aoxpeter\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/peterrhysstrong\"><img src=\"https://avatars.githubusercontent.com/u/43751009?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>peterrhysstrong</b></sub></a><br /><a href=\"#ideas-peterrhysstrong\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/rabbits99\"><img src=\"https://avatars1.githubusercontent.com/u/72690233?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>rabbits99</b></sub></a><br /><a href=\"#translation-rabbits99\" title=\"Translation\">🌍</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/rachelzwalker\"><img src=\"https://avatars.githubusercontent.com/u/100789985?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>rachelzwalker</b></sub></a><br /><a href=\"#ideas-rachelzwalker\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-rachelzwalker\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/raptorchief\"><img src=\"https://avatars.githubusercontent.com/u/55805992?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>raptorchief</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Araptorchief\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/sallyob123\"><img src=\"https://avatars2.githubusercontent.com/u/55785959?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>sallyob123</b></sub></a><br /><a href=\"#ideas-sallyob123\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/sethsh7\"><img src=\"https://avatars0.githubusercontent.com/u/53264282?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>sethsh7</b></sub></a><br /><a href=\"#ideas-sethsh7\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/sliaqat3\"><img src=\"https://avatars2.githubusercontent.com/u/56300607?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>sliaqat3</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Asliaqat3\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/saramasa22\"><img src=\"https://avatars3.githubusercontent.com/u/55786246?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>smasarone</b></sub></a><br /><a href=\"#ideas-saramasa22\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/swalkoAI\"><img src=\"https://avatars2.githubusercontent.com/u/55786131?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>swalkoAI</b></sub></a><br /><a href=\"#ideas-swalkoAI\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/takuover\"><img src=\"https://avatars2.githubusercontent.com/u/52206060?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>takuover</b></sub></a><br /><a href=\"#ideas-takuover\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/tugceoruc\"><img src=\"https://avatars0.githubusercontent.com/u/20405276?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>tugceoruc</b></sub></a><br /><a href=\"#ideas-tugceoruc\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/vasilisstav\"><img src=\"https://avatars0.githubusercontent.com/u/55793023?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>vasilisstav</b></sub></a><br /><a href=\"#ideas-vasilisstav\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/vcpope\"><img src=\"https://avatars.githubusercontent.com/u/62377353?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>vcpope</b></sub></a><br /><a href=\"#talk-vcpope\" title=\"Talks\">📢</a></td>\n    <td align=\"center\"><a href=\"https://github.com/vhellon\"><img src=\"https://avatars.githubusercontent.com/u/93144591?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>vhellon</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Avhellon\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#content-vhellon\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/yaseminturkyilmaz\"><img src=\"https://avatars3.githubusercontent.com/u/45484225?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>yaseminturkyilmaz</b></sub></a><br /><a href=\"#blog-yaseminturkyilmaz\" title=\"Blogposts\">📝</a> <a href=\"#ideas-yaseminturkyilmaz\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n  </tr>\n</table>\n\n<!-- markdownlint-restore -->\n<!-- prettier-ignore-end -->\n\n<!-- ALL-CONTRIBUTORS-LIST:END -->\n\n这个项目使用[all-contributors](https://github.com/all-contributors/all-contributors)的规格.\n欢迎所有的贡献！\n"
  },
  {
    "path": "README-translated/README-Dutch.md",
    "content": "# The Turing Way\n\n[![Read the book](https://img.shields.io/badge/read-the%20book-blue.svg)](https://book.the-turing-way.org)\n[![Join our tinyletter mailing list](https://img.shields.io/badge/receive-our%20newsletter%20❤%EF%B8%8F-blueviolet.svg)](https://buttondown.com/turingway)\n[![Join the chat at https://gitter.im/the-turing-way/the-turing-way](https://img.shields.io/gitter/room/the-turing-way/the-turing-way?logo=gitter)](https://gitter.im/the-turing-way/the-turing-way)\n[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3233853.svg)](https://doi.org/10.5281/zenodo.3233853)\n[![](https://img.shields.io/static/v1?label=TuringWay&message=I%20want%20to%20contribute!&color=yellow&logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8%2F9hAAACYklEQVQ4jXXTy09TQRTH8f5VPhI1xoVxYURNAFcmRleaGDdGXQlKAYkLUARNfICoScGKpTyE3t5bkKD2AUQepUXB0gcgLTalD9rema8LKRVrT3I2k%2Fl95kwyY6BMfQiFqHaoVDlUBoJBZJl9hn8XRsIhqh0abd55tnWdrBA8WfBSpakMhUqhXUCJhKl2aLR65%2FEtLeGc%2BYoy5aHf46bX7cThctK%2BAw2HQkVAW41wzqHRMjNNRteR%2BQzGjg5udZtQ47FiO50gdLZ1nVbvPNUOFSUSxnB4sJ%2F0TjCTTjHk%2BoJl%2BRtqPEaL6zMH79Rw0dyDVVURqRgyn0EkN8jkshwZGsBQodgQyQ2kyDPsce859drjdqLRKE0D%2FZhHR5F6DpHc2B3%2FjF3BcFqxARIpBXXmt9ii67vAYDhIr8fNx0UfE3OzzC0sIHIpxNYqSPEHqFBsiFQMkU3h8vs5%2FvABTeNje6BCj%2FxcwzLlIZHYROq5v4EoIr2JyCbJ57Kobjd3u7o41v4I68pyCfTGrhSvUKHYAJD5bcTWGjKbJJdO4A8E6JyexP4rWgK8Vkb2AjK7hcxnmZybxfF9kff%2BhZJQofvXwhg7O4vAfU2l79ME79xOrjY3c9ZYVzZs8nvZf6%2BRQCRCTgiODg1iCK6vc6WtjZM1tzlRW8sNa99%2Fx64fH%2BNAQz0un49nfh%2BVmspAcKX4lKWUbMbjXOg2cf3Vy%2BLIoRWqekxc7nhB6%2FQ0lZqKJRBAyjKfKZFIcKixgVPPn3LTamFfUyPne7qp1Oz0Bn4g5d7vVAIUamJ2FqPZzCW7gvlHabBQvwE2XnlAiFRrOwAAAABJRU5ErkJggg%3D%3D)](https://github.com/the-turing-way/the-turing-way/blob/main/CONTRIBUTING.md)\n\n_The Turing Way_ is een licht eigenzinnig boek voor reproduceerbare data-analyses.\nJe kan het boek hier lezen: <https://book.the-turing-way.org>\nJe bevindt je momenteel op de GitHub repository pagina van het project waar alle onderdelen zich bevinden die samen het boek vormen en waar het proces van het schrijven en vormen van het boek plaatsvind.\n\nOns doel is om onderzoekers te voorzien van alle informatie die zij nodig hebben om reproduceerbare onderzoeksresultaten te produceren op het moment dat zij een onderzoeksproject starten.\n\nDit betekend dat promovendi, postdocs, PIs en financieringsteams weten wat zij toe kunnen voegen aan de \"verantwoordelijkheid van reproduceerbaarheid\" en wat zij kunnen doen om data analyses efficiënter, effectiever en begrijpelijk te maken.\n\nInhoudsopgave:\n\n- [Over het project](#about-the-project)\n- [Het team](#the-team)\n- [Bijdragen](#contributing)\n- [Citeren van _The Turing Way_](#citing-the-turing-way)\n- [Contact](#get-in-touch)\n- [Bijdragers](#contributors)\n\n🎧 Als je liever een audio introductie over het project wilt kan je de presentatie van teamlid Rachael tijdens de [Open Science Fair 2019](https://www.opensciencefair.eu/) in Porto bekijken.\nDe opname is gemaakt door de [Orion podcast](https://orionopenscience.podbean.com/e/the-fair-is-in-town-figshare-the-turing-way-and-open-science-quest-at-the-osfair2019/).\nDe introductie van _The Turing Way_ begint vanaf 5:13.\n\n### Over het  project\n\nReproduceerbaar onderzoek is nodig om ervoor te zorgen dat wetenschappelijk werk kan worden vertrouwd.\nFinanciers en uitgevers beginnen te eisen dat publicaties de onderliggende data en de analysecode bevatten.\nHet doel van reproduceerbaar onderzoek is om ervoor te zorgen dat alle resultaten onafhankelijk kunnen worden geverifieerd en gebruikt kunnen worden in toekomstig onderzoek.\nDit is soms makkelijker gezegd dan gedaan.\nHet delen van deze onderzoeksresultaten betekent inzicht in gegevensbeheer, bibliotheekwetenschappen, softwareontwikkeling en continue integratietechnieken: vaardigheden die niet algemeen worden onderwezen of verwacht van academische onderzoekers en datawetenschappers. Aangezien deze activiteiten niet algemeen worden onderwezen, erkennen we dat de last van vereisten en het verwerven van nieuwe vaardigheden intimiderend kan zijn voor personen die nieuw zijn in deze wereld.\n*The Turing Way* is een handboek om studenten, hun begeleiders, financiers en tijdschriftenredacteuren te ondersteunen om ervoor te zorgen dat reproduceerbare datawetenschap \"te gemakkelijk is om niet te doen\", zelfs voor mensen die nog nooit op deze manier hebben gewerkt.\n*The Turing Way* trainingsmateriaal bevat informatie over versiebeheer, analysetesten en open en transparante communicatie met toekomstige gebruikers, en voortbouwen op casestudy's en workshops van het Turing Institute.\nDit project is openlijk ontwikkeld en alle vragen, opmerkingen en aanbevelingen zijn welkom in onze github repository: <https://github.com/the-turing-way/the-turing-way>.\n\n### Het team\n\nDit is (een deel) van het project team wat aan het werk is op het Turing Institute.\nVoor meer informatie over hoe je ons kan contacteren zie [Governance Roles document](../GOVERNANCE_ROLES.md).\n\n<!---![Team photo](book/figures/TuringWayTeam.jpg)--->\n\n### Bijdragen\n\n:construction: Aan deze repository wordt altijd gewerkt en **iedereen** wordt aangemoedigd om ons te helpen iets te bouwen dat nuttig is voor velen. :construction:\n\nWij vragen iedereen zich te houden aan de [code of conduct](CODE_OF_CONDUCT.md) en onze [contributing guidelines](CONTRIBUTING.md) te lezen voor meer informatie over hoe je kan beginnen met bijdragen.\n\nAls je niet bekend of zelfverzekerd bent met GitHub kan je ook een case study of je tips en trucs bijdragen via een [Google submission form](https://goo.gl/forms/akFqZEIy2kxAjfZW2).\n\n### Citeren _The Turing Way_\n\nJe kan naar de _The Turing Way_ verwijzen via Zenodo met een DOI: [10.5281/zenodo.3233853](https://doi.org/10.5281/zenodo.3233853).\nDankzij DOIs kunnen we een versie van het handboek in de Zenodo repository citeren.\nHierdoor kunnen we garanderen dat er naar het handboek kan worden verwezen in academische publicaties.\n\nHet citaat ziet er ongeveer zo uit:\n\n> The Turing Way Community, Becky Arnold, Louise Bowler, Sarah Gibson, Patricia Herterich, Rosie Higman, … Kirstie Whitaker. (2019, March 25). The Turing Way: A Handbook for Reproducible Data Science (Version v0.0.4). Zenodo. <http://doi.org/10.5281/zenodo.3233986>\n\nJe kan ook een door mensen leesbare URL delen met een pagina in het boek, bijvoorbeeld. : <https://book.the-turing-way.org/reproducibility/03/definitions.html>.\nHoud er rekening mee dat het project in ontwikkeling is waardoor deze links in de loop van de tijd kunnen veranderen.\nAls je een webarchieflink toevoegt, zoals: <https://web.archive.org/web/20191030093753/https://book.the-turing-way.org/reproducibility/03/definitions.html> voorkom je dat er overal doodlopende links staan.\n\nWe waarderen alle verwijzingen naar de _The Turing Way_ project in jouw werk en we hopen dat de _The Turing Way_ van nut is.\nAls je vragen hebt [neem contact op](#get-in-touch).\n\n### Citeren _The Turing Way_ illustraties\n\n_The Turing Way_ illustraties zijn gecreëerd door kunstenaars van [Scriberia](https://www.scriberia.co.uk/) als onderdeel van [_The Turing Way_ book dashes](https://github.com/the-turing-way/the-turing-way/tree/main/workshops/book-dash) in Manchester op 17 Mei 2019 en Londen op 28 Mei 2019 en 21 Februari 2020.\nZe illustreren bijvoorbeeld de inhoud van het handboek, samenwerking binnen de Community en het _The Turing Way_ project in het algemeen.\nDe illustraties zijn beschikbaar op Zenodo ([https://zenodo.org/record/3695300)](https://zenodo.org/record/3695300) onder een CC-BY licentie.\n\nNeem alsjeblieft onderstaande licentie over wanneer je een illustratie gebruikt:\n> Deze illustratie is gecreëerd door Scriberia voor The Turing Way Community onder een CC-BY licentie.\n\nDe laatste versie van Zenodo kan als volgt geciteerd worden:\n> The Turing Way Community, & Scriberia. (2020, March 3). Illustrations from the Turing Way book dashes. Zenodo. http://doi.org/10.5281/zenodo.3695300\n\nWe hebben een aantal van deze illustraties gebruikt in de [Welcome Bot](https://github.com/apps/welcome)'s reacties als een nieuw lid bijdraagt aan de GitHub repository.\n\n### Contact\n\nWe hebben een gitter chat room waar we het leuk zouden vinden als je hallo komt zeggen: <https://gitter.im/the-turing-way/the-turing-way>.\nDe chat room is gesynchroniseerd met [Matrix](https://matrix.org) via [#the-turing-way:matrix.org](https://riot.im/app/#/room/#the-turing-way:matrix.org) waar je van harte welkom om erbij te komen als je dat liever hebt.\n\nWe hebben een tiny letter emaillijst waardoor je maandelijkse project updates kan ontvangen.\nSchrijf je in via <https://buttondown.com/turingway>.\n\nJe kan onze Community Manager **Malvika Sharan** contacteren via email: [msharan@turing.ac.uk](mailto:msharan@turing.ac.uk).\nOf je kan de hoofdonderzoeker van het project, **Kirstie Whitaker**, contacteren via email: [kwhitaker@turing.ac.uk](mailto:kwhitaker@turing.ac.uk).\n\n## Bijdragers\n\nDank gaat uit naar deze geweldige mensen ([emoji key](https://allcontributors.org/docs/en/emoji-key)):\n\n[Lijst met mensen die hebben samengewerkt](https://github.com/the-turing-way/the-turing-way#contributors)\n\nDit project volgt de [all-contributors](https://github.com/all-contributors/all-contributors) specificaties.\nAlle bijdragen zijn welkom!\n"
  },
  {
    "path": "README-translated/README-French.md",
    "content": "<a href=\"https://book.the-turing-way.org/welcome.html\"><img src=\"https://raw.githubusercontent.com/the-turing-way/the-turing-way/main/book/figures/logo/logo.jpg\" width=\"180\" align=\"Right\" /></a>\n\n# _The Turing Way_\n\n>_Ce fichier README.md est également disponible en allemand ([README-German.md](README-German.md)), anglais ([README](../README.md)), coréen ([README-Korean](README-Korean.md)), espagnol ([README-Spanish](README-Spanish.md)), indonésien ([README-Indonesian](README-Indonesian.md)), italien ([README-Italian](README-Italian.md)), néerlandais ([README-Dutch](README-Dutch.md)) et portugais ([README-Portuguese](README-Portuguese.md)) (tri alphabétique)._\n\n*Total des contributeurs et contributrices :*\n\n<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->\n[![Tous les contributeurs et les contributrices](https://img.shields.io/badge/all_contributors-346-orange.svg)](#contributors)\n<!-- ALL-CONTRIBUTORS-BADGE:END -->\n\n| Information | Liens |\n| :--- | :--- |\n| **Projet** | [![Lire le livre](https://img.shields.io/badge/lire-le%20livre-blue.svg)](https://book.the-turing-way.org) [![](https://img.shields.io/static/v1?label=TuringWay&message=Je%20veux%20contribuer%20!&color=yellow&logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8%2F9hAAACYklEQVQ4jXXTy09TQRTH8f5VPhI1xoVxYURNAFcmRleaGDdGXQlKAYkLUARNfICoScGKpTyE3t5bkKD2AUQepUXB0gcgLTalD9rema8LKRVrT3I2k%2Fl95kwyY6BMfQiFqHaoVDlUBoJBZJl9hn8XRsIhqh0abd55tnWdrBA8WfBSpakMhUqhXUCJhKl2aLR65%2FEtLeGc%2BYoy5aHf46bX7cThctK%2BAw2HQkVAW41wzqHRMjNNRteR%2BQzGjg5udZtQ47FiO50gdLZ1nVbvPNUOFSUSxnB4sJ%2F0TjCTTjHk%2BoJl%2BRtqPEaL6zMH79Rw0dyDVVURqRgyn0EkN8jkshwZGsBQodgQyQ2kyDPsce859drjdqLRKE0D%2FZhHR5F6DpHc2B3%2FjF3BcFqxARIpBXXmt9ii67vAYDhIr8fNx0UfE3OzzC0sIHIpxNYqSPEHqFBsiFQMkU3h8vs5%2FvABTeNje6BCj%2FxcwzLlIZHYROq5v4EoIr2JyCbJ57Kobjd3u7o41v4I68pyCfTGrhSvUKHYAJD5bcTWGjKbJJdO4A8E6JyexP4rWgK8Vkb2AjK7hcxnmZybxfF9kff%2BhZJQofvXwhg7O4vAfU2l79ME79xOrjY3c9ZYVzZs8nvZf6%2BRQCRCTgiODg1iCK6vc6WtjZM1tzlRW8sNa99%2Fx64fH%2BNAQz0un49nfh%2BVmspAcKX4lKWUbMbjXOg2cf3Vy%2BLIoRWqekxc7nhB6%2FQ0lZqKJRBAyjKfKZFIcKixgVPPn3LTamFfUyPne7qp1Oz0Bn4g5d7vVAIUamJ2FqPZzCW7gvlHabBQvwE2XnlAiFRrOwAAAABJRU5ErkJggg%3D%3D)](https://github.com/the-turing-way/the-turing-way/blob/main/CONTRIBUTING.md) |\n| **Nouvelles** | [![Suivre Twitter](https://img.shields.io/twitter/follow/turingway?style=social)](https://twitter.com/turingway) [![S'inscrire à notre liste de diffusion tinyletter](https://img.shields.io/badge/Recevoir-notre%20infolettre%20❤%EF%B8%8F-blueviolet.svg)](https://buttondown.com/turingway)  [![Vues sur la chaîne YouTube](https://img.shields.io/youtube/channel/views/UCPDxZv5BMzAw0mPobCbMNuA?style=social)](https://www.youtube.com/channel/UCPDxZv5BMzAw0mPobCbMNuA)  |\n| **Pour échanger !** | [![Rejoindre Slack](https://img.shields.io/badge/Discutons-sur%20Slack-ff69b4)](https://join.slack.com/t/theturingway/shared_invite/zt-2v7euwuo7-BYstHdKuTNd1ce0puDtBxA) |\n| **Sur GitHub** | [![GitHub issues](https://img.shields.io/github/issues/the-turing-way/the-turing-way)](https://github.com/the-turing-way/the-turing-way/issues) [![GitHub pull requests](https://img.shields.io/github/issues-pr/the-turing-way/the-turing-way)](https://github.com/the-turing-way/the-turing-way/pulls) |\n| **Build** | [![Netlify build](https://github.com/the-turing-way/the-turing-way/workflows/CI/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3ACI+branch%3Amain) [![Latin Phrases](https://github.com/the-turing-way/the-turing-way/workflows/Check%20for%20Latin%20Phrases/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3A%22Check+for+Latin+Phrases%22+branch%3Amain) [![TestFileSizes](https://github.com/the-turing-way/the-turing-way/workflows/TestFileSizes/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3ATestFileSizes+branch%3Amain) [![Check for Lorem Ipsums](https://github.com/the-turing-way/the-turing-way/workflows/Check%20for%20Lorem%20Ipsums/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3A%22Check+for+Lorem+Ipsums%22+branch%3Amain) |\n| **Citation** |  [![Citez ce document en utilisant le DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3233853.svg)](https://doi.org/10.5281/zenodo.3233853) |\n\n*Bienvenue sur le dépôt GitHub du projet The Turing Way. C'est ici que l'ensemble du projet est développé, revu et maintenu.*\n\n_The Turing Way_ est un manuel sur la science des données reproductible, éthique et collaborative.\nNous impliquons et soutenons une communauté diversifiée de contributeurs et contributrices afin de rendre la science des données accessible, compréhensible et efficace pour tout le monde.\nNotre objectif est de fournir toutes les informations dont les scientifiques ont besoin au début de leurs projets pour s'assurer qu'ils soient faciles à reproduire à la fin.\n\n[![Le projet Turing Way est un livre, une communauté, un projet open-source et une culture de la collaboration. Ceci est démontré par quatre illustrations, la première montrant le livre Turing Way, la deuxième montrant comment la communauté peut se développer, la troisième montrant deux personnes collaborant sur une demande de modification, la dernière montrant un équilibre où la reproductibilité est plus importante que le nombre d'articles publiés](https://raw.githubusercontent.com/the-turing-way/the-turing-way/main/book/figures/README_imgs/README_turingway.png)](https://docs.google.com/presentation/d/13Nm8LcRW87ffxEugGEs5j6HKQEvhiuH8b7MfIdX7MpI/edit#slide=id.p1)\n\n*The Turing Way est un livre, une communauté et une collaboration mondiale.*\n\nToutes les parties prenantes, y compris les étudiants et les étudiantes, les chercheurs et les chercheuses, les ingénieurs et ingénieures logiciels, les chefs et cheffes de projet et les équipes de financement, sont encouragées à utiliser _The Turing Way_ pour comprendre leur rôle et leur responsabilité en matière de reproductibilité dans la science des données. Vous pouvez lire le livre [en ligne](https://book.the-turing-way.org), contribuer au projet tel que décrit dans nos [directives de contribution](https://github.com/the-turing-way/the-turing-way/blob/master/CONTRIBUTING.md) et réutiliser tout le matériel ([voir la licence](https://github.com/the-turing-way/the-turing-way/blob/master/LICENSE.md)).\n\n[![Ceci est une capture d'écran du livre en ligne _The Turing Way_. Elle montre également l'une des illustrations de _The Turing Way_ au début du livre. Dans cette illustration, il y a une route ou un chemin avec des magasins pour différentes compétences en science des données. Les gens peuvent entrer et sortir avec leur panier et choisir ce dont ils ont besoin.](https://raw.githubusercontent.com/the-turing-way/the-turing-way/main/book/figures/README_imgs/README_book.png)](https://book.the-turing-way.org/welcome.html)\n\n*Capture d'écran du livre en ligne The Turing Way ([utilisez cette image dans une présentation](https://drive.google.com/file/d/1wJR664YECSc8b_RSHeyVjDlHs-Ls9lkc/view?usp=sharing)).*\n\nDémarré en 2019 comme un guide – légèrement opiniâtré – sur la science des données, _The Turing Way_ s'est depuis développé en une série de guides sur la recherche reproductible, la conception de projets, la communication, la collaboration et la recherche éthique.\nChaque guide propose des chapitres sur un éventail de sujets couvrant les meilleures pratiques, les conseils et les recommandations.\nCes chapitres ont été co-rédigés par des étudiants et des étudiantes, des chercheurs et des chercheuses, des éducateurs et des éducatrices, des responsables communautaires, des décideurs et des décideuses et des professionnels et des professionnelles issus de divers horizons, expériences vécues et connaissances du domaine.\n\n*Notre objectif est de rendre la reproductibilité « trop facile à ne pas faire »*.\n\n**Table des matières :**\n\n- [À propos du projet](#à-propos-du-projet)\n- [L'équipe](#léquipe)\n- [Contribuer](#contribuer)\n- [Citer _The Turing Way_](#citer-the-turing-way)\n- [Entrer en contact](#entrer-en-contact)\n- [Personnes qui ont contribué](#contribution)\n\n🎧 Si vous préférez une introduction audio au projet (en anglais seulement), Rachael, membre de l'équipe, a fait une présentation à l'[Open Science Fair 2019](https://www.opensciencefair.eu/) à Porto et sa démo a été enregistrée par l'[Orion podcast](https://orionopenscience.podbean.com/e/the-fair-is-in-town-figshare-the-turing-way-and-open-science-quest-at-the-osfair2019/).\nLa présentation de _The Turing Way_ commence à la minute 5:13.\n\n### À propos du projet\n\nUne recherche reproductible est nécessaire pour garantir la confiance des travaux scientifiques.\nLes bailleurs de fonds et les éditeurs commencent à exiger que les publications incluent l'accès aux données sous-jacentes et au code d'analyse.\nL'objectif est de s'assurer que tous les résultats peuvent être vérifiés de manière indépendante et utilisés dans des travaux futurs.\nC'est parfois plus facile à dire qu'à faire.\nPartager l'ensemble des intrants et des extrants de recherche (par exemple données, résultats) implique de comprendre la gestion des données, les sciences de l'information et la bibliothéconomie, le développement de logiciels et les techniques d'intégration continue : des compétences qui ne sont pas couramment enseignées ou attendues de la communauté de recherche universitaire et des scientifiques des données. Comme ces activités ne sont pas couramment enseignées, nous reconnaissons que le poids des exigences et l'acquisition de nouvelles compétences peuvent intimider les personnes qui sont nouvelles dans ce monde.\n*The Turing Way* est un manuel destiné à aider les scientifiques, les bailleurs de fonds et les éditeurs de revues afin que la science des données reproductibles soit « trop facile à ne pas faire » même pour les personnes qui n'ont jamais travaillé de cette manière auparavant.\nIl comprend, entre autres, du matériel de formation sur la gestion de version, les tests d'analyse et la communication ouverte et transparente avec les novices et s'appuie sur des études de cas et des ateliers du Turing Institute.\nCe projet est développé de manière ouverte et toutes les questions, commentaires et recommandations sont bienvenus sur notre dépôt GitHub : <https://github.com/the-turing-way/the-turing-way>.\n\n### L'équipe\n\n_The Turing Way_ est un projet de collaboration ouverte et dirigé par la communauté.\nToute personne qui contribue à ce livre, quelle que soit la taille de sa contribution, est reconnue dans ce projet comme un contributeur ou contributrice et membre de la communauté.\nLes individus qui contributent à long terme du projet sont considérés comme faisant partie des groupes de contributeurs principaux qui assument divers rôles de direction dans le projet.\n\nLe projet est coordonné par les chercheuses principales **Kirstie Whitaker** (fondatrice) et **Malvika Sharan**, et est hébergé à [The Alan Turing Institute](https://www.turing.ac.uk/). **Anne Lee Steele** est la gestionnaire de la communauté de The Turing Way depuis mars 2022.\n\nVous pouvez lire la [procédure de reconnaissance de _The Turing Way_](https://book.the-turing-way.org/community-handbook/acknowledgement/acknowledgement-members.html#community-members-contributors-and-co-authors) et le [registre des contributions](https://book.the-turing-way.org/afterword/contributors-record.html) pour savoir comment nous reconnaissons votre travail et comment nos contributeurs et nos contributrices sont mis en valeur dans le projet.\nVeuillez consulter le [Tableau des contributions](#Liste-des-personnes-qui-ont-collaboré) pour les profils GitHub de tous nos contributeurs.\n\n\n### Contribuer\n\n:construction: Ce répertoire est toujours un travail en cours et **tout le monde** est encouragé à nous aider à construire quelque chose d'utile pour le plus grand nombre possible de personnes. :construction:\n\nTout le monde doit suivre notre [code de conduite](../CODE_OF_CONDUCT.md) et consulter nos [directives de contribution](../CONTRIBUTING.md) pour plus d'informations sur la façon de commencer.\n\nNous voulons nous assurer que vous êtes à l'aise de contribruer peu importe le niveau de connaissances que vous avez.\nPour cette raison, nous proposons plusieurs points d'entrée pour que vous puissiez contribuer en fonction de vos intérêts, de votre disponibilité ou des compétences requises.\n\n![Cette image montre six des nombreux types de contributions que chacun peut apporter. Il s'agit de : Développer et partager, Maintenir et améliorer, Partager des ressources, Réviser et mettre à jour, Rendre international par la traduction, et Partager les meilleures pratiques](https://raw.githubusercontent.com/the-turing-way/the-turing-way/main/book/figures/README_imgs/README_contributions.png)\n\n*Les contributions comprennent l'élaboration et le partage de nouveaux chapitres, la maintenance et l'amélioration des chapitres existants, le partage des ressources de _The Turing Way_, la révision et la mise à jour du matériel précédemment développé, la traduction de chapitres pour aider à rendre ce projet accessible à l'échelle mondiale, et le partage des meilleures pratiques en matière de recherche*.\n\nLes membres de la communauté ont la possibilité d'acquérir de nouvelles compétences, de partager leurs idées et de collaborer avec d'autres.\nIls et elles bénéficient également d'opportunités de mentorat au sein du projet lorsqu'ils et elles apportent leurs contributions à _The Turing Way_ ou à d'autres projets open source et sont encouragés à encadrer les nouveaux membres au projet.\n\nNous avons créé un [ensemble de promotion](https://github.com/the-turing-way/the-turing-way/tree/master/communications/promotion-pack) pour vous aider à présenter et à partager _The Turing Way_ dans votre réseau.\n\n### Citer _The Turing Way_\n\nVous pouvez citer _The Turing Way_ dans les archives Zenodo du projet en utilisant le DOI : [10.5281/zenodo.3233853](https://doi.org/10.5281/zenodo.3233853).\nCe DOI est un « [DOI conceptuel](https://help.zenodo.org/) », ce qui signifie qu'il mènera toujours à la dernière version. Si vous avez besoin de citer une version spécifique, vous pouvez trouver ces DOI sur la page zenodo ci-dessus. Les DOI nous permettent d'archiver le répertoire et ils sont vraiment précieux pour garantir que le travail est cité dans les publications universitaires.\n\nLa citation ressemblera à quelque chose comme ceci :\n\n> The Turing Way Community. (2021, November 10). The Turing Way: A handbook for reproducible, ethical and collaborative research. Zenodo. [http://doi.org/10.5281/zenodo.3233853](http://doi.org/10.5281/zenodo.3233853)\n\nPour voir comment nous procédons pour créer différentes versions, ou pour suggérer des améliorations, veuillez consulter ce [document de référence sur les versions](./release-workflow.md).\n\nVous pouvez également partager l'URL d'une page du livre, par exemple <https://book.the-turing-way.org/reproducible-research/overview/overview-definitions.html>, mais sachez que le projet est en cours de développement et que ces liens peuvent donc changer au fil du temps.\nVous pourriez vouloir inclure un lien d'archive web tel que <https://web.archive.org/web/20191030093753/https://book.the-turing-way.org/reproducibility/03/definitions.html> pour vous assurer que vous ne vous retrouvez pas avec des liens cassés partout !\n\nNous apprécions vraiment toutes les références que vous faites au projet _The Turing Way_ dans votre réseau et nous espérons qu'il sera utile.\nSi vous avez des questions, n'hésitez pas à nous [contacter](#entrer-en-contact).\n\n### Citer les illustrations de _The Turing Way_ (en anglais)\n<p align=\"center\">\n  <img src=\"https://raw.githubusercontent.com/the-turing-way/the-turing-way/main/book/figures/evolution-open-research.jpg\" alt=\"Voici un exemple d'une des illustrations du Chemin de Turing. Elle tente de montrer l'évolution vers une ère de science ouverte\" width=\"600\">.\n</p>\n\nLes illustrations de _The Turing Way_ sont créées par des artistes de [Scriberia](https://www.scriberia.co.uk/) dans le cadre de [_The Turing Way_ book dashes](https://github.com/the-turing-way/the-turing-way/tree/master/workshops/book-dash) à Manchester le 17 mai 2019, à Londres le 28 mai 2019 et le 21 février 2020, et en ligne le 27 novembre 2020 et le 28 mai 2021.\nElles illustrent divers contenus du manuel, des efforts de collaboration au sein de la communauté et du projet _The Turing Way_ en général.\nCes illustrations sont disponibles sur Zenodo ([https://doi.org/10.5281/zenodo.3332807)](https://doi.org/10.5281/zenodo.3332807) sous une licence CC-BY.\n\nLorsque vous utilisez l'une de ces images, veuillez inclure l'attribution suivante :\n\n> Cette image a été créée par Scriberia pour la communauté du _The Turing Way_ et est utilisée sous une licence CC-BY.\n\nLa dernière version de Zenodo peut être citée comme suit :\n\n> The Turing Way Community, & Scriberia. (2021, May 29). Illustrations from the Turing Way book dashes. Zenodo. https://doi.org/10.5281/zenodo.4906004\n\nNous avons utilisé quelques-unes de ces illustrations dans les réponses du [Welcome Bot](https://github.com/apps/welcome) aux contributions des nouveaux membres dans ce répertoire GitHub.\n\n### Entrer en Contact\n\n#### Courriel\n\nVous pouvez contacter l'équipe de *The Turing Way* en envoyant un courriel à [theturingway@gmail.com](mailto:theturingway@gmail.com).\n\nVous pouvez également contacter **Anne Lee Steele** ([asteele@turing.ac.uk](mailto:asteele@turing.ac.uk)), **Malvika Sharan** ([msharan@turing.ac.uk](mailto:msharan@turing.ac.uk)) ou **Kirstie Whitaker** ([kwhitaker@turing.ac.uk](mailto:kwhitaker@turing.ac.uk)).\n\n#### Discussion\n\nRejoignez les autres membres et discutez de vos idées sur Slack en utilisant [ce lien d'invitation](https://join.slack.com/t/theturingway/shared_invite/zt-2v7euwuo7-BYstHdKuTNd1ce0puDtBxA).\n\nNous avons également une salle de chat Gitter (si vous préférez une alternative open source pour discuter) et nous aimerions que vous passiez nous dire bonjour sur <https://gitter.im/the-turing-way/the-turing-way>.\nLa salle est également accessible avec un compte [Matrix](https://matrix.org) sur [#alan-turing-institute_the-turing-way:gitter.im](https://matrix.to/#/#alan-turing-institute_the-turing-way:gitter.im).\n\n#### Recevoir des mises à jour\n\nNous avons une liste de diffusion *tinyletter* à laquelle nous envoyons des mises à jour mensuelles du projet.\nInscrivez-vous sur <https://buttondown.com/turingway>.\n\nVous pouvez également nous suivre sur Twitter ([@turingway](https://twitter.com/turingway)).\n\n## Contribution\n\nMerci à toutes ces merveilleuses personnes ([emoji key](https://allcontributors.org/docs/en/emoji-key)) !\n\n[Voir la version en anglais pour la liste à jour des personnes qui ont collaboré.](https://github.com/the-turing-way/the-turing-way#contributors)\n\nCe projet suit la spécification [all-contributors](https://github.com/all-contributors/all-contributors).\nLes contributions de toute nature sont les bienvenues !\n\n"
  },
  {
    "path": "README-translated/README-German.md",
    "content": "# The Turing Way\n\n[![Read the book](https://img.shields.io/badge/read-the%20book-blue.svg)](https://book.the-turing-way.org)\n[![Join our tinyletter mailing list](https://img.shields.io/badge/receive-our%20newsletter%20❤%EF%B8%8F-blueviolet.svg)](https://buttondown.com/turingway)\n[![Join the chat at https://gitter.im/the-turing-way/the-turing-way](https://img.shields.io/gitter/room/the-turing-way/the-turing-way?logo=gitter)](https://gitter.im/the-turing-way/the-turing-way)\n[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3233853.svg)](https://doi.org/10.5281/zenodo.3233853)\n[![](https://img.shields.io/static/v1?label=TuringWay&message=I%20want%20to%20contribute!&color=yellow&logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8%2F9hAAACYklEQVQ4jXXTy09TQRTH8f5VPhI1xoVxYURNAFcmRleaGDdGXQlKAYkLUARNfICoScGKpTyE3t5bkKD2AUQepUXB0gcgLTalD9rema8LKRVrT3I2k%2Fl95kwyY6BMfQiFqHaoVDlUBoJBZJl9hn8XRsIhqh0abd55tnWdrBA8WfBSpakMhUqhXUCJhKl2aLR65%2FEtLeGc%2BYoy5aHf46bX7cThctK%2BAw2HQkVAW41wzqHRMjNNRteR%2BQzGjg5udZtQ47FiO50gdLZ1nVbvPNUOFSUSxnB4sJ%2F0TjCTTjHk%2BoJl%2BRtqPEaL6zMH79Rw0dyDVVURqRgyn0EkN8jkshwZGsBQodgQyQ2kyDPsce859drjdqLRKE0D%2FZhHR5F6DpHc2B3%2FjF3BcFqxARIpBXXmt9ii67vAYDhIr8fNx0UfE3OzzC0sIHIpxNYqSPEHqFBsiFQMkU3h8vs5%2FvABTeNje6BCj%2FxcwzLlIZHYROq5v4EoIr2JyCbJ57Kobjd3u7o41v4I68pyCfTGrhSvUKHYAJD5bcTWGjKbJJdO4A8E6JyexP4rWgK8Vkb2AjK7hcxnmZybxfF9kff%2BhZJQofvXwhg7O4vAfU2l79ME79xOrjY3c9ZYVzZs8nvZf6%2BRQCRCTgiODg1iCK6vc6WtjZM1tzlRW8sNa99%2Fx64fH%2BNAQz0un49nfh%2BVmspAcKX4lKWUbMbjXOg2cf3Vy%2BLIoRWqekxc7nhB6%2FQ0lZqKJRBAyjKfKZFIcKixgVPPn3LTamFfUyPne7qp1Oz0Bn4g5d7vVAIUamJ2FqPZzCW7gvlHabBQvwE2XnlAiFRrOwAAAABJRU5ErkJggg%3D%3D)](https://github.com/the-turing-way/the-turing-way/blob/main/CONTRIBUTING.md)\n\n_The Turing Way_  ist ein Handbuch zur reproduzierbaren Data Science, das Sie hier finden können: <https://book.the-turing-way.org>.\nMomentan befinden Sie sich im GitHub Repository des Projektes. Hier werden\nalle Teile des Handbuchs gesammelt und gemeinsam weiterentwickelt.\n\nUnser Ziel ist es, Forschern (und allen Interessierten) die notwendigen Informationen zugänglich zu machen, die es ihnen ermöglichen, ein Projekt reproduzierbar durchzuführen.\n\nAlle Beteiligten, z.B. Doktoranden, PhD Studenten, Postdocs, PIs und wissenschaftliche Mitarbeiter, können zum verantwortungsvollen Umgang mit Reproduzierbarkeit beitragen. Dieses Handbuch zeigt auf, welche Aufgaben sie übernehmen können um Data Science effizienter, effektiver und leichter verständlich zu machen.\n\nInhaltsverzeichnis:\n\n- [Über das Projekt](#über-das-projekt)\n- [Das Team](#das-team)\n- [Mitarbeiten](#mitarbeiten)\n- [_The Turing Way_ zitieren](#the-turing-way-zitieren)\n- [Kontakt](#kontakt)\n- [Beitragende](#beitragende)\n\nWenn Sie eine Audio-Version als Einführung in das Projekt bevorzugen, finden\nSie [hier](https://orionopenscience.podbean.com/e/the-fair-is-in-town-figshare-the-turing-way-and-open-science-quest-at-the-osfair2019/) ein Interview mit Rachael Ainsworth, das im Rahmen der [Open Science Fair 2019](https://www.opensciencefair.eu/) in Porto aufgenommen wurde. Die Audio-Version ist aktuell leider nur auf Englisch verfügbar.\n\nDer Beitrag über _The Turing Way_ beginnt bei Minute 5:13.\n\n### Über das Projekt\n\nReproduzierbare Forschung ist unerlässlich um das Vertrauen in Wissenschaft\nund die geleistete Arbeit zu sichern.\nVerlage und Geldgeber verlangen mittlerweise auch häufig, dass die genutzen\nDaten und der Quellcode für die Leser von Publikationen verfügbar sind.\n\nZiel ist es, dass alle Ergebnisse unabhängig verifiziert werden können\nund weitere Arbeit auf ihnen aufbauen kann.\nDas ist oft aber leichter gesagt als getan.\n\nUm Forschungsergebnisse zugänglich zu machen, braucht man Kenntnisse in den Bereichen Datenverwaltung, Bibliothekswissenschaften, Software Entwicklung und Kontinuierliche Integration. Alles Dinge, die selten unterrichtet werden und häufig\nnicht von akademischen Forschern und Data Scientists erwartet werden.\n\nDeshalb ist es für Anfänger\nhäufig schwierig, einen Einstieg in das Thema Reproduzierbarkeit zu finden und ihren Teil dazu beizutragen.\n\n*The Turing Way* ist ein Handbuch, das Studierenden, ihren Betreuenden,\nFörderern von Projekten oder Verlegern den verantwortungsvollen Umgang mit Reproduzierbarkeit erleichtert - selbst wenn sie keine Vorkenntnise auf diesem Gebiet haben.\n\nDas Handbuch enthält Material zu den Themen Versionsverwaltung, Testen von Analysen und offener und transparenter Kommunikation mit zukünftigen Nutzern.\n\nDas Projekt wird öffentlich entwickelt. Fragen, Anmerkungen und Empfehlungen\nsind herzlich willkommen und können über das GitHub Repository <https://github.com/the-turing-way/the-turing-way> eingesandt werden.\n\n### Das Team\n\nDies ist ein Teil des Teams, das am Turing Institut mitarbeitet.\nFür Informationen darüber, wie man uns kontaktiert, lesen Sie bitte die [Governance Roles document](../GOVERNANCE_ROLES.md).\n\n![Team photo](book/figures/TuringWayTeam.jpg)\n\n### Mitarbeiten\n\n:construction: An diesem Repository wird kontinuierlich gearbeitet. Wir laden **alle** ein dabei mitzuhelfen, so dass das Projekt für möglichst viele hilfreich ist.\n:construction:\n\nAlle Beitragenden werden gebeten den [Verhaltenskodex](CODE_OF_CONDUCT.md) einzuhalten und die [Hinweise für Beitragende](CONTRIBUTING.md) zu lesen.\n\nWenn Sie noch wenig Erfahrung mit der Zusammenarbeit über GitHub-Projekte haben, können Sie Fallstudien und Ihre Tipps und Tricks auch über unser [Google Formular](https://goo.gl/forms/akFqZEIy2kxAjfZW2) einreichen.\n\n### _The Turing Way_ zitieren\n\nSie können _The Turing Way_ über das Zenodo Archive mit der DOI\n[10.5281/zenodo.3233853](https://doi.org/10.5281/zenodo.3233853) zitieren.\nDOIs geben uns die Möglichkeit, das Repository zu archivieren, und fördern die\nNachverfolgbarkeit der Nutzung in akademischen Veröffenlichungen.\n\nDas Zitat wird ungefähr folgendermaßen aussehen:\n\n> The Turing Way Community, Becky Arnold, Louise Bowler, Sarah Gibson, Patricia Herterich, Rosie Higman, … Kirstie Whitaker. (2019, March 25). The Turing Way: A Handbook for Reproducible Data Science (Version v0.0.4). Zenodo. <http://doi.org/10.5281/zenodo.3233986>\n\nMan kann eine Seite des Buches auch als normale Internetadresse (URL) zitieren, zum Beispiel: <https://book.the-turing-way.org/reproducibility/03/definitions.html>. Da das Projekt allerdings regelmäßig weiterentwickelt wird, kann es sein, dass sich die Links mit der Zeit verändern und eventuell irgendwann nicht mehr funktionieren oder auf eine andere Seite leiten.\n\nEs gibt die Möglichkeit einen Link zum Web-Archiv einzubinden: <https://web.archive.org/web/20191030093753/https://book.the-turing-way.org/reproducibility/03/definitions.html>, um sicherzugehen, dass man nicht überall falsche oder defekte Links hat.\n\nWir freuen uns über jede Referenz auf _The Turing Way_ und hoffen, dass Ihnen\ndas Projekt genutzt hat.\n\nWenn Sie irgendwelche Fragen haben, dann melden Sie sich bitte! [Kontakt](#kontakt).\n\n### Zitieren der _The Turing Way_ Abbildungen\n\n_The Turing Way_ Abbildungen wurden von einem Künstler von [Scriberia](https://www.scriberia.co.uk/) als Teil des [_The Turing Way_ book dashes](https://github.com/the-turing-way/the-turing-way/tree/main/workshops/book-dash) in Manchester am 17 Mai 2019, und am 28 Mai 2019 and 21 Februar 2020 in London erstellt.\n\nDie Abbildungen sind über Zenodo ([https://zenodo.org/record/3695300)](https://zenodo.org/record/3695300) unter einer CC-BY Lizenz verfügbar.\n\nWenn Sie die Abbildungen benutzen, fügen Sie bitte die folgende Zeile ein:\n> This image was created by Scriberia for The Turing Way community and is used under a CC-BY licence.\n\nDie neueste Version von Zenodo kann über:\n> The Turing Way Community, & Scriberia. (2020, March 3). Illustrations from the Turing Way book dashes. Zenodo. http://doi.org/10.5281/zenodo.3695300\nzitiert werden.\n\nWir haben ein paar der Illustrationen auch in den Antworten des [Welcome Bot](https://github.com/apps/welcome) an neue Mitwirkende des GitHub Repositories verwendet.\n\n### Kontakt\n\nEs gibt einen gitter Chat-Room und wir freuen uns immer auf neue Gesichter. <https://gitter.im/the-turing-way/the-turing-way>.\nDer Raum wird auch mit [Matrix](https://matrix.org) unter [#the-turing-way:matrix.org](https://riot.im/app/#/room/#the-turing-way:matrix.org) synchronisiert, also kann man auch dort beitreten.\n\nAußerdem gibt es unterschiedliche Mailing-Listen, über die man auf dem\nLaufenden gehalten wird.\nAnmeldung unter <https://buttondown.com/turingway>.\n\nDie Community-Managerin **Malvika Sharan** können Sie unter [msharan@turing.ac.uk](mailto:msharan@turing.ac.uk) erreichen.\nAlternativ können Sie **Kirstie Whitaker** per Mail unter [kwhitaker@turing.ac.uk](mailto:kwhitaker@turing.ac.uk) erreichen.\n\n## Beitragende\n\nEin großer Dank geht an alle, die mitgearbeitet haben ([emoji key](https://allcontributors.org/docs/en/emoji-key))\n\n[Liste der Personen, die zusammengearbeitet haben](https://github.com/the-turing-way/the-turing-way#contributors)\n\nDas Projekt folgt den [alle-Beitragenden](https://github.com/all-contributors/all-contributors) Spezifikationen.\nMitarbeit jeder Art ist immer willkommen!\n"
  },
  {
    "path": "README-translated/README-Indonesian.md",
    "content": "# The Turing Way\n\n[![Read the book](https://img.shields.io/badge/read-the%20book-blue.svg)](https://book.the-turing-way.org)\n[![Join our tinyletter mailing list](https://img.shields.io/badge/receive-our%20newsletter%20❤%EF%B8%8F-blueviolet.svg)](https://buttondown.com/turingway)\n[![Join the chat at https://gitter.im/the-turing-way/the-turing-way](https://img.shields.io/gitter/room/the-turing-way/the-turing-way?logo=gitter)](https://gitter.im/the-turing-way/the-turing-way)\n[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3233853.svg)](https://doi.org/10.5281/zenodo.3233853)\n[![](https://img.shields.io/static/v1?label=TuringWay&message=I%20want%20to%20contribute!&color=yellow&logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8%2F9hAAACYklEQVQ4jXXTy09TQRTH8f5VPhI1xoVxYURNAFcmRleaGDdGXQlKAYkLUARNfICoScGKpTyE3t5bkKD2AUQepUXB0gcgLTalD9rema8LKRVrT3I2k%2Fl95kwyY6BMfQiFqHaoVDlUBoJBZJl9hn8XRsIhqh0abd55tnWdrBA8WfBSpakMhUqhXUCJhKl2aLR65%2FEtLeGc%2BYoy5aHf46bX7cThctK%2BAw2HQkVAW41wzqHRMjNNRteR%2BQzGjg5udZtQ47FiO50gdLZ1nVbvPNUOFSUSxnB4sJ%2F0TjCTTjHk%2BoJl%2BRtqPEaL6zMH79Rw0dyDVVURqRgyn0EkN8jkshwZGsBQodgQyQ2kyDPsce859drjdqLRKE0D%2FZhHR5F6DpHc2B3%2FjF3BcFqxARIpBXXmt9ii67vAYDhIr8fNx0UfE3OzzC0sIHIpxNYqSPEHqFBsiFQMkU3h8vs5%2FvABTeNje6BCj%2FxcwzLlIZHYROq5v4EoIr2JyCbJ57Kobjd3u7o41v4I68pyCfTGrhSvUKHYAJD5bcTWGjKbJJdO4A8E6JyexP4rWgK8Vkb2AjK7hcxnmZybxfF9kff%2BhZJQofvXwhg7O4vAfU2l79ME79xOrjY3c9ZYVzZs8nvZf6%2BRQCRCTgiODg1iCK6vc6WtjZM1tzlRW8sNa99%2Fx64fH%2BNAQz0un49nfh%2BVmspAcKX4lKWUbMbjXOg2cf3Vy%2BLIoRWqekxc7nhB6%2FQ0lZqKJRBAyjKfKZFIcKixgVPPn3LTamFfUyPne7qp1Oz0Bn4g5d7vVAIUamJ2FqPZzCW7gvlHabBQvwE2XnlAiFRrOwAAAABJRU5ErkJggg%3D%3D)](https://github.com/the-turing-way/the-turing-way/blob/main/CONTRIBUTING.md)\n\n_The Turing Way_ adalah sebuah panduan ringan untuk *data science* yang dapat direproduksi.\nAnda dapat membacanya di sini: <https://book.the-turing-way.org>\nAnda saat ini sedang melihat repositori proyek GitHub tempat semua bit yang membuat panduan ini tersedia dan tempat proses penulisan/pembuatan panduan.\n\nTujuan kami adalah menyediakan semua informasi yang dibutuhkan para peneliti di awal proyek mereka untuk memastikan bahwa mereka mudah untuk mereproduksi di akhir.\n\nIni juga berarti memastikan mahasiswa PhD, postdoc, PI dan tim pendanaan mengetahui bagian mana dari \"tanggung jawab reproduktifitas\" yang dapat mereka pengaruhi, dan apa yang harus mereka lakukan untuk mendorong *data science* menjadi lebih efisien, efektif, dan dapat dipahami.\n\nDaftar Isi:\n\n- [Tentang proyek](#about-the-project)\n- [Tim](#the-team)\n- [Berkontribusi](#contributing)\n- [Mengutip _The Turing Way_](#citing-the-turing-way)\n- [Kontak](#get-in-touch)\n- [Kontributor](#contributors)\n\n🎧 Jika Anda lebih memilih audio untuk pengenalan proyek, anggota tim kami Rachael yang hadir pada [Open Science Fair 2019](https://www.opensciencefair.eu/) di Porto dan demonya direkam di [Orion podcast](https://orionopenscience.podbean.com/e/the-fair-is-in-town-figshare-the-turing-way-and-open-science-quest-at-the-osfair2019/).\nPenjelasan _The Turing Way_ mulai pada menit 5:13.\n\n### Tentang proyek\n\nPenelitian yang dapat direproduksi diperlukan untuk memastikan bahwa karya ilmiah dapat dipercaya.\nPemberi dana dan penerbit mulai mewajibkan agar publikasi menyertakan akses ke data pokok dan analisis kode.\nTujuannya adalah untuk memastikan bahwa semua hasil dapat diverifikasi dan dibangun secara independen dalam pekerjaan di masa mendatang.\nIni terkadang lebih mudah diucapkan daripada dilakukan.\nBerbagi hasil penelitian ini berarti memahami manajemen data, ilmu perpustakaan, pengembangan perangkat lunak, dan teknik integrasi berkelanjutan: keterampilan yang tidak diajarkan atau diharapkan secara luas oleh para peneliti akademis dan *data scientist*. Karena kegiatan ini tidak diajarkan secara umum, kami menyadari bahwa beban persyaratan dan perolehan keterampilan baru dapat mengintimidasi individu yang baru mengenal dunia ini.\n*The Turing Way* adalah sebuah buku pegangan untuk mendukung pelajar, pengawas pelajar, penyandang dana dan editor jurnal dalam memastikan bahwa *data science* yang dapat direproduksi \"terlalu mudah untuk tidak dilakukan\" bahkan untuk orang yang belum pernah bekerja dengan cara ini sebelumnya.\nIni akan mencakup materi pelatihan tentang *version control*, pengujian analisis, dan komunikasi terbuka dan transparan dengan para pengguna di masa mendatang, serta mengembangkan studi kasus dan lokakarya di Turing Institute.\nProyek ini dikembangkan secara terbuka dan semua pertanyaan, komentar, dan rekomendasi diterima di repositori github kami: <https://github.com/the-turing-way/the-turing-way>.\n\n### Tim\n\nIni adalah (bagian dari) tim proyek yang sedang merencanakan pekerjaan di Turing Institute.\nUntuk lebih lanjut tentang cara menghubungi kami, lihat [Governance Roles document](../GOVERNANCE_ROLES.md).\n\n### Berkontribusi\n\n:construction: Repositori ini selalu dalam pengerjaan dan **setiap orang** dianjurkan untuk membantu kami membangun sesuatu yang berguna bagi banyak orang. :construction:\n\nSetiap orang diminta untuk mengikuti [code of conduct](CODE_OF_CONDUCT.md) kami dan memeriksa [contributing guidelines](CONTRIBUTING.md) kami guna informasi lebih lanjut tentang cara memulai.\n\nJika Anda tidak terbiasa atau tidak percaya diri berkontribusi di GitHub, Anda juga dapat berkontribusi studi kasus serta tips dan trik Anda melalui [Google submission form](https://goo.gl/forms/akFqZEIy2kxAjfZW2).\n\n### Mengutip _The Turing Way_\n\nAnda dapat mereferensikan _The Turing Way_ melalui arsip proyek Zenodo menggunakan DOI: [10.5281/zenodo.3233853](https://doi.org/10.5281/zenodo.3233853).\nDOI mengizinkan kita untuk mengarsipkan repositori dan DOI sangat bernilai untuk memastikan bahwa pekerjaan dilacak dalam publikasi akademis.\n\nKutipan akan terlihat seperti ini:\n\n> The Turing Way Community, Becky Arnold, Louise Bowler, Sarah Gibson, Patricia Herterich, Rosie Higman, … Kirstie Whitaker. (2019, March 25). The Turing Way: A Handbook for Reproducible Data Science (Version v0.0.4). Zenodo. <http://doi.org/10.5281/zenodo.3233986>\n\nAnda juga dapat membagikan URL yang dapat dibaca manusia ke sebuah halaman di buku, misalnya: <https://book.the-turing-way.org/reproducibility/03/definitions.html>, tetapi ketahuilah bahwa proyek sedang dalam pengembangan dan oleh karena itu tautan ini dapat berubah seiring waktu.\nAnda mungkin ingin memasukkan sebuah tautan arsip web seperti: <https://web.archive.org/web/20191030093753/https://book.the-turing-way.org/reproducibility/03/definitions.html> untuk memastikan bahwa Anda tidak berakhir dengan tautan rusak di mana-mana!\n\nKami sangat menghargai setiap referensi yang Anda buat untuk proyek _The Turing Way_ dan kami berharap semoga ini bermanfaat.\nJika Anda memiliki pertanyaan silakan [get in touch](#get-in-touch).\n\n### Mengutip ilustrasi _The Turing Way_\n\nIlustrasi _The Turing Way_ dibuat oleh para seniman dari [Scriberia](https://www.scriberia.co.uk/) bagian dari [_The Turing Way_ book dashes](https://github.com/the-turing-way/the-turing-way/tree/main/workshops/book-dash) di Manchester pada 17 Mei 2019, dan London pada 28 Mei 2019 dan 21 Februari 2020.\nMereka menggambarkan berbagai konten dari buku pegangan, upaya kolaboratif dalam komunitas dan proyek _The Turing Way_ secara umum.\nIlustrasi ini tersedia di Zenodo ([https://zenodo.org/record/3695300)](https://zenodo.org/record/3695300) di bawah lisensi CC-BY.\n\nSaat menggunakan salah satu gambar, harap sertakan atribusi berikut:\n> This image was created by Scriberia for The Turing Way community and is used under a CC-BY licence.\n\nVersi terbaru dari Zenodo dapat dikutip seperti:\n> The Turing Way Community, & Scriberia. (2020, March 3). Illustrations from the Turing Way book dashes. Zenodo. http://doi.org/10.5281/zenodo.3695300\n\nKami telah menggunakan beberapa ilustrasi ini pada tanggapan [Welcome Bot](https://github.com/apps/welcome) terhadap kontribusi anggota baru di repositori GitHub ini.\n\n### Kontak\n\nKami memiliki ruang obrolan gitter dan kami ingin Anda mampir untuk menyapa di <https://gitter.im/the-turing-way/the-turing-way>.\nRuangan itu juga disinkronkan dengan [Matrix](https://matrix.org) di [#the-turing-way:matrix.org](https://riot.im/app/#/room/#the-turing-way:matrix.org) dan Anda dipersilakan untuk bergabung dengan kami di sana jika Anda suka.\n\nKami juga memiliki milis kecil yang kami kirimi pembaruan proyek bulanan.\nBerlangganan di <https://buttondown.com/turingway>.\n\nAnda dapat menghubungi manajer komunitas kami **Malvika Sharan** melalui email di [msharan@turing.ac.uk](mailto:msharan@turing.ac.uk).\nAtau, Anda dapat menghubungi pemimpin investigator **Kirstie Whitaker** melalui email di [kwhitaker@turing.ac.uk](mailto:kwhitaker@turing.ac.uk).\n\n## [Kontributor](https://github.com/the-turing-way/the-turing-way/blob/main/README.md#contributors)\n\nTerima kasih untuk orang-orang yang luar biasa ini ([emoji key](https://allcontributors.org/docs/en/emoji-key)):\n\nProyek ini mengikuti spesifikasi [all-contributors](https://github.com/all-contributors/all-contributors).\nTerima Kontribusi dalam bentuk apa pun!\n"
  },
  {
    "path": "README-translated/README-Italian.md",
    "content": "<a href=\"https://book.the-turing-way.org/welcome.html\"><img src=\"/book/figures/logo/logo.jpg?raw=true)\" width=\"180\" align=\"Right\" /></a>\n\n# _The Turing Way_\n\n>_Questo README.md file è disponibile anche in Olandese ([README-Dutch](README-translated/README-Dutch.md)), Francese ([README-French.md](README-translated/README-French.md)), Tedesco ([README-German.md](README-translated/README-German.md)), Indonesiano ([README-Indonesian](README-translated/README-Indonesian.md)), Coreano ([README-Korean](README-translated/README-Korean.md)), Portoghese ([README-Portuguese](README-translated/README-Portuguese.md)), e Spagnolo ([README-Spanish](README-translated/README-Spanish.md)) (ordine alfabetico nella versione originale in Inglese)._\n\n*Contributori Totali:*\n\n| Informazioni | Links |\n| :--- | :--- |\n| **Progetto** | [![Read the book](https://img.shields.io/badge/read-the%20book-blue.svg)](https://book.the-turing-way.org) [![](https://img.shields.io/static/v1?label=TuringWay&message=I%20want%20to%20contribute!&color=yellow&logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8%2F9hAAACYklEQVQ4jXXTy09TQRTH8f5VPhI1xoVxYURNAFcmRleaGDdGXQlKAYkLUARNfICoScGKpTyE3t5bkKD2AUQepUXB0gcgLTalD9rema8LKRVrT3I2k%2Fl95kwyY6BMfQiFqHaoVDlUBoJBZJl9hn8XRsIhqh0abd55tnWdrBA8WfBSpakMhUqhXUCJhKl2aLR65%2FEtLeGc%2BYoy5aHf46bX7cThctK%2BAw2HQkVAW41wzqHRMjNNRteR%2BQzGjg5udZtQ47FiO50gdLZ1nVbvPNUOFSUSxnB4sJ%2F0TjCTTjHk%2BoJl%2BRtqPEaL6zMH79Rw0dyDVVURqRgyn0EkN8jkshwZGsBQodgQyQ2kyDPsce859drjdqLRKE0D%2FZhHR5F6DpHc2B3%2FjF3BcFqxARIpBXXmt9ii67vAYDhIr8fNx0UfE3OzzC0sIHIpxNYqSPEHqFBsiFQMkU3h8vs5%2FvABTeNje6BCj%2FxcwzLlIZHYROq5v4EoIr2JyCbJ57Kobjd3u7o41v4I68pyCfTGrhSvUKHYAJD5bcTWGjKbJJdO4A8E6JyexP4rWgK8Vkb2AjK7hcxnmZybxfF9kff%2BhZJQofvXwhg7O4vAfU2l79ME79xOrjY3c9ZYVzZs8nvZf6%2BRQCRCTgiODg1iCK6vc6WtjZM1tzlRW8sNa99%2Fx64fH%2BNAQz0un49nfh%2BVmspAcKX4lKWUbMbjXOg2cf3Vy%2BLIoRWqekxc7nhB6%2FQ0lZqKJRBAyjKfKZFIcKixgVPPn3LTamFfUyPne7qp1Oz0Bn4g5d7vVAIUamJ2FqPZzCW7gvlHabBQvwE2XnlAiFRrOwAAAABJRU5ErkJggg%3D%3D)](https://github.com/the-turing-way/the-turing-way/blob/main/CONTRIBUTING.md) |\n| **News** | [![Twitter Follow](https://img.shields.io/twitter/follow/turingway?style=social)](https://twitter.com/turingway) [![Join our tinyletter mailing list](https://img.shields.io/badge/receive-our%20newsletter%20❤%EF%B8%8F-blueviolet.svg)](https://buttondown.com/turingway)  [![YouTube Channel Views](https://img.shields.io/youtube/channel/views/UCPDxZv5BMzAw0mPobCbMNuA?style=social)](https://www.youtube.com/channel/UCPDxZv5BMzAw0mPobCbMNuA)  |\n| **Chat** | [![Join Slack](https://img.shields.io/badge/Chat-on%20Slack-ff69b4)](https://join.slack.com/t/theturingway/shared_invite/zt-2v7euwuo7-BYstHdKuTNd1ce0puDtBxA) [![GitHub issues](https://img.shields.io/github/issues/the-turing-way/the-turing-way)](https://github.com/the-turing-way/the-turing-way/issues) [![GitHub pull requests](https://img.shields.io/github/issues-pr/the-turing-way/the-turing-way)](https://github.com/the-turing-way/the-turing-way/pulls) |\n| **Build** | [![Netlify build](https://github.com/the-turing-way/the-turing-way/workflows/CI/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3ACI+branch%3Amain) [![Latin Phrases](https://github.com/the-turing-way/the-turing-way/workflows/Check%20for%20Latin%20Phrases/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3A%22Check+for+Latin+Phrases%22+branch%3Amain) [![TestFileSizes](https://github.com/the-turing-way/the-turing-way/workflows/TestFileSizes/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3ATestFileSizes+branch%3Amain) [![Check for Lorem Ipsums](https://github.com/the-turing-way/the-turing-way/workflows/Check%20for%20Lorem%20Ipsums/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3A%22Check+for+Lorem+Ipsums%22+branch%3Amain) |\n| **Cita** |  [![Cite this using DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3233853.svg)](https://doi.org/10.5281/zenodo.3233853) |\n\n\n_Benvenuti nel GitHub repository per The Turing Way. Qui è dove tutte le parti del progetto vengono sviluppate, riviste e tenute aggiornate._\n\n_The Turing Way_ è una guida per condurre data science in maniera riproducibile, etica e collaborativa. Coinvolgiamo e sosteniamo una comunità eterogenea di contributori in modo da rendere data science accessibile, comprensibile ed efficace per tutti. Il nostro obiettivo è quello di fornire tutte le informazioni di cui i ricercatori e i data scientists (che siano in ambito accademico, industriale o nel settore pubblico) hanno bisogno all'inizio dei loro progetti in modo che questi siano poi facili da riprodurre.\n\n[![The Turing Way project è un libro, una comunità, un progetto open-source e una cultura collaborativa. Questo è illustrato in quattro figure. La prima mostra il libro \"the Turing Way\", la seconda spiega come la comunità può crescere, la terza figura rappresenta due persone che collaborano per una pull request, l'ultima illustra l'equilibrio dove la reproducibilità è considerata più importante del numero di articoli pubblicati.](/book/figures/README_imgs/README_turingway.png)](https://docs.google.com/presentation/d/13Nm8LcRW87ffxEugGEs5j6HKQEvhiuH8b7MfIdX7MpI/edit#slide=id.p1).\n\n*The Turing Way è un libro, una comunità e una collaborazione globale.*\n\nTutte le parti interessate, tra cui studenti, ricercatori, software engineers, capi progetto e team di finanziamento, sono incoraggiati a usare _The Turing Way_ per capire i propri ruoli e responsabilità nella riproducibilità in data science. \nPuoi leggere il libro [online](https://github.com/the-turing-way/the-turing-way), contribuire al progetto come dettagliato in [questa guida](/CONTRIBUTING.md) e riusare tutti i materiali (controlla la [licenza](https://github.com/the-turing-way/the-turing-way/blob/main/LICENSE.md)).\n\n[![Questo è uno screenshot del libro online. Mostra una delle illustrazioni all'inizio del libro. In questa figura, c'è una strada dove ci sono negozi per le varie data science skills. I clienti, con il loro carrello, possono entrare e uscire a loro piacimento e scegliere ciò che gli serve.](/book/figures/README_imgs/README_book.png)](https://book.the-turing-way.org/welcome.html)\n\n*Screenshot del libro The Turing Way online ([usa questa immagine in una presentazione](https://drive.google.com/file/d/1wJR664YECSc8b_RSHeyVjDlHs-Ls9lkc/view?usp=sharing))*\n\nIl libro _The Turing Way_ è iniziato come una guida con un taglio deciso nel 2019 e si è gradualmente trasformato in una serie di guide su Ricerca Riproducibile, Design di Progetti, Comunicazione, Collaborazione e Ricerca Etica.\nOgni guida comprende capitoli su diversi argomenti e include le migliori pratiche da adottare, indicazioni e raccomandazioni.\nQuesti capitoli sono stati scritti in collaborazione con studenti, ricercatori, educatori, ledear della comunità, politici e professionisti con background eterogeneo, esperienze vissute e conoscenze di settore.\n\n***La nostra chimera è di rendere la reproducibilità \"troppo facile da non fare\".***\n\n**Indice:**\n\n- [Il Progetto](#il-progetto)\n- [Il Team](#il-team)\n- [Come Contribuire](#come-contribuire)\n- [Citare _The Turing Way_](#citare-the-turing-way)\n- [Citare le immagini di _The Turing Way_](#citare-le-immagini-di-the-turing-way)\n- [Contattaci](#contattaci)\n- [Collaboratori](#collaboratori)\n\n🎧 Se preferisci un'introduzione audio al progetto, Rachael ha partecipato all'[Open Science Fair 2019](https://www.opensciencefair.eu/) (Porto, Portogallo) e la sua presentazione è disponibile su [Orion podcast](https://orionopenscience.podbean.com/e/the-fair-is-in-town-figshare-the-turing-way-and-open-science-quest-at-the-osfair2019/).\nUna panoramica di _The Turing Way_ inizia al minuto 5:13 (in Inglese).\n\n### Il Progetto\n\nLa riproducibilità della ricerca è necessaria per garantire l'affidabilità del lavoro scientifico.\nFinanziatori ed editori richiedono sempre più spesso che le pubblicazioni includano l'accesso ai dati grezzi ed al codice sorgente.\nL'obiettivo è quello di garantire che tutti i risultati siano verificabili in maniera indipendente e possano essere usati come punto di partenza in lavori futuri.\nTutto questo a volte è più facile a dirsi che a farsi.\nCondividere i risultati della ricerca significa comprendere la gestione dei dati, lo sviluppo del software, le scienze bibliografiche e le tecniche di integrazione continua: competenze che non sono ben spiegate o richieste ad accademici e data scientist. Non essendo queste materie comunemente insegnate, riconosciamo che il numero di requisiti e nuove competenze richieste possano essere un problema per i neofiti.\n_The Turing Way_ è un manuale per aiutare gli studenti, i loro supervisori, finanziatori ed editori a rendere la riproducibilità in data science \"troppo facile da non fare\", anche per coloro che non hanno mai lavorato in questo modo.\nIl manuale comprende materiale di formazione sul version control, test di analisi e comunicazione aperta e trasparente con i nuovi utenti e si baserà su casi di studio e workshop del Turing Institute.\nQuesto progetto è sviluppato in maniera aperta e nel nostro repository GitHub sono benvenuti suggerimenti, domande e commenti: <https://github.com/the-turing-way/the-turing-way>.\n\n### Il Team\n\n_The Turing Way_ è una collaborazione aperta e guidata dalla comunità. Chiunque partecipi a questo libro, indipendentemente dall'importanza del contributo, è riconosciuto in questo progetto come contributore e membro della comunità. Collaboratori di lunga data sono considerati come collaboratori principali ed hanno ruoli di leadership all'interno del progetto.\nIl progetto è coordinato da **Kirstie Whitaker** (founder) e **Malvika Sharan** (community developer) ed è ospitato dal [The Alan Turing Institute](https://www.turing.ac.uk/).\n\nPer maggiori informazioni, puoi leggere [questa guida](https://book.the-turing-way.org/community-handbook/acknowledgement/acknowledgement-members.html#community-members-contributors-and-co-authors) e la [Lista dei Contributori](https://book.the-turing-way.org/afterword/contributors-record.html) per capire come riconosciamo il tuo lavoro e come i nostri contributori sono messi in evidenza nel progetto.\n\nConsulta [l'elenco dei collaboratori](#contributors) per i profili GitHub di tutti i contributori.\n\n### Come Contribuire\n\n:construction: Questo repository è sempre in costruzione e **tutti** sono incoraggiati ad aiutarci in questo progetto che può essere utile a molti. :construction:\n\nTutti sono tenuti a seguire il nostro [codice di condotta](CODE_OF_CONDUCT.md) e a leggere le nostre [linee guida](CONTRIBUTING.md) per avere più informazioni su come iniziare.\nVogliamo rendere la contribuzione a questo progetto il più facile possibile.\nPer questo motivo, ci sono diversi modi in cui è possibile contribuire in base ai propri interessi, disponibilità e capacità.\n\n![Questa immagine mostra sei dei diversi modi in cui chiunque può contribuire. Questi sono: sviluppare e condividere, mantenere e migliorare, condividere risorse, revisionare e aggiornare, rendere il progetto globale attraverso la traduzione, e condividere le migliori pratiche.](/book/figures/README_imgs/README_contributions.png)\n\n*Tra i modi di contribuire ci sono anche lo sviluppo e la condivisione di nuovi capitoli, la manutenzione e il miglioramento dei capitoli esistenti, la condivisione delle risorse de _The Turing Way_, la revisione e l'aggiornamento del materiale, la traduzione dei capitoli per rendere questo progetto accessibile globalmente, la condivisione delle miglior pratiche nell'amito della ricerca.*\n\nAi membri della comunità vengono date opportunità per imparare nuove abilità, condividere le proprie idee e collaborare con altri.\nQuesta comunità rende possibile per i propri membri, e li incoraggia, a fare da guida per contribuzioni a The Turing way e ad altri progetti open source.\n\nAbbiamo creato un [promotion pack](https://github.com/the-turing-way/the-turing-way/tree/main/communications/promotion-pack) per aiutarti a presentare e condividere _The Turing Way_.\n\n### Citare _The Turing Way_\n\nPuoi citare _The Turing Way_ attraverso l'archivio del progetto Zenodo usando il DOI: [10.5281/zenodo.3233853](https://doi.org/10.5281/zenodo.3233853).\nIl DOI (digital object identifier) ci permette di archiviare i repository ed è molto utile per garantire che il lavoro venga tracciato nelle pubblicazioni accademiche.\n\nCome apparirà la citazione:\n\n> The Turing Way Community, Becky Arnold, Louise Bowler, Sarah Gibson, Patricia Herterich, Rosie Higman, … Kirstie Whitaker. (2019, March 25). The Turing Way: A Handbook for Reproducible Data Science (Version v0.0.4). Zenodo. <http://doi.org/10.5281/zenodo.3233986>\n\nPuoi anche condividere una pagina del manuale usando un URL leggibile, per esempio: <https://book.the-turing-way.org/reproducibility/03/definitions.html>, ma ricorda che il progetto è in via di sviluppo e perciò i link potrebbero cambiare nel tempo.\nPotresti includere un link del web archive, ad esempio: <https://web.archive.org/web/20191030093753/https://book.the-turing-way.org/reproducibility/03/definitions.html> per essere sicuro di non ritrovarti ovunque con collegamenti obsoleti (broken links)!\n\nApprezziamo molto qualsiasi tipo di riferimento al progetto _The Turing Way_ .\nSe hai ancora dei dubbi o delle domande [contattaci](#get-in-touch).\n\n### Citare le immagini di _The Turing Way_\n\nLe illustrazioni su _The Turing Way_ sono state create da artisti di [Scriberia](https://www.scriberia.co.uk/) durante i [_The Turing Way_ book dashes](https://github.com/the-turing-way/the-turing-way/tree/main/workshops/book-dash) il 17 maggio 2019 a Manchester ed il 28 maggio 2019 e il 21 febbraio 2020 a Londra.\nDescrivono una varietà di contenuti del manuale, gli sforzi collaborativi della community e il progetto _The Turing Way_ in generale.\n\nLe illustrazioni sono disponibili su Zenodo ([https://zenodo.org/record/3695300)](https://zenodo.org/record/3695300) sotto licenza CC-BY.\n\nSe utilizzi le immagini, includi la seguente attribuzione:\n\n> This image was created by Scriberia for The Turing Way community and is used under a CC-BY licence.\n\nL'ultima versione di Zenodo può essere menzionata come:\n\n> The Turing Way Community, & Scriberia. (2020, March 3). Illustrations from the Turing Way book dashes. Zenodo. http://doi.org/10.5281/zenodo.3695300\n\nAbbiamo utilizzato alcune di queste immagini nelle risposte del [Welcome Bot](https://github.com/apps/welcome) ai contributi dei nuovi membri nel nostro repository su GitHub.\n\n### Contattaci\n\n(In inglese)\n\n#### Email\n\nPuoi contattare il team *The Turing Way* scrivendo a [theturingway@gmail.com](mailto:theturingway@gmail.com).\n\nIn alternativa, puoi contattare **Malvika Sharan** tramite [msharan@turing.ac.uk](mailto:msharan@turing.ac.uk) oppure **Kirstie Whitaker** scrivendo a [kwhitaker@turing.ac.uk](mailto:kwhitaker@turing.ac.uk).\n\n#### Chat\n\nDiscuti le tue idee e connetti con altri su Slack usando [questo invito](https://join.slack.com/t/theturingway/shared_invite/zt-2v7euwuo7-BYstHdKuTNd1ce0puDtBxA).\n\nAbbiamo una chat room su Gitter (se preferisci un'alternativa open source) e ci farebbe piacere se passassi a salutarci a <https://gitter.im/the-turing-way/the-turing-way>.\nLa chat room è sincronizzata con [Matrix](https://matrix.org) su [#the-turing-way:matrix.org](https://riot.im/app/#/room/#the-turing-way:matrix.org) e puoi raggiungerci anche qui se preferisci.\n\n#### Receive Updates\n\nAbbiamo anche una mailing list su *tinyletter* con la quale inviamo aggiornamenti mensili sul progetto.\nIscriviti a questo link <https://buttondown.com/turingway>.\n\nPuoi anche seguirci su Twitter ([@turingway](https://twitter.com/turingway)).\n\n## Collaboratori\n\nVorremmo ringraziare queste persone meravigliose ([emoji key](https://allcontributors.org/docs/en/emoji-key)):\n\n[Elenco di persone che hanno collaborato](https://github.com/the-turing-way/the-turing-way#contributors)\n\nQuesto progetto segue le specifiche riportate su [all-contributors](https://github.com/all-contributors/all-contributors).\nOgni tipo di contributo è gradito!\n"
  },
  {
    "path": "README-translated/README-Korean.md",
    "content": "<a href=\"https://book.the-turing-way.org/welcome.html\"><img src=\"book/figures/logo/logo.jpg?raw=true)\" width=\"180\" align=\"Right\" /></a>\n\n# _The Turing Way_\n[![Read the book](https://img.shields.io/badge/read-the%20book-blue.svg)](https://book.the-turing-way.org)\n[![Join our tinyletter mailing list](https://img.shields.io/badge/receive-our%20newsletter%20❤%EF%B8%8F-blueviolet.svg)](https://buttondown.com/turingway)\n[![Join the chat at https://gitter.im/the-turing-way/the-turing-way](https://img.shields.io/gitter/room/the-turing-way/the-turing-way?logo=gitter)](https://gitter.im/the-turing-way/the-turing-way)\n[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3233853.svg)](https://doi.org/10.5281/zenodo.3233853)\n[![](https://img.shields.io/static/v1?label=TuringWay&message=I%20want%20to%20contribute!&color=yellow&logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8%2F9hAAACYklEQVQ4jXXTy09TQRTH8f5VPhI1xoVxYURNAFcmRleaGDdGXQlKAYkLUARNfICoScGKpTyE3t5bkKD2AUQepUXB0gcgLTalD9rema8LKRVrT3I2k%2Fl95kwyY6BMfQiFqHaoVDlUBoJBZJl9hn8XRsIhqh0abd55tnWdrBA8WfBSpakMhUqhXUCJhKl2aLR65%2FEtLeGc%2BYoy5aHf46bX7cThctK%2BAw2HQkVAW41wzqHRMjNNRteR%2BQzGjg5udZtQ47FiO50gdLZ1nVbvPNUOFSUSxnB4sJ%2F0TjCTTjHk%2BoJl%2BRtqPEaL6zMH79Rw0dyDVVURqRgyn0EkN8jkshwZGsBQodgQyQ2kyDPsce859drjdqLRKE0D%2FZhHR5F6DpHc2B3%2FjF3BcFqxARIpBXXmt9ii67vAYDhIr8fNx0UfE3OzzC0sIHIpxNYqSPEHqFBsiFQMkU3h8vs5%2FvABTeNje6BCj%2FxcwzLlIZHYROq5v4EoIr2JyCbJ57Kobjd3u7o41v4I68pyCfTGrhSvUKHYAJD5bcTWGjKbJJdO4A8E6JyexP4rWgK8Vkb2AjK7hcxnmZybxfF9kff%2BhZJQofvXwhg7O4vAfU2l79ME79xOrjY3c9ZYVzZs8nvZf6%2BRQCRCTgiODg1iCK6vc6WtjZM1tzlRW8sNa99%2Fx64fH%2BNAQz0un49nfh%2BVmspAcKX4lKWUbMbjXOg2cf3Vy%2BLIoRWqekxc7nhB6%2FQ0lZqKJRBAyjKfKZFIcKixgVPPn3LTamFfUyPne7qp1Oz0Bn4g5d7vVAIUamJ2FqPZzCW7gvlHabBQvwE2XnlAiFRrOwAAAABJRU5ErkJggg%3D%3D)](https://github.com/the-turing-way/the-turing-way/blob/main/CONTRIBUTING.md)\n\n>_이 README.md 파일은 네덜란드어(README-Dutch), 프랑스어(README-French.md), 독일어(README-German.md), 인도네시아어(README-Indonesian), 이탈리아어(README-Italian), 한국어(README-Korean), 포르투갈어(README-Portuguese), 스페인어(README-Spanish)로도 제공됩니다(알파벳 순으로 나열)._\n\n*기여자:*\n\n<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->\n[![All Contributors](https://img.shields.io/badge/all_contributors-328-orange.svg)](#contributors)\n<!-- ALL-CONTRIBUTORS-BADGE:END -->\n\n| 정보 | 링크|\n| :--- | :--- |\n| **프로젝트** | [![책읽기](https://img.shields.io/badge/read-the%20book-blue.svg)](https://book.the-turing-way.org) [![](https://img.shields.io/static/v1?label=TuringWay&message=I%20want%20to%20contribute!&color=yellow&logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8%2F9hAAACYklEQVQ4jXXTy09TQRTH8f5VPhI1xoVxYURNAFcmRleaGDdGXQlKAYkLUARNfICoScGKpTyE3t5bkKD2AUQepUXB0gcgLTalD9rema8LKRVrT3I2k%2Fl95kwyY6BMfQiFqHaoVDlUBoJBZJl9hn8XRsIhqh0abd55tnWdrBA8WfBSpakMhUqhXUCJhKl2aLR65%2FEtLeGc%2BYoy5aHf46bX7cThctK%2BAw2HQkVAW41wzqHRMjNNRteR%2BQzGjg5udZtQ47FiO50gdLZ1nVbvPNUOFSUSxnB4sJ%2F0TjCTTjHk%2BoJl%2BRtqPEaL6zMH79Rw0dyDVVURqRgyn0EkN8jkshwZGsBQodgQyQ2kyDPsce859drjdqLRKE0D%2FZhHR5F6DpHc2B3%2FjF3BcFqxARIpBXXmt9ii67vAYDhIr8fNx0UfE3OzzC0sIHIpxNYqSPEHqFBsiFQMkU3h8vs5%2FvABTeNje6BCj%2FxcwzLlIZHYROq5v4EoIr2JyCbJ57Kobjd3u7o41v4I68pyCfTGrhSvUKHYAJD5bcTWGjKbJJdO4A8E6JyexP4rWgK8Vkb2AjK7hcxnmZybxfF9kff%2BhZJQofvXwhg7O4vAfU2l79ME79xOrjY3c9ZYVzZs8nvZf6%2BRQCRCTgiODg1iCK6vc6WtjZM1tzlRW8sNa99%2Fx64fH%2BNAQz0un49nfh%2BVmspAcKX4lKWUbMbjXOg2cf3Vy%2BLIoRWqekxc7nhB6%2FQ0lZqKJRBAyjKfKZFIcKixgVPPn3LTamFfUyPne7qp1Oz0Bn4g5d7vVAIUamJ2FqPZzCW7gvlHabBQvwE2XnlAiFRrOwAAAABJRU5ErkJggg%3D%3D)](https://github.com/the-turing-way/the-turing-way/blob/main/CONTRIBUTING.md) |\n| **뉴스** | [![Twitter 뉴스](https://img.shields.io/twitter/follow/turingway?style=social)](https://twitter.com/turingway) [![Join our tinyletter mailing list](https://img.shields.io/badge/receive-our%20newsletter%20❤%EF%B8%8F-blueviolet.svg)](https://tinyletter.com/TuringWay)  [![YouTube Channel Views](https://img.shields.io/youtube/channel/views/UCPDxZv5BMzAw0mPobCbMNuA?style=social)](https://www.youtube.com/channel/UCPDxZv5BMzAw0mPobCbMNuA)  |\n| **연결** | [![채널에 가입하다 Slack](https://img.shields.io/badge/Chat-on%20Slack-ff69b4)](https://join.slack.com/t/theturingway/shared_invite/zt-fn608gvb-h_ZSpoA29cCdUwR~TIqpBw) [![GitHub issues](https://img.shields.io/github/issues/the-turing-way/the-turing-way)](https://github.com/the-turing-way/the-turing-way/issues) [![GitHub pull requests](https://img.shields.io/github/issues-pr/the-turing-way/the-turing-way)](https://github.com/the-turing-way/the-turing-way/pulls) |\n| **구축** | [![Netlify 구축](https://github.com/the-turing-way/the-turing-way/workflows/CI/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3ACI+branch%3Amain) [![Latin Phrases](https://github.com/the-turing-way/the-turing-way/workflows/Check%20for%20Latin%20Phrases/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3A%22Check+for+Latin+Phrases%22+branch%3Amain) [![TestFileSizes](https://github.com/the-turing-way/the-turing-way/workflows/TestFileSizes/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3ATestFileSizes+branch%3Amain) [![Check for Lorem Ipsums](https://github.com/the-turing-way/the-turing-way/workflows/Check%20for%20Lorem%20Ipsums/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3A%22Check+for+Lorem+Ipsums%22+branch%3Amain) |\n| **사용** |  [![사용DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3233853.svg)](https://doi.org/10.5281/zenodo.3233853) |\n\n*The Turing Way 프로젝트의 GitHub 저장소에 오신 것을 환영합니다. 이곳은 프로젝트의 모든 구성 요소를 개발, 검토 및 유지 관리하는 곳입니다*\n\n_The Turing Way_ 는 재현 가능하고 윤리적이며 협력적인 데이터 과학에 대한 안내서입니다. 우리는 다양한 기여자로 구성된 커뮤니티에 참여하고 지원하여 데이터 과학이 모든 사람에게 접근 가능하고 이해하기 쉽고 효과적이도록 합니다. 우리의 목표는 학계, 산업 및 공공 부문의 연구자들과 데이터 과학자들이 프로젝트를 시작할 때 필요한 모든 정보를 제공하여 프로젝트가 끝난 후에도 쉽게 재현할 수 있도록 하는 것입니다\n\n[![The Turing Way 프로젝트는 한 권의 책, 커뮤니티, 오픈 소스 프로젝트이자 협업 문화입니다. 이는 네 가지 일러스트레이션을 통해 나타납니다. 첫 번째는 The Turing Way 책을 보여주고, 두 번째는 커뮤니티가 성장하는 모습을 보여주며, 세 번째는 두 사람이 풀 리퀘스트에서 협업하는 모습을 보여줍니다. 마지막 네 번째는 발표된 논문 수보다 재현성을 더 중요하게 평가하는 균형을 보여줍니다.](../book/figures/README_imgs/README_turingway.png)](https://docs.google.com/presentation/d/13Nm8LcRW87ffxEugGEs5j6HKQEvhiuH8b7MfIdX7MpI/edit#slide=id.p1).\n\nThe Turing Way는 한 권의 책이자 커뮤니티이며 전 세계적인 협업입니다.\n\n우리는 학생, 연구원, 소프트웨어 엔지니어, 프로젝트 매니저 및 자금 조달 팀을 포함한 모든 이해 관계자들이 데이터 과학에서의 역할과 반복 가능성에 대한 책임을 이해하기 위해 The Turing Way를 사용하도록 권장합니다. 이 책은 온라인 버전으로 읽을 수 있으며, 우리의 기여 가이드에 따라 프로젝트에 기여할 수 있습니다. 또한 모든 자료를 재사용할 수 있습니다 (라이선스 참조).\n[![이것은 온라인 The Turing Way 책의 스크린샷입니다. 또한 책의 시작 부분에 있는 The Turing Way 일러스트 중 하나를 보여줍니다. 이 일러스트에서는 다양한 데이터 과학 기술을 위한 상점이 있는 도로나 길이 있습니다. 사람들은 쇼핑 카트를 가지고 들어가 필요한 것을 골라 살 수 있습니다.](../book/figures/README_imgs/README_book.png)](https://book.the-turing-way.org/welcome.html)\n\n*The Turing Way 온라인 책의 스크린샷*\n\n2019년에 시작된 The Turing Way는 고집스러운 데이터 과학 가이드북으로 시작하여, 재현 가능한 연구, 프로젝트 디자인, 커뮤니케이션, 협업 및 윤리적 연구에 대한 일련의 가이드로 확장되었습니다. 각 가이드는 최상의 실천 방법, 지침, 조언을 다루는 다양한 주제에 대한 장들을 제공합니다. 이러한 장들은 다양한 배경, 생활 경험 및 전문 지식을 가진 학생들, 연구자들, 교육자들, 커뮤니티 리더들, 정책 입안자들 및 전문가들이 공동으로 작성했습니다.\n\n***저희 서버 목표는 재현성을 \"너무 쉽게\" 만드는 것입니다***\n\n**목차:**\n\n- [프로젝트에 대하여](#about-the-project)\n- [팀](#the-team)\n- [기여](#contributing)\n- [인용_The Turing Way_](#citing-the-turing-way)\n- [연락처](#get-in-touch)\n- [기여자](#contributors)\n\n🎧 프로젝트에 대한 오디오 소개를 원하신다면 저희 팀원 Rachael이 포르투에서 열린 [Open Science Fair 2019](https://www.opensciencefair.eu/)에서 프레젠테이션을 진행했으며 그녀의 프레젠테이션은 [Orion Podcast]에서 진행되었습니다( https://orionopenscience.podbean.com/e/the-fair-is-in-town-figshare-the-turing-way-and-open-science-quest-at-the-osfair2019/) 녹음용입니다.\n_The Turing Way_ 개요는 5분 13초에 시작됩니다.\n\n\n\n## 프로젝트 소개\n과학 연구의 신뢰성을 보장하려면 재현성 연구가 필요해요. 요즘 자금 제공자와 출판사들은 출판물에 원본 데이터와 분석 코드에 대한 접근을 포함하도록 요구하기 시작했어요. 목표는 모든 결과를 독립적으로 검증하고, 미래의 작업에 통합할 수 있게 하는 거예요.\n\n하지만 말처럼 쉽지 않죠. 이런 연구 결과를 공유한다는 건 데이터 관리, 정보 과학, 소프트웨어 개발, 그리고 지속적인 통합 기술을 이해해야 한다는 뜻이에요. 이런 기술들은 학계 연구자나 데이터 과학자들에게 널리 가르쳐지지도 않고 기대되지도 않아요. 그래서 이런 요구 사항과 새로운 기술을 처음 접하는 분들에겐 부담이 될 수 있다는 걸 알고 있어요.\n\n### 팀\n\n_The Turing Way_는 개방형 협업 및 커뮤니티 주도 프로젝트입니다.\n이 책에 기여하는 모든 사람은 규모에 상관없이 이 프로젝트의 기여자이자 커뮤니티 구성원으로 간주됩니다. 프로젝트의 장기 기여자는 핵심 기여자 그룹의 일부로 간주되며 프로젝트 내에서 다양한 리더십 역할을 담당합니다.\n\n이 프로젝트는 공동 연구 책임자인 **Kirstie Whitaker**(설립자)와 **Malvika Sharan**이 조정하고 Alan Turing Institute(https://www.turing.ac.uk/)가 지원합니다.\n**Anne Lee Steele** 2022년 3월부터 Turing Way 커뮤니티 관리자\n\n[_The Turing Way_](https://book.the-turing-way.org/community-handbook/acknowledgement/acknowledgement-members.html#community-members-contributors-and-co-authors)의 승인 프로세스를 읽어보실 수 있습니다. ) 및 [기여자 기록](https://book.the-turing-way.org/afterword/contributors-record.html)을 통해 귀하의 작업을 어떻게 인식하고 프로젝트에서 기여자를 강조하는지 알아볼 수 있습니다.\n모든 기여자의 GitHub 프로필을 보려면 [기여자](#contributors)를 참조하세요.\n\n### 기여하다\n:construction: 이 저장소는 항상 개발 중이므로 **모든 사람**이 많은 사람들에게 유용한 저장소를 만드는 데 도움을 주기를 바랍니다. :건설:\n\n프로젝트에 참여하는 모든 사람은 [행동강령](../CODE_OF_CONDUCT.md)을 준수해야 하며 시작 방법에 대한 자세한 내용은 [기여지침](../CONTRIBUTING.md) 을 확인하세요.\n우리는 기여자의 요구를 충족할 수 있기를 원합니다.\n따라서 우리는 귀하의 관심사, 가용성 또는 기술 요구 사항에 따라 귀하의 기여에 대한 여러 진입점을 제공합니다.\n\n![This image shows six of many kinds of contributions that anyone can make. These are: Develop and share, Maintain and improve, Share resources, Review and update, Make it global through translation, and Share best practices](../book/figures/README_imgs/README_contributions.png)\n\n[프로모션 정보 팩](https://github.com/the-turing-way/the-turing-way/tree/main/communications/promotion-pack)는 _The Turing Way_ 네트워크 를 소개하고 공유하는 데 도움이 됩니다.\n\n### _Turing Way_ 인용\n우리는 gitter 채팅방이 있으며  <https://gitter.im/the-turing-way/the-turing-way>에 들리는 것을 매우 반긴다. \n저 채팅방은 [#the-turing-way:matrix.org](https://riot.im/app/#/room/#the-turing-way:matrix.org)의  [Matrix](https://matrix.org)와도 동기화 되어 있으며 당신이 원한다면 우리는 언제나 참여하는 것을 환영한다.\n우리는 우리의 프로젝트가 매달 업데이트 되는 사항들을 메일로 보내주는 서비스도 진행한다.\n<https://buttondown.com/turingway>을 구독하세요.\n\n우리는 DOI를 사용하여 프로젝트의 Zenodo 아카이브를 통해 _The Turing Way_의 최신 버전을 게시했습니다: [10.5281/zenodo.3233853](https://doi.org/10.5281/zenodo.3233853). 이 DOI는 \"[개념 DOI](https://help.zenodo.org)\"이며, 이는 항상 최신 버전으로 해결된다는 의미입니다.\n특정 버전을 인용해야 하는 경우 위의 Zenodo 페이지에서 해당 DOI를 찾을 수 있습니다.\nDOI를 사용하면 리포지토리를 보관할 수 있으며 학술 출판물이 연구를 추적하는 데 필수적입니다.\n\n견적은 다음과 같아야 합니다.\n> Turing Way 커뮤니티(2021년 11월 10일). The Turing Way: 재현 가능하고 윤리적이며 공동 연구를 위한 핸드북 [http://doi.org/10.5281/zenodo.3233853](http://doi) .org/10.5281/zenodo.3233853)\n\n다양한 버전에 대해 게시된 워크플로를 검토하고 개선 사항을 제안하려면 [워크플로 문서 게시]로 이동하세요. ](./release-workflow.md).\n\n<https://book.the-turing-way.org/reproducible-research/overview/overview-definitions.html>과 같이 책의 페이지에 대한 사람이 읽을 수 있는 링크를 공유할 수 있지만 이 프로젝트에 유의하시기 바랍니다. 개발 중이므로 이러한 링크는 지속적으로 업데이트될 수 있습니다.\n<https://web.archive.org/web/20191030093753/https://book.the-turing-way.org/reproducibility/03/definitions.html>과 같은 웹 아카이브 링크를 포함하여 다음을 보장할 수 있습니다. 그것은 깨진 링크가 아닙니다!\n\n귀하의 작업에서 Turing Way 프로젝트를 참고하시면 매우 감사하겠습니다. 도움이 되기를 바랍니다. 궁금한 점이 있으시면 [문의](#get-in-touch)해 주세요.\n\n### 명언 _Turing Way_ 일러스트레이션\n![이것은 개방형 과학 시대를 향한 진화를 보여주려는 튜링 방식 삽화 중 하나의 예입니다.](../book/figures/evolution-open-research.jpg)\n\n_The Turing Way_ 일러스트레이션은 [Scriberia](https://www.scriberia.co.uk/)의 아티스트가 [_The Turing Way_ 북 대시](https://github.com/the-turing-way/)로 제작했습니다. -turing-way/tree/main/workshops/book-dash) 책은 2019년 5월 17일 맨체스터, 2019년 5월 28일, 2020년 2월 21일 런던에서 출시되며 2020년 11월 27일과 2021년 5월 28일에 온라인으로 출판되었습니다. 다양한 핸드북의 내용, 커뮤니티의 공동 노력, Turing Way 프로젝트의 전반적인 그림을 설명합니다. 이 그림은 CC-BY 라이선스에 따라 Zenodo([https://doi.org/10.5281/zenodo.3332807)](https://doi.org/10.5281/zenodo.3332807)에서 볼 수 있습니다.\n\n사진을 사용할 때 다음 속성을 포함하십시오.\n\n> 이 이미지는 The Turing Way를 위해 Scriberia에서 제작되었으며 CC-BY 라이센스에 따라 사용됩니다.\n\nZenodo의 최신 버전은 다음과 같이 인용할 수 있습니다.\n\n> Turing Way 커뮤니티 및 Screria(2021년 5월 29일). Turing Way 책 대시의 삽화. https://doi.org/10.5281/zenodo.4906004\n\n우리는 이 GitHub 저장소의 Welcome Bot에 새로운 회원 제출에 대한 응답으로 이러한 그림 중 일부를 사용합니다.\n\n### 문의하기\n#### 이메일 \n[theturingway@gmail.com](mailto:theturingway@gmail.com)으로 이메일을 보내 *The Turing Way* 팀에 연락하실 수 있습니다.\n\n**Anne Lee Steele**([asteele@turing.ac.uk](mailto:asteele@turing.ac.uk)), **Malvika Sharan**([msharan@turing.ac.uk])에게 문의하실 수도 있습니다. (mailto:msharan@turing.ac.uk)) 또는 **Kirstie Whitaker** ([kwhitaker@turing.ac.uk](mailto:kwhitaker@turing.ac.uk)).\n\n#### 채팅\n이 [초대 링크](https://join.slack.com/t/theturingway/shared_invite/zt-fn608gvb-h_ZSpoA29cCdUwR~TIqpBw)를 사용하여 Slack에서 다른 사람들과 연습하고 실제 아이디어를 토론해 보세요.\n\n나는 천국의 Gitter Travel로 가는 중입니다.\n읭읭 <https://gitter.im/the-turing-way/the-turing-way> 읭읭.\n\n방을 나가시면 바로 Matrix](https://matrix.org) 계정에 가입하시면 소식을 들으실 수 있습니다.\n\n#### 업데이트 메시지 수신\n저는 *tinyletter* 목록 중이며, 프로젝트 업데이트는 매달 보내드립니다.\n\n구독 주소: <https://tinylette.com/TuringWay>.\n\nTwitter([@turingway](https://twitter.com/turingway))에서도 우리를 팔로우할 수 있습니다.\n\n## 기부자\n정말 고마워요: 이 멋진 사람들에게 ([emoji key](https://allcontributors.org/docs/en/emoji-key)):\n\n<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->\n<!-- prettier-ignore-start -->\n<!-- markdownlint-disable -->\n<table>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/Aakash-Raj-2001\"><img src=\"https://avatars.githubusercontent.com/u/79682170?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Aakash Raj</b></sub></a><br /><a href=\"#translation-Aakash-Raj-2001\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"http://abelsiqueira.github.io\"><img src=\"https://avatars.githubusercontent.com/u/1068752?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Abel Siqueira</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aabelsiqueira\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://achintyarao.in\"><img src=\"https://avatars.githubusercontent.com/u/7623019?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Achintya Rao</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ARaoOfPhysics\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ARaoOfPhysics\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"http://www.adina-wagner.com\"><img src=\"https://avatars1.githubusercontent.com/u/29738718?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Adina Wagner</b></sub></a><br /><a href=\"#content-adswa\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://warwick.ac.uk/aditishenvi\"><img src=\"https://avatars2.githubusercontent.com/u/39489147?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Aditi Shenvi</b></sub></a><br /><a href=\"#ideas-ashenvi10\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/afzal442\"><img src=\"https://avatars.githubusercontent.com/u/11625672?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Afzal Ansari</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aafzal442\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Ago3\"><img src=\"https://avatars.githubusercontent.com/u/30800478?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Ago3</b></sub></a><br /><a href=\"#ideas-Ago3\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/Hanaffi\"><img src=\"https://avatars.githubusercontent.com/u/35642947?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Ahmed Essam</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AHanaffi\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/AidaMehonic\"><img src=\"https://avatars.githubusercontent.com/u/45169136?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Aida Mehonic</b></sub></a><br /><a href=\"#ideas-AidaMehonic\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/ahornos\"><img src=\"https://avatars0.githubusercontent.com/u/9551786?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Albert Hornos Vidal</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aahornos\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aahornos\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/aldenc\"><img src=\"https://avatars.githubusercontent.com/u/20688591?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Alden Conner</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aaldenc\" title=\"Bug reports\">🐛</a> <a href=\"#tool-aldenc\" title=\"Tools\">🔧</a></td>\n    <td align=\"center\"><a href=\"https://github.com/acocac\"><img src=\"https://avatars.githubusercontent.com/u/13321552?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Alejandro ©</b></sub></a><br /><a href=\"#content-acocac\" title=\"Content\">🖋</a> <a href=\"#ideas-acocac\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/alekszaf\"><img src=\"https://avatars.githubusercontent.com/u/15204615?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Aleksandra Zaforemska</b></sub></a><br /><a href=\"#ideas-alekszaf\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-alekszaf\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://ornithos.github.io/\"><img src=\"https://avatars3.githubusercontent.com/u/8834882?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Alex Bird</b></sub></a><br /><a href=\"#tutorial-ornithos\" title=\"Tutorials\">✅</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aornithos\" title=\"Reviewed Pull Requests\">👀</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://alexwlchan.net\"><img src=\"https://avatars0.githubusercontent.com/u/301220?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Alex Chan</b></sub></a><br /><a href=\"#ideas-alexwlchan\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://informationcake.com\"><img src=\"https://avatars3.githubusercontent.com/u/16001543?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Alex Clarke</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=informationcake\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"http://alexmorley.me\"><img src=\"https://avatars2.githubusercontent.com/u/13655521?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Alexander Morley</b></sub></a><br /><a href=\"#question-alexmorley\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aalexmorley\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#ideas-alexmorley\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=alexmorley\" title=\"Tests\">⚠️</a> <a href=\"#infra-alexmorley\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"#maintenance-alexmorley\" title=\"Maintenance\">🚧</a></td>\n    <td align=\"center\"><a href=\"http://www.saral.it\"><img src=\"https://avatars1.githubusercontent.com/u/11707417?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Ali Seyhun Saral</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=seyhunsaral\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"http://www.saral.it\"><img src=\"https://avatars.githubusercontent.com/u/82848414?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Ali Seyhun Saral</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aaseyq\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/amasud08\"><img src=\"https://avatars.githubusercontent.com/u/93528449?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Ambreen Masud</b></sub></a><br /><a href=\"#ideas-amasud08\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-amasud08\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/kir0ul\"><img src=\"https://avatars3.githubusercontent.com/u/6053592?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Andrea Pierré</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Akir0ul\" title=\"Bug reports\">🐛</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://andreasancheztapia.netlify.app/\"><img src=\"https://avatars.githubusercontent.com/u/4183062?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Andrea Sánchez-Tapia (she/her)</b></sub></a><br /><a href=\"#content-AndreaSanchezTapia\" title=\"Content\">🖋</a> <a href=\"#ideas-AndreaSanchezTapia\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/andreea-avramescu\"><img src=\"https://avatars.githubusercontent.com/u/33720256?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Andreea Avramescu</b></sub></a><br /><a href=\"#content-andreea-avramescu\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://inwaves.io\"><img src=\"https://avatars.githubusercontent.com/u/8530685?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Andrei Alexandru</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ainwaves\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ainwaves\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://scholar.google.co.uk/citations?user=o0cD2JgAAAAJ&hl=en\"><img src=\"https://avatars3.githubusercontent.com/u/26226804?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Andrew Stewart</b></sub></a><br /><a href=\"#tutorial-ajstewartlang\" title=\"Tutorials\">✅</a></td>\n    <td align=\"center\"><a href=\"http://www.linkedin.com/in/andriannobella\"><img src=\"https://avatars0.githubusercontent.com/u/57834926?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Andrian Nobella</b></sub></a><br /><a href=\"#translation-andriannobella\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"http://varlotta.xyz\"><img src=\"https://avatars3.githubusercontent.com/u/5478922?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Angelo Varlotta</b></sub></a><br /><a href=\"#translation-varlottaang\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://github.com/aniketh-varma\"><img src=\"https://avatars.githubusercontent.com/u/55805574?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Aniketh Varma</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aaniketh-varma\" title=\"Bug reports\">🐛</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/annahadji\"><img src=\"https://avatars0.githubusercontent.com/u/14828356?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Anna Hadjitofi</b></sub></a><br /><a href=\"#content-annahadji\" title=\"Content\">🖋</a> <a href=\"#translation-annahadji\" title=\"Translation\">🌍</a> <a href=\"#tutorial-annahadji\" title=\"Tutorials\">✅</a></td>\n    <td align=\"center\"><a href=\"https://www.annakrystalli.me/\"><img src=\"https://avatars1.githubusercontent.com/u/5583057?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Anna Krystalli</b></sub></a><br /><a href=\"#question-annakrystalli\" title=\"Answering Questions\">💬</a> <a href=\"#example-annakrystalli\" title=\"Examples\">💡</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aannakrystalli\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#ideas-annakrystalli\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#tutorial-annakrystalli\" title=\"Tutorials\">✅</a></td>\n    <td align=\"center\"><a href=\"https://annabelelizabethwhipp.github.io/homepage\"><img src=\"https://avatars0.githubusercontent.com/u/32568227?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Annabel Elizabeth Whipp</b></sub></a><br /><a href=\"#ideas-annabelelizabethwhipp\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://www.aleesteele.com\"><img src=\"https://avatars.githubusercontent.com/u/18509789?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Anne Lee Steele</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aaleesteele\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Arielle-Bennett\"><img src=\"https://avatars.githubusercontent.com/u/74651964?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Arielle-Bennett</b></sub></a><br /><a href=\"#ideas-Arielle-Bennett\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AArielle-Bennett\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#content-Arielle-Bennett\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://www.getmarkup.com\"><img src=\"https://avatars.githubusercontent.com/u/4941299?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Arron Lacey</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aarronlacey\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://aryanuwu.myportfolio.com/\"><img src=\"https://avatars.githubusercontent.com/u/26514224?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Aryan nath</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AAryannath\" title=\"Bug reports\">🐛</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/augustinas1\"><img src=\"https://avatars1.githubusercontent.com/u/10000223?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Augustinas Sukys</b></sub></a><br /><a href=\"#ideas-augustinas1\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://barbaravreede.com\"><img src=\"https://avatars2.githubusercontent.com/u/5747405?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Barbara Vreede</b></sub></a><br /><a href=\"#content-bvreede\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://medium.com/@batool664\"><img src=\"https://avatars1.githubusercontent.com/u/53487593?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Batool</b></sub></a><br /><a href=\"#ideas-BatoolMM\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-BatoolMM\" title=\"Content\">🖋</a> <a href=\"#translation-BatoolMM\" title=\"Translation\">🌍</a> <a href=\"#infra-BatoolMM\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ABatoolMM\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"http://beckigreen.netlify.app\"><img src=\"https://avatars.githubusercontent.com/u/77735779?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Becki Green</b></sub></a><br /><a href=\"#ideas-beckigreen\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-beckigreen\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/r-j-arnold\"><img src=\"https://avatars1.githubusercontent.com/u/20441134?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Becky Arnold</b></sub></a><br /><a href=\"#question-r-j-arnold\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=r-j-arnold\" title=\"Code\">💻</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=r-j-arnold\" title=\"Documentation\">📖</a> <a href=\"#ideas-r-j-arnold\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ar-j-arnold\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/BenjaminMummery\"><img src=\"https://avatars3.githubusercontent.com/u/46931690?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Benjamin Mummery</b></sub></a><br /><a href=\"#ideas-BenjaminMummery\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-BenjaminMummery\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/AlfAWolf140\"><img src=\"https://avatars2.githubusercontent.com/u/29063219?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Beth Montague-Hellen</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=AlfAWolf140\" title=\"Documentation\">📖</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/bouweandela\"><img src=\"https://avatars3.githubusercontent.com/u/5430937?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Bouwe Andela</b></sub></a><br /><a href=\"#content-bouweandela\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Abouweandela\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://brndnlee.me/\"><img src=\"https://avatars3.githubusercontent.com/u/39078797?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Brandon Lee</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ablee1710\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://bsipocz.github.io/\"><img src=\"https://avatars1.githubusercontent.com/u/6788290?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Brigitta Sipőcz</b></sub></a><br /><a href=\"#content-bsipocz\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/bcamino\"><img src=\"https://avatars.githubusercontent.com/u/39554331?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Bruno Camino</b></sub></a><br /><a href=\"#content-bcamino\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/callummole\"><img src=\"https://avatars1.githubusercontent.com/u/22677759?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Callum Mole</b></sub></a><br /><a href=\"#ideas-callummole\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#infra-callummole\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"#maintenance-callummole\" title=\"Maintenance\">🚧</a></td>\n    <td align=\"center\"><a href=\"http://trotts.io\"><img src=\"https://avatars3.githubusercontent.com/u/9531671?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Cameron Trotter</b></sub></a><br /><a href=\"#ideas-Trotts\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/crangelsmith\"><img src=\"https://avatars2.githubusercontent.com/u/11162074?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Camila Rangel Smith</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=crangelsmith\" title=\"Documentation\">📖</a> <a href=\"#translation-crangelsmith\" title=\"Translation\">🌍</a> <a href=\"#maintenance-crangelsmith\" title=\"Maintenance\">🚧</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/c-martinez\"><img src=\"https://avatars3.githubusercontent.com/u/7782231?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Carlos Martinez</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ac-martinez\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ac-martinez\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#content-c-martinez\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/vladoxNCL\"><img src=\"https://avatars0.githubusercontent.com/u/33488410?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Carlos Vladimiro González Zelaya</b></sub></a><br /><a href=\"#ideas-vladoxNCL\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/cassgvp\"><img src=\"https://avatars2.githubusercontent.com/u/43407869?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Cassandra Gould van Praag</b></sub></a><br /><a href=\"#ideas-cassgvp\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=cassgvp\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/cemulus\"><img src=\"https://avatars3.githubusercontent.com/u/55829938?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Cem Ulus</b></sub></a><br /><a href=\"#translation-cemulus\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://github.com/chadsgilbert\"><img src=\"https://avatars1.githubusercontent.com/u/524598?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Chad Gilbert</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Achadsgilbert\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"http://chandlerklein.com\"><img src=\"https://avatars3.githubusercontent.com/u/18371945?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Chandler Klein</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AChandlerKlein\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/illushka\"><img src=\"https://avatars1.githubusercontent.com/u/8143964?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Chanuki Illushka Seresinhe</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=illushka\" title=\"Documentation\">📖</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/watson-c\"><img src=\"https://avatars3.githubusercontent.com/u/48691807?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Charlotte Watson</b></sub></a><br /><a href=\"#ideas-watson-c\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://chrisholdgraf.com\"><img src=\"https://avatars1.githubusercontent.com/u/1839645?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Chris Holdgraf</b></sub></a><br /><a href=\"#question-choldgraf\" title=\"Answering Questions\">💬</a> <a href=\"#ideas-choldgraf\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/effigies\"><img src=\"https://avatars0.githubusercontent.com/u/83442?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Chris Markiewicz</b></sub></a><br /><a href=\"#ideas-effigies\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://ctomlinson.net\"><img src=\"https://avatars.githubusercontent.com/u/46465574?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Chris Tomlinson</b></sub></a><br /><a href=\"#ideas-tomlincr\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Chrisisour\"><img src=\"https://avatars2.githubusercontent.com/u/49248075?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Christina Hitrova</b></sub></a><br /><a href=\"#ideas-Chrisisour\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://christopherlovell.co.uk\"><img src=\"https://avatars3.githubusercontent.com/u/4648092?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Christopher Lovell</b></sub></a><br /><a href=\"#infra-christopherlovell\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n    <td align=\"center\"><a href=\"https://github.com/ClareLiggins\"><img src=\"https://avatars3.githubusercontent.com/u/47981871?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Clare Liggins</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=ClareLiggins\" title=\"Documentation\">📖</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"http://users.aber.ac.uk/cos\"><img src=\"https://avatars3.githubusercontent.com/u/1053628?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Colin Sauze</b></sub></a><br /><a href=\"#ideas-colinsauze\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-colinsauze\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://collinschwantes.github.io\"><img src=\"https://avatars.githubusercontent.com/u/6107885?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Collin Schwantes</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Acollinschwantes\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/DACNC\"><img src=\"https://avatars.githubusercontent.com/u/57093439?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>DACNC</b></sub></a><br /><a href=\"#ideas-DACNC\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-DACNC\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/DaisyParry\"><img src=\"https://avatars.githubusercontent.com/u/56261324?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>DaisyParry</b></sub></a><br /><a href=\"#content-DaisyParry\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://spot.colorado.edu/~daho1668/\"><img src=\"https://avatars3.githubusercontent.com/u/6867260?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Dan Hobley</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=SiccarPoint\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/kerchner\"><img src=\"https://avatars.githubusercontent.com/u/3451175?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Dan Kerchner</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Akerchner\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/taunsquared\"><img src=\"https://avatars1.githubusercontent.com/u/27739141?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Danbee Kim</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=taunsquared\" title=\"Documentation\">📖</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/dlintott\"><img src=\"https://avatars2.githubusercontent.com/u/4700562?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Daniel Lintott</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Adlintott\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://orcid.org/0000-0001-9488-1870\"><img src=\"https://avatars3.githubusercontent.com/u/465923?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Daniel Mietchen</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ADaniel-Mietchen\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://nordholmen.net\"><img src=\"https://avatars1.githubusercontent.com/u/1325054?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Daniel Nüst</b></sub></a><br /><a href=\"#content-nuest\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://dannygarside.co.uk\"><img src=\"https://avatars3.githubusercontent.com/u/3739866?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Danny Garside</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ada5nsy\" title=\"Bug reports\">🐛</a> <a href=\"#content-da5nsy\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ada5nsy\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/foster999\"><img src=\"https://avatars0.githubusercontent.com/u/31405412?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>David Foster</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Afoster999\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Afoster999\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://research.ncl.ac.uk/geospatial-systems/phdresearchers/profiles/davidgregg.html\"><img src=\"https://avatars.githubusercontent.com/u/45788793?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>David Gregg</b></sub></a><br /><a href=\"#ideas-davidegregg\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-davidegregg\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://www.davidstansby.com\"><img src=\"https://avatars0.githubusercontent.com/u/6197628?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>David Stansby</b></sub></a><br /><a href=\"#content-dstansby\" title=\"Content\">🖋</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/DerienFe\"><img src=\"https://avatars3.githubusercontent.com/u/55786232?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>DerienFe</b></sub></a><br /><a href=\"#ideas-DerienFe\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://www.imperial.ac.uk/quantum-photovoltaics\"><img src=\"https://avatars1.githubusercontent.com/u/6095790?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Diego Alonso Alvarez</b></sub></a><br /><a href=\"#ideas-dalonsoa\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Adalonsoa\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://dblana.github.io/\"><img src=\"https://avatars0.githubusercontent.com/u/13907429?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Dimitra Blana</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Adblana\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#content-dblana\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/dineshkumar12004\"><img src=\"https://avatars.githubusercontent.com/u/67814205?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Dinesh kumar</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Adineshkumar12004\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://www.linkedin.com/in/edwin-ajong-51601a217/\"><img src=\"https://avatars.githubusercontent.com/u/80322163?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Edwin Ajong</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aeddybruv\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"http://emalliaraki.com\"><img src=\"https://avatars3.githubusercontent.com/u/36627260?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Eirini Malliaraki</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=rockita\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/eirini-zormpa\"><img src=\"https://avatars3.githubusercontent.com/u/30151074?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Eirini Zormpa</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aeirini-zormpa\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aeirini-zormpa\" title=\"Reviewed Pull Requests\">👀</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/Elisa-on-GitHub\"><img src=\"https://avatars.githubusercontent.com/u/78543806?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Elisa-on-GitHub</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AElisa-on-GitHub\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"http://emdupre.me\"><img src=\"https://avatars3.githubusercontent.com/u/15017191?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Elizabeth DuPre</b></sub></a><br /><a href=\"#infra-emdupre\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"#question-emdupre\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aemdupre\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/EKaroune\"><img src=\"https://avatars2.githubusercontent.com/u/58147174?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Em K</b></sub></a><br /><a href=\"#content-EKaroune\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AEKaroune\" title=\"Bug reports\">🐛</a> <a href=\"#blog-EKaroune\" title=\"Blogposts\">📝</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AEKaroune\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#talk-EKaroune\" title=\"Talks\">📢</a></td>\n    <td align=\"center\"><a href=\"http://www.glerean.com\"><img src=\"https://avatars1.githubusercontent.com/u/8993301?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Enrico Glerean</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aeglerean\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/edaub\"><img src=\"https://avatars0.githubusercontent.com/u/45598892?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Eric Daub</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=edaub\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://erictleung.com\"><img src=\"https://avatars2.githubusercontent.com/u/2754821?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Eric Leung</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aerictleung\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"http://www.ericrscott.com\"><img src=\"https://avatars2.githubusercontent.com/u/25404783?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Eric R Scott</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AAariq\" title=\"Bug reports\">🐛</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/EstherPlomp\"><img src=\"https://avatars1.githubusercontent.com/u/46314469?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Esther Plomp</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AEstherPlomp\" title=\"Bug reports\">🐛</a> <a href=\"#ideas-EstherPlomp\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-EstherPlomp\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AEstherPlomp\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#talk-EstherPlomp\" title=\"Talks\">📢</a> <a href=\"#blog-EstherPlomp\" title=\"Blogposts\">📝</a> <a href=\"#translation-EstherPlomp\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"http://evelinag.com\"><img src=\"https://avatars2.githubusercontent.com/u/5541162?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Evelina Gabasova</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aevelinag\" title=\"Bug reports\">🐛</a> <a href=\"#content-evelinag\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/fdiblen\"><img src=\"https://avatars.githubusercontent.com/u/144492?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Faruk D.</b></sub></a><br /><a href=\"#content-fdiblen\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://federiconanni.com/\"><img src=\"https://avatars2.githubusercontent.com/u/8415204?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Federico Nanni</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Afedenanni\" title=\"Bug reports\">🐛</a> <a href=\"#content-fedenanni\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Afedenanni\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://www.turing.ac.uk/people/doctoral-students/ferran-gonzalez-hernandez\"><img src=\"https://avatars0.githubusercontent.com/u/43019129?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Ferran Gonzalez Hernandez</b></sub></a><br /><a href=\"#ideas-fgh95\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://asquera.de\"><img src=\"https://avatars2.githubusercontent.com/u/47542?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Florian Gilcher</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Askade\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"http://francescooper.net\"><img src=\"https://avatars3.githubusercontent.com/u/14854230?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Frances Cooper</b></sub></a><br /><a href=\"#content-fmcooper\" title=\"Content\">🖋</a> <a href=\"#ideas-fmcooper\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/FrancesMadden\"><img src=\"https://avatars3.githubusercontent.com/u/52208466?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Frances Madden</b></sub></a><br /><a href=\"#content-FrancesMadden\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Froguin99\"><img src=\"https://avatars.githubusercontent.com/u/93538632?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Froguin99</b></sub></a><br /><a href=\"#ideas-Froguin99\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-Froguin99\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://www.linkedin.com/in/fuad-reza-pahlevi-531283160/\"><img src=\"https://avatars1.githubusercontent.com/u/25898509?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Fuad Reza Pahlevi</b></sub></a><br /><a href=\"#translation-fuadreza\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://github.com/GeorgiaHCA\"><img src=\"https://avatars1.githubusercontent.com/u/46889966?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Georgia</b></sub></a><br /><a href=\"#ideas-GeorgiaHCA\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/GeorgiaA\"><img src=\"https://avatars2.githubusercontent.com/u/33513781?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Georgia Atkinson</b></sub></a><br /><a href=\"#ideas-GeorgiaA\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/georgiatomova\"><img src=\"https://avatars3.githubusercontent.com/u/17258191?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Georgia Tomova</b></sub></a><br /><a href=\"#ideas-georgiatomova\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/GeorgianaElena\"><img src=\"https://avatars0.githubusercontent.com/u/7579677?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Georgiana Elena</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AGeorgianaElena\" title=\"Reviewed Pull Requests\">👀</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"http://gertjan.dev\"><img src=\"https://avatars2.githubusercontent.com/u/3286696?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Gertjan van den Burg</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=GjjvdBurg\" title=\"Documentation\">📖</a> <a href=\"#ideas-GjjvdBurg\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#question-GjjvdBurg\" title=\"Answering Questions\">💬</a></td>\n    <td align=\"center\"><a href=\"https://github.com/giannidsp\"><img src=\"https://avatars1.githubusercontent.com/u/40976911?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Gianni Scolaro</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Agiannidsp\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://labrary.online\"><img src=\"https://avatars0.githubusercontent.com/u/237254?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Graham Lee</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aiamleeg\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aiamleeg\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"http://gkiar.github.io\"><img src=\"https://avatars3.githubusercontent.com/u/4883288?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Greg Kiar</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=gkiar\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Agkiar\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/gustavobecelli\"><img src=\"https://avatars3.githubusercontent.com/u/39573195?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Gustavo Becelli do Nacimento</b></sub></a><br /><a href=\"#translation-gustavobecelli\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://twitter.com/HeidiBaya\"><img src=\"https://avatars1.githubusercontent.com/u/14146757?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Heidi Seibold</b></sub></a><br /><a href=\"#ideas-HeidiSeibold\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-HeidiSeibold\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://www.hoang.co.uk/hieu\"><img src=\"https://avatars1.githubusercontent.com/u/691732?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Hieu Hoang</b></sub></a><br /><a href=\"#ideas-hieuhoang\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/Iain-S\"><img src=\"https://avatars.githubusercontent.com/u/25081046?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Iain</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AIain-S\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://ianhinder.net\"><img src=\"https://avatars3.githubusercontent.com/u/213274?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Ian Hinder</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=ianhinder\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://aspdenlab.weebly.com/isabel-birds.html\"><img src=\"https://avatars.githubusercontent.com/u/44876111?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>IsabelBirds</b></sub></a><br /><a href=\"#ideas-IsabelBirds\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://twitter.com/complexbrains\"><img src=\"https://avatars1.githubusercontent.com/u/45263281?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Isil Bilgin</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Acomplexbrains\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Ismael-KG\"><img src=\"https://avatars0.githubusercontent.com/u/64027166?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Ismael-KG</b></sub></a><br /><a href=\"#content-Ismael-KG\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AIsmael-KG\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#blog-Ismael-KG\" title=\"Blogposts\">📝</a> <a href=\"#ideas-Ismael-KG\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://sites.google.com/view/drjkasmireresearch/home\"><img src=\"https://avatars2.githubusercontent.com/u/1334163?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>JKasmire</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AJKasmire\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/jspickering\"><img src=\"https://avatars3.githubusercontent.com/u/28339195?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Jade Pickering</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jspickering\" title=\"Documentation\">📖</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://www.linkedin.com/in/james-kent-24666468/\"><img src=\"https://avatars0.githubusercontent.com/u/12564882?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>James Kent</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ajdkent\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"http://www.jamesmyatt.co.uk/\"><img src=\"https://avatars1.githubusercontent.com/u/1047337?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>James Myatt</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jamesmyatt\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/jemrobinson\"><img src=\"https://avatars2.githubusercontent.com/u/3502751?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>James Robinson</b></sub></a><br /><a href=\"#ideas-jemrobinson\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jemrobinson\" title=\"Code\">💻</a></td>\n    <td align=\"center\"><a href=\"https://linkedin.com/in/jatonline\"><img src=\"https://avatars.githubusercontent.com/u/48878399?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>James Thomas</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ajatonline\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/jmgate\"><img src=\"https://avatars3.githubusercontent.com/u/20327215?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Jason Gates</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jmgate\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ajmgate\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/jmoldon\"><img src=\"https://avatars2.githubusercontent.com/u/1053066?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Javier Moldon</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jmoldon\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/IIITM-Jay\"><img src=\"https://avatars2.githubusercontent.com/u/65283880?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Jay Dev Jha</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AIIITM-Jay\" title=\"Bug reports\">🐛</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"http://jending.com\"><img src=\"https://avatars.githubusercontent.com/u/5104098?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Jennifer Ding</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Adingaaling\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/ubikcan\"><img src=\"https://avatars.githubusercontent.com/u/23242626?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Jeremy Crampton</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aubikcan\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://twitter.com/jermdemo\"><img src=\"https://avatars3.githubusercontent.com/u/147991?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Jeremy Leipzig</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aleipzig\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/JessicaS11\"><img src=\"https://avatars.githubusercontent.com/u/11756442?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Jessica</b></sub></a><br /><a href=\"#content-JessicaS11\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/jessyprovencher\"><img src=\"https://avatars2.githubusercontent.com/u/70674444?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Jessy Provencher</b></sub></a><br /><a href=\"#translation-jessyprovencher\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"http://erambler.co.uk/\"><img src=\"https://avatars3.githubusercontent.com/u/457628?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Jez Cope</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jezcope\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/JiaruiWang-Jill\"><img src=\"https://avatars.githubusercontent.com/u/41178872?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Jill Wang</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AJiaruiWang-Jill\" title=\"Bug reports\">🐛</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/JimMadge\"><img src=\"https://avatars2.githubusercontent.com/u/23616154?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Jim Madge</b></sub></a><br /><a href=\"#content-JimMadge\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=JimMadge\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/JoannaLeng\"><img src=\"https://avatars1.githubusercontent.com/u/23033397?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Joanna Leng</b></sub></a><br /><a href=\"#content-JoannaLeng\" title=\"Content\">🖋</a> <a href=\"#ideas-JoannaLeng\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://www.jearly.co.uk\"><img src=\"https://avatars2.githubusercontent.com/u/7620667?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Joe Early</b></sub></a><br /><a href=\"#ideas-JAEarly\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/joe-fennell\"><img src=\"https://avatars3.githubusercontent.com/u/25105262?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Joe Fennell</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=joe-fennell\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/jbteves\"><img src=\"https://avatars3.githubusercontent.com/u/26722533?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Joshua Teves</b></sub></a><br /><a href=\"#ideas-jbteves\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://www.madrimasd.org/blogs/bioinformatica\"><img src=\"https://avatars1.githubusercontent.com/u/2072150?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>José María Fernández</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ajmfernandez\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"http://guiomarniso.com\"><img src=\"https://avatars.githubusercontent.com/u/4451818?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Julia Guiomar Niso Galán</b></sub></a><br /><a href=\"#translation-guiomar\" title=\"Translation\">🌍</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aguiomar\" title=\"Reviewed Pull Requests\">👀</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://orcid.org/0000-0002-3127-5520\"><img src=\"https://avatars2.githubusercontent.com/u/1876667?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Julien Colomb</b></sub></a><br /><a href=\"#content-jcolomb\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/kdixey\"><img src=\"https://avatars2.githubusercontent.com/u/59925972?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Katherine Dixey</b></sub></a><br /><a href=\"#ideas-kdixey\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Kelly-dot\"><img src=\"https://avatars0.githubusercontent.com/u/59481756?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Kelly-dot</b></sub></a><br /><a href=\"#ideas-Kelly-dot\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/kessonovitch\"><img src=\"https://avatars0.githubusercontent.com/u/23242159?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Kesson Magid</b></sub></a><br /><a href=\"#ideas-kessonovitch\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://kkmann.github.io/\"><img src=\"https://avatars2.githubusercontent.com/u/2482236?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Kevin Kunzmann</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=kkmann\" title=\"Documentation\">📖</a> <a href=\"#ideas-kkmann\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Akkmann\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/KimDeRuyck\"><img src=\"https://avatars1.githubusercontent.com/u/26715049?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Kim De Ruyck</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AKimDeRuyck\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/kderuyck\"><img src=\"https://avatars3.githubusercontent.com/u/74196557?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Kim De Ruyck</b></sub></a><br /><a href=\"#content-kderuyck\" title=\"Content\">🖋</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://whitakerlab.github.io\"><img src=\"https://avatars1.githubusercontent.com/u/3626306?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Kirstie Whitaker</b></sub></a><br /><a href=\"#question-KirstieJane\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=KirstieJane\" title=\"Documentation\">📖</a> <a href=\"#design-KirstieJane\" title=\"Design\">🎨</a> <a href=\"#eventOrganizing-KirstieJane\" title=\"Event Organizing\">📋</a> <a href=\"#fundingFinding-KirstieJane\" title=\"Funding Finding\">🔍</a> <a href=\"#ideas-KirstieJane\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AKirstieJane\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#talk-KirstieJane\" title=\"Talks\">📢</a></td>\n    <td align=\"center\"><a href=\"https://github.com/KristijanArmeni\"><img src=\"https://avatars3.githubusercontent.com/u/14061041?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Kristijan Armeni</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AKristijanArmeni\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://krrank.live\"><img src=\"https://avatars0.githubusercontent.com/u/44499991?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Krunal Rank</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AKRHero03\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/masonlr\"><img src=\"https://avatars2.githubusercontent.com/u/5828176?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Lachlan Mason</b></sub></a><br /><a href=\"#ideas-masonlr\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=masonlr\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=masonlr\" title=\"Code\">💻</a></td>\n    <td align=\"center\"><a href=\"http://lacion.rbind.io\"><img src=\"https://avatars3.githubusercontent.com/u/17729900?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Laura Acion</b></sub></a><br /><a href=\"#a11y-lauracion\" title=\"Accessibility\">️️️️♿️</a> <a href=\"#translation-lauracion\" title=\"Translation\">🌍</a> <a href=\"#content-lauracion\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/LauraCarter\"><img src=\"https://avatars3.githubusercontent.com/u/16853500?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Laura Carter</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ALauraCarter\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ALauraCarter\" title=\"Bug reports\">🐛</a> <a href=\"#ideas-LauraCarter\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-LauraCarter\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Karvovskaya\"><img src=\"https://avatars3.githubusercontent.com/u/44666630?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Lenka</b></sub></a><br /><a href=\"#blog-Karvovskaya\" title=\"Blogposts\">📝</a> <a href=\"#content-Karvovskaya\" title=\"Content\">🖋</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"http://csd.utexas.edu/research/hamilton-lab\"><img src=\"https://avatars2.githubusercontent.com/u/3268583?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Liberty Hamilton</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Alibertyh\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Lion-admin\"><img src=\"https://avatars.githubusercontent.com/u/72327875?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Lion-admin</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ALion-admin\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/LouiseABowler\"><img src=\"https://avatars1.githubusercontent.com/u/25640708?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Louise Bowler</b></sub></a><br /><a href=\"#question-LouiseABowler\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=LouiseABowler\" title=\"Code\">💻</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=LouiseABowler\" title=\"Documentation\">📖</a> <a href=\"#example-LouiseABowler\" title=\"Examples\">💡</a> <a href=\"#ideas-LouiseABowler\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#eventOrganizing-LouiseABowler\" title=\"Event Organizing\">📋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ALouiseABowler\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Lovkush-A\"><img src=\"https://avatars.githubusercontent.com/u/25344832?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Lovkush</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ALovkush-A\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"http://www.robots.ox.ac.uk/~luca\"><img src=\"https://avatars3.githubusercontent.com/u/3330489?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Luca Bertinetto</b></sub></a><br /><a href=\"#translation-bertinetto\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://github.com/GGn0\"><img src=\"https://avatars.githubusercontent.com/u/44038661?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Luigi Scalzone</b></sub></a><br /><a href=\"#translation-GGn0\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://www.lukeconibear.com/\"><img src=\"https://avatars.githubusercontent.com/u/19871268?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Luke Conibear</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Alukeconibear\" title=\"Bug reports\">🐛</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/perluna\"><img src=\"https://avatars.githubusercontent.com/u/47083632?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Luna</b></sub></a><br /><a href=\"#translation-perluna\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"http://laboratoria.la\"><img src=\"https://avatars0.githubusercontent.com/u/15850514?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Lupe CaMay</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aluucamay\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/malvikasharan\"><img src=\"https://avatars0.githubusercontent.com/u/5370471?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Malvika Sharan</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=malvikasharan\" title=\"Documentation\">📖</a> <a href=\"#eventOrganizing-malvikasharan\" title=\"Event Organizing\">📋</a> <a href=\"#ideas-malvikasharan\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#projectManagement-malvikasharan\" title=\"Project Management\">📆</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Amalvikasharan\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#talk-malvikasharan\" title=\"Talks\">📢</a> <a href=\"#maintenance-malvikasharan\" title=\"Maintenance\">🚧</a> <a href=\"#video-malvikasharan\" title=\"Videos\">📹</a></td>\n    <td align=\"center\"><a href=\"https://marcosellys.com\"><img src=\"https://avatars.githubusercontent.com/u/6751242?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Marcos Ellys Rocha Honorato</b></sub></a><br /><a href=\"#translation-MarcosEllys\" title=\"Translation\">🌍</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AMarcosEllys\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/MariaEriksson\"><img src=\"https://avatars1.githubusercontent.com/u/43676485?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Maria Eriksson</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AMariaEriksson\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Mariam-ke\"><img src=\"https://avatars3.githubusercontent.com/u/39956740?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Mariam-ke</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AMariam-ke\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/marianaiv\"><img src=\"https://avatars.githubusercontent.com/u/53548707?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Mariana V.</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Amarianaiv\" title=\"Bug reports\">🐛</a> <a href=\"#content-marianaiv\" title=\"Content\">🖋</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://www.turing.ac.uk/people/researchers/mariona-coll-ardanuy\"><img src=\"https://avatars.githubusercontent.com/u/46483603?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Mariona</b></sub></a><br /><a href=\"#content-mcollardanuy\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://www.imperial.ac.uk/ict/rcs\"><img src=\"https://avatars3.githubusercontent.com/u/1724545?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Mark Woodbridge</b></sub></a><br /><a href=\"#ideas-mwoodbri\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-mwoodbri\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://www.linkedin.com/in/mloning/\"><img src=\"https://avatars3.githubusercontent.com/u/21020482?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Markus Löning</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Amloning\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#content-mloning\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Marta-MM\"><img src=\"https://avatars2.githubusercontent.com/u/67780317?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Marta-MM</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AMarta-MM\" title=\"Bug reports\">🐛</a> <a href=\"#content-Marta-MM\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/martintoreilly\"><img src=\"https://avatars3.githubusercontent.com/u/21147592?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Martin O'Reilly</b></sub></a><br /><a href=\"#question-martintoreilly\" title=\"Answering Questions\">💬</a> <a href=\"#tool-martintoreilly\" title=\"Tools\">🔧</a> <a href=\"#ideas-martintoreilly\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://martinagvilas.github.io\"><img src=\"https://avatars2.githubusercontent.com/u/37339384?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Martina G. Vilas</b></sub></a><br /><a href=\"#infra-martinagvilas\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=martinagvilas\" title=\"Tests\">⚠️</a> <a href=\"#talk-martinagvilas\" title=\"Talks\">📢</a> <a href=\"#video-martinagvilas\" title=\"Videos\">📹</a> <a href=\"#tutorial-martinagvilas\" title=\"Tutorials\">✅</a></td>\n    <td align=\"center\"><a href=\"https://github.com/mkuzak\"><img src=\"https://avatars2.githubusercontent.com/u/208443?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Mateusz Kuzak</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Amkuzak\" title=\"Bug reports\">🐛</a> <a href=\"#eventOrganizing-mkuzak\" title=\"Event Organizing\">📋</a> <a href=\"#ideas-mkuzak\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Amkuzak\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#content-mkuzak\" title=\"Content\">🖋</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"http://ml-evs.science\"><img src=\"https://avatars2.githubusercontent.com/u/7916000?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Matthew Evans</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aml-evs\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://mbjoseph.github.io\"><img src=\"https://avatars3.githubusercontent.com/u/2664564?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Max Joseph</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ambjoseph\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/melibleq\"><img src=\"https://avatars.githubusercontent.com/u/16723182?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Melissa Black</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Amelibleq\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#content-melibleq\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://www.mrc-bsu.cam.ac.uk/people/in-alphabetical-order/a-to-g/michael-grayling/\"><img src=\"https://avatars2.githubusercontent.com/u/4548867?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Michael Grayling</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=mjg211\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/m-rivera\"><img src=\"https://avatars1.githubusercontent.com/u/22956181?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Miguel Rivera</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Am-rivera\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://www.linkedin.com/in/aniltuncel/\"><img src=\"https://avatars2.githubusercontent.com/u/7026020?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Mustafa Anil Tuncel</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aanilbey\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/nadiasoliman\"><img src=\"https://avatars0.githubusercontent.com/u/41086364?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Nadia Soliman</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=nadiasoliman\" title=\"Documentation\">📖</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"http://npscience.github.io\"><img src=\"https://avatars2.githubusercontent.com/u/9406530?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Naomi Penfold</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Anpscience\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#ideas-npscience\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://mednche.github.io\"><img src=\"https://avatars0.githubusercontent.com/u/24226111?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Natacha Chenevoy</b></sub></a><br /><a href=\"#ideas-mednche\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/NatalieThurlby\"><img src=\"https://avatars1.githubusercontent.com/u/17617308?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Natalie Thurlby</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=NatalieThurlby\" title=\"Code\">💻</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=NatalieThurlby\" title=\"Tests\">⚠️</a></td>\n    <td align=\"center\"><a href=\"https://github.com/nathanbegbie\"><img src=\"https://avatars0.githubusercontent.com/u/7100966?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Nathan Begbie</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Anathanbegbie\" title=\"Bug reports\">🐛</a> <a href=\"#ideas-nathanbegbie\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/nehamoopen\"><img src=\"https://avatars3.githubusercontent.com/u/37183829?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Neha Moopen</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Anehamoopen\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#content-nehamoopen\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://www.software.ac.uk\"><img src=\"https://avatars1.githubusercontent.com/u/1507151?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Neil Chue Hong</b></sub></a><br /><a href=\"#ideas-npch\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/nbarlowATI\"><img src=\"https://avatars3.githubusercontent.com/u/33832774?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Nick Barlow</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AnbarlowATI\" title=\"Bug reports\">🐛</a> <a href=\"#content-nbarlowATI\" title=\"Content\">🖋</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/NZR\"><img src=\"https://avatars3.githubusercontent.com/u/2925086?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Nico</b></sub></a><br /><a href=\"#ideas-NZR\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://orcid.org/0000-0002-6595-0969\"><img src=\"https://avatars0.githubusercontent.com/u/43151303?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Nicolás Alessandroni</b></sub></a><br /><a href=\"#ideas-nalessandroni\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/ninadicara\"><img src=\"https://avatars.githubusercontent.com/u/44364127?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Nina</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aninadicara\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/nlharris\"><img src=\"https://avatars3.githubusercontent.com/u/348704?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Nomi Harris</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Anlharris\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/NotActuallyACat\"><img src=\"https://avatars.githubusercontent.com/u/69468081?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>NotActuallyACat</b></sub></a><br /><a href=\"#ideas-NotActuallyACat\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/obisargoni\"><img src=\"https://avatars0.githubusercontent.com/u/33906525?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Obi Thompson Sargoni</b></sub></a><br /><a href=\"#ideas-obisargoni\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/OliJimbo\"><img src=\"https://avatars2.githubusercontent.com/u/16899600?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Oliver Clark</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=OliJimbo\" title=\"Documentation\">📖</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/oforrest\"><img src=\"https://avatars2.githubusercontent.com/u/49275282?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Oliver Forrest</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=oforrest\" title=\"Documentation\">📖</a> <a href=\"#ideas-oforrest\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-oforrest\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aoforrest\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/defaultobject\"><img src=\"https://avatars2.githubusercontent.com/u/1484941?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Oliver Hamelijnck</b></sub></a><br /><a href=\"#ideas-defaultobject\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/ots22\"><img src=\"https://avatars1.githubusercontent.com/u/5434836?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Oliver Strickson</b></sub></a><br /><a href=\"#question-ots22\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=ots22\" title=\"Documentation\">📖</a> <a href=\"#tutorial-ots22\" title=\"Tutorials\">✅</a></td>\n    <td align=\"center\"><a href=\"https://github.com/OscartGiles\"><img src=\"https://avatars0.githubusercontent.com/u/12784013?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Oscar Giles</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=OscartGiles\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://pabrod.github.io/\"><img src=\"https://avatars0.githubusercontent.com/u/7677614?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Pablo Rodríguez-Sánchez</b></sub></a><br /><a href=\"#content-PabRod\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/pherterich\"><img src=\"https://avatars0.githubusercontent.com/u/8457675?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Patricia Herterich</b></sub></a><br /><a href=\"#question-pherterich\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=pherterich\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Apherterich\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#ideas-pherterich\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-pherterich\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://xcorr.net\"><img src=\"https://avatars.githubusercontent.com/u/3516539?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Patrick Mineault</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Apatrickmineault\" title=\"Bug reports\">🐛</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/paulbaniqued\"><img src=\"https://avatars2.githubusercontent.com/u/47854500?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Paul Dominick Baniqued</b></sub></a><br /><a href=\"#ideas-paulbaniqued\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://www.linkedin.com/in/paulowoicho/\"><img src=\"https://avatars3.githubusercontent.com/u/28223751?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Paul Owoicho</b></sub></a><br /><a href=\"#ideas-paulowoicho\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Apaulowoicho\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Apaulowoicho\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=paulowoicho\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/orchid00\"><img src=\"https://avatars3.githubusercontent.com/u/9795785?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Paula Andrea Martinez</b></sub></a><br /><a href=\"#ideas-orchid00\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aorchid00\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://ppintosilva.com\"><img src=\"https://avatars1.githubusercontent.com/u/11331882?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Pedro Pinto da Silva</b></sub></a><br /><a href=\"#ideas-ppintosilva\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/PeterC-ATI\"><img src=\"https://avatars1.githubusercontent.com/u/55786296?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>PeterC-ATI</b></sub></a><br /><a href=\"#ideas-PeterC-ATI\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://philipdarke.com\"><img src=\"https://avatars2.githubusercontent.com/u/43066442?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Philip Darke</b></sub></a><br /><a href=\"#ideas-philipdarke\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/pc494\"><img src=\"https://avatars.githubusercontent.com/u/32455330?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Phillip Crout</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Apc494\" title=\"Bug reports\">🐛</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/Phome95\"><img src=\"https://avatars.githubusercontent.com/u/100789966?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Phome95</b></sub></a><br /><a href=\"#ideas-Phome95\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-Phome95\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://p.ier.re\"><img src=\"https://avatars1.githubusercontent.com/u/1866496?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Pierre Grimaud</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Apgrimaud\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/pgadige\"><img src=\"https://avatars2.githubusercontent.com/u/8632025?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Pooja Gadige</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=pgadige\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Apgadige\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://pranavmahajan25.github.io/\"><img src=\"https://avatars0.githubusercontent.com/u/33349653?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Pranav Mahajan</b></sub></a><br /><a href=\"#content-PranavMahajan25\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/przemekdolata96\"><img src=\"https://avatars3.githubusercontent.com/u/26312462?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Przemek Dolata</b></sub></a><br /><a href=\"#translation-przemekdolata96\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://rainsworth.github.io\"><img src=\"https://avatars3.githubusercontent.com/u/10600877?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Rachael Ainsworth</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=rainsworth\" title=\"Documentation\">📖</a> <a href=\"#eventOrganizing-rainsworth\" title=\"Event Organizing\">📋</a> <a href=\"#ideas-rainsworth\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#question-rainsworth\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Arainsworth\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#talk-rainsworth\" title=\"Talks\">📢</a></td>\n    <td align=\"center\"><a href=\"https://github.com/radka-j\"><img src=\"https://avatars2.githubusercontent.com/u/29207091?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Radka Jersakova</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aradka-j\" title=\"Bug reports\">🐛</a> <a href=\"#content-radka-j\" title=\"Content\">🖋</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://bast.fr\"><img src=\"https://avatars.githubusercontent.com/u/5120679?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Radovan Bast</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Abast\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://www.linkedin.com/in/rafaelaqueirozg/\"><img src=\"https://avatars.githubusercontent.com/u/42815135?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Rafaela Queiroz</b></sub></a><br /><a href=\"#translation-rafaelaqueirozg\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://github.com/bantya\"><img src=\"https://avatars.githubusercontent.com/u/16685565?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Rahul Thakare</b></sub></a><br /><a href=\"#translation-bantya\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"http://rgaiacs.com\"><img src=\"https://avatars0.githubusercontent.com/u/1506457?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Raniere Silva</b></sub></a><br /><a href=\"#content-rgaiacs\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Argaiacs\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/camachoreina\"><img src=\"https://avatars0.githubusercontent.com/u/12454015?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Reina Camacho Toro</b></sub></a><br /><a href=\"#translation-camachoreina\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://remi-gau.github.io/\"><img src=\"https://avatars3.githubusercontent.com/u/6961185?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Remi Gau</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ARemi-Gau\" title=\"Bug reports\">🐛</a> <a href=\"#content-Remi-Gau\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://reshamas.github.io\"><img src=\"https://avatars0.githubusercontent.com/u/2507232?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Reshama Shaikh</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Areshamas\" title=\"Bug reports\">🐛</a> <a href=\"#content-reshamas\" title=\"Content\">🖋</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/rjjgilham\"><img src=\"https://avatars0.githubusercontent.com/u/18323072?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Richard Gilham</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=rjjgilham\" title=\"Documentation\">📖</a> <a href=\"#ideas-rjjgilham\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/risaueno\"><img src=\"https://avatars0.githubusercontent.com/u/22602921?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Risa Ueno</b></sub></a><br /><a href=\"#ideas-risaueno\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/RobPrecious\"><img src=\"https://avatars.githubusercontent.com/u/9133187?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Robert Precious</b></sub></a><br /><a href=\"#a11y-RobPrecious\" title=\"Accessibility\">️️️️♿️</a></td>\n    <td align=\"center\"><a href=\"https://github.com/longr\"><img src=\"https://avatars0.githubusercontent.com/u/3597743?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Robin Long</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=longr\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"http://rohitmidha23.github.io\"><img src=\"https://avatars1.githubusercontent.com/u/38888530?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Rohit Midha</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=RohitMidha23\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/romeroclaudino\"><img src=\"https://avatars1.githubusercontent.com/u/6520331?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Romero Silva</b></sub></a><br /><a href=\"#translation-romeroclaudino\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://github.com/rosesisk\"><img src=\"https://avatars2.githubusercontent.com/u/52324551?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Rose Sisk</b></sub></a><br /><a href=\"#ideas-rosesisk\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/rosiehigman\"><img src=\"https://avatars2.githubusercontent.com/u/15738325?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Rosie Higman</b></sub></a><br /><a href=\"#question-rosiehigman\" title=\"Answering Questions\">💬</a> <a href=\"#eventOrganizing-rosiehigman\" title=\"Event Organizing\">📋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Arosiehigman\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#ideas-rosiehigman\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/RostiReadioff\"><img src=\"https://avatars1.githubusercontent.com/u/45424690?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Rosti Readioff</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=RostiReadioff\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/SYU-NING\"><img src=\"https://avatars.githubusercontent.com/u/71600183?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>SYU-NING</b></sub></a><br /><a href=\"#ideas-SYU-NING\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/SamGuay\"><img src=\"https://avatars1.githubusercontent.com/u/30598330?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Samuel Guay</b></sub></a><br /><a href=\"#translation-SamGuay\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://snastase.github.io/\"><img src=\"https://avatars2.githubusercontent.com/u/3496566?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Samuel Nastase</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asnastase\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://sksahu.net\"><img src=\"https://avatars1.githubusercontent.com/u/23085664?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Sangram K Sahu</b></sub></a><br /><a href=\"#ideas-sk-sahu\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/sgibson91\"><img src=\"https://avatars2.githubusercontent.com/u/44771837?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Sarah Gibson</b></sub></a><br /><a href=\"#question-sgibson91\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=sgibson91\" title=\"Code\">💻</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=sgibson91\" title=\"Documentation\">📖</a> <a href=\"#tool-sgibson91\" title=\"Tools\">🔧</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Asgibson91\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#talk-sgibson91\" title=\"Talks\">📢</a> <a href=\"#ideas-sgibson91\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#tutorial-sgibson91\" title=\"Tutorials\">✅</a> <a href=\"#video-sgibson91\" title=\"Videos\">📹</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/Biostew\"><img src=\"https://avatars3.githubusercontent.com/u/17767752?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Sarah Stewart</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=BioStew\" title=\"Documentation\">📖</a> <a href=\"#ideas-BioStew\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://nl.linkedin.com/in/fakhereh-sarah-alidoost-11a24a89\"><img src=\"https://avatars3.githubusercontent.com/u/55081872?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>SarahAlidoost</b></sub></a><br /><a href=\"#content-SarahAlidoost\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://www.turing.ac.uk/people/doctoral-students/sedar-olmez\"><img src=\"https://avatars3.githubusercontent.com/u/10035934?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Sedar Olmez</b></sub></a><br /><a href=\"#ideas-SedarOlmez94\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Sergih28\"><img src=\"https://avatars.githubusercontent.com/u/16263046?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Sergi</b></sub></a><br /><a href=\"#translation-Sergih28\" title=\"Translation\">🌍</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ASergih28\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"http://growupboron.github.io\"><img src=\"https://avatars3.githubusercontent.com/u/41593068?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Shankho Boron Ghosh</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Agrowupboron\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/sianbladon\"><img src=\"https://avatars0.githubusercontent.com/u/60200458?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Sian Bladon</b></sub></a><br /><a href=\"#ideas-sianbladon\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://sibasmarak.blogspot.com \"><img src=\"https://avatars0.githubusercontent.com/u/49467053?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Siba Smarak Panigrahi</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asibasmarak\" title=\"Bug reports\">🐛</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/BeastyBlacksmith\"><img src=\"https://avatars.githubusercontent.com/u/18145188?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Simon Christ</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ABeastyBlacksmith\" title=\"Bug reports\">🐛</a> <a href=\"#ideas-BeastyBlacksmith\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-BeastyBlacksmith\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://www.solon-karapanagiotis.com/\"><img src=\"https://avatars2.githubusercontent.com/u/7536922?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Solon</b></sub></a><br /><a href=\"#ideas-solonkarapa\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/BrainonSilicon\"><img src=\"https://avatars1.githubusercontent.com/u/42813259?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Sophia Batchelor</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ABrainonSilicon\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#ideas-BrainonSilicon\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#maintenance-BrainonSilicon\" title=\"Maintenance\">🚧</a> <a href=\"#talk-BrainonSilicon\" title=\"Talks\">📢</a></td>\n    <td align=\"center\"><a href=\"https://github.com/sophiejean\"><img src=\"https://avatars.githubusercontent.com/u/100791169?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Sophie J Mann</b></sub></a><br /><a href=\"#ideas-sophiejean\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-sophiejean\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/sparkler0323\"><img src=\"https://avatars2.githubusercontent.com/u/18514015?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Sparkler</b></sub></a><br /><a href=\"#translation-sparkler0323\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://srishti-nema.github.io/\"><img src=\"https://avatars1.githubusercontent.com/u/42498900?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Srishti Nema</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asrishti-nema\" title=\"Bug reports\">🐛</a> <a href=\"#content-srishti-nema\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://stefanjanssen.nl\"><img src=\"https://avatars1.githubusercontent.com/u/6250246?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Stefan Janssen</b></sub></a><br /><a href=\"#translation-StefanJanssen95\" title=\"Translation\">🌍</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/sverhoeven\"><img src=\"https://avatars1.githubusercontent.com/u/1713488?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Stefan Verhoeven</b></sub></a><br /><a href=\"#content-sverhoeven\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://sdruskat.net\"><img src=\"https://avatars0.githubusercontent.com/u/3007126?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Stephan Druskat</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=sdruskat\" title=\"Documentation\">📖</a> <a href=\"#content-sdruskat\" title=\"Content\">🖋</a> <a href=\"#ideas-sdruskat\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://damtp.cam.ac.uk/user/eglen\"><img src=\"https://avatars1.githubusercontent.com/u/1095067?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Stephen Eglen</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Asje30\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/Sylfrena\"><img src=\"https://avatars2.githubusercontent.com/u/35404119?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Sumera Priyadarsini</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ASylfrena\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://sansonegroup.eng.ox.ac.uk/\"><img src=\"https://avatars3.githubusercontent.com/u/525719?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Susanna-Assunta Sansone</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=SusannaSansone\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/svenvanderburg\"><img src=\"https://avatars.githubusercontent.com/u/9945255?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Sven van der Burg</b></sub></a><br /><a href=\"#content-svenvanderburg\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://www.bitsandchips.me\"><img src=\"https://avatars3.githubusercontent.com/u/23552331?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Tania Allard</b></sub></a><br /><a href=\"#ideas-trallard\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#question-trallard\" title=\"Answering Questions\">💬</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"http://www.tarekallamjr.com\"><img src=\"https://avatars1.githubusercontent.com/u/8843728?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Tarek Allam</b></sub></a><br /><a href=\"#infra-tallamjr\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=tallamjr\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/davehedgehog\"><img src=\"https://avatars0.githubusercontent.com/u/57715289?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Tess Gough</b></sub></a><br /><a href=\"#ideas-davehedgehog\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"http://www.linkedin.com/pub/thomas-sandmann/21/61b/410/\"><img src=\"https://avatars0.githubusercontent.com/u/10490984?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Thomas Sandmann</b></sub></a><br /><a href=\"#translation-tomsing1\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://github.com/ThyavdBerg\"><img src=\"https://avatars.githubusercontent.com/u/77287134?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Thya van den Berg</b></sub></a><br /><a href=\"#eventOrganizing-ThyavdBerg\" title=\"Event Organizing\">📋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/betatim\"><img src=\"https://avatars1.githubusercontent.com/u/1448859?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Tim Head</b></sub></a><br /><a href=\"#question-betatim\" title=\"Answering Questions\">💬</a> <a href=\"#ideas-betatim\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/timyers\"><img src=\"https://avatars.githubusercontent.com/u/48717893?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Tim Myers</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Atimyers\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/teapowell\"><img src=\"https://avatars1.githubusercontent.com/u/35264355?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Tim Powell</b></sub></a><br /><a href=\"#ideas-teapowell\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-teapowell\" title=\"Content\">🖋</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/tonyyzy\"><img src=\"https://avatars3.githubusercontent.com/u/38984697?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Tony Yang</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=tonyyzy\" title=\"Documentation\">📖</a> <a href=\"#translation-tonyyzy\" title=\"Translation\">🌍</a> <a href=\"#infra-tonyyzy\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n    <td align=\"center\"><a href=\"https://github.com/CapTen101\"><img src=\"https://avatars0.githubusercontent.com/u/45699327?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Tushar Rohilla</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ACapTen101\" title=\"Bug reports\">🐛</a> <a href=\"#content-CapTen101\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://www.veronikach.com\"><img src=\"https://avatars2.githubusercontent.com/u/10584818?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Veronika Cheplygina</b></sub></a><br /><a href=\"#ideas-vcheplygina\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-vcheplygina\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/blue-moon22\"><img src=\"https://avatars1.githubusercontent.com/u/15203325?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Victoria</b></sub></a><br /><a href=\"#ideas-blue-moon22\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/vdda\"><img src=\"https://avatars1.githubusercontent.com/u/642451?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Victoria Dominguez del Angel</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Avdda\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"http://warrickball.github.io\"><img src=\"https://avatars.githubusercontent.com/u/20858744?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Warrick Ball</b></sub></a><br /><a href=\"#ideas-warrickball\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-warrickball\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://wiebketoussaint.com\"><img src=\"https://avatars3.githubusercontent.com/u/11086407?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Wiebke Toussaint</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Awiebket\" title=\"Bug reports\">🐛</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/wjchulme\"><img src=\"https://avatars1.githubusercontent.com/u/25637345?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Will Hulme</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=wjchulme\" title=\"Documentation\">📖</a></td>\n    <td align=\"center\"><a href=\"https://github.com/wna-se\"><img src=\"https://avatars3.githubusercontent.com/u/1221165?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Wolmar Nyberg Åkerström</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Awna-se\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/xc308\"><img src=\"https://avatars1.githubusercontent.com/u/55785985?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Xiaoqing Chen</b></sub></a><br /><a href=\"#ideas-xc308\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://yabellini.netlify.com/\"><img src=\"https://avatars.githubusercontent.com/u/2473676?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Yanina Bellini Saibene</b></sub></a><br /><a href=\"#content-yabellini\" title=\"Content\">🖋</a> <a href=\"#translation-yabellini\" title=\"Translation\">🌍</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ayabellini\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"http://www.twinreality.blog\"><img src=\"https://avatars0.githubusercontent.com/u/44135465?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Yash Varshney</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AYash-Varshney\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/minnieho1115\"><img src=\"https://avatars1.githubusercontent.com/u/35134464?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Yini</b></sub></a><br /><a href=\"#translation-minnieho1115\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"http://yo-yehudi.com\"><img src=\"https://avatars0.githubusercontent.com/u/9271438?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Yo Yehudi</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=yochannah\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ayochannah\" title=\"Reviewed Pull Requests\">👀</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/ufangYang\"><img src=\"https://avatars3.githubusercontent.com/u/33165978?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>Yu-Fang Yang</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AufangYang\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/ZoeIngr\"><img src=\"https://avatars.githubusercontent.com/u/80701413?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>ZoeIngr</b></sub></a><br /><a href=\"#content-ZoeIngr\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/abrown41\"><img src=\"https://avatars.githubusercontent.com/u/10060170?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>abrown41</b></sub></a><br /><a href=\"#ideas-abrown41\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-abrown41\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/acork25\"><img src=\"https://avatars0.githubusercontent.com/u/55786005?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>acork25</b></sub></a><br /><a href=\"#ideas-acork25\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/akira-endo\"><img src=\"https://avatars3.githubusercontent.com/u/26547770?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>akira-endo</b></sub></a><br /><a href=\"#ideas-akira-endo\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/alessandroragano\"><img src=\"https://avatars3.githubusercontent.com/u/44505487?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>alessandroragano</b></sub></a><br /><a href=\"#ideas-alessandroragano\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/alihumayun\"><img src=\"https://avatars.githubusercontent.com/u/78482064?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>alihumayun</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aalihumayun\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aalihumayun\" title=\"Reviewed Pull Requests\">👀</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/andreabecsek\"><img src=\"https://avatars.githubusercontent.com/u/50207436?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>andreabecsek</b></sub></a><br /><a href=\"#ideas-andreabecsek\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/andrealuppi\"><img src=\"https://avatars.githubusercontent.com/u/50251039?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>andrealuppi</b></sub></a><br /><a href=\"#ideas-andrealuppi\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://www.lse.ac.uk/media-and-communications/people/research-staff/asha-titus\"><img src=\"https://avatars3.githubusercontent.com/u/32542663?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>ashatitus</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aashatitus\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#content-ashatitus\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"http://www.drrebeccawilson.co.uk\"><img src=\"https://avatars0.githubusercontent.com/u/5114032?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>beccawilson</b></sub></a><br /><a href=\"#a11y-beccawilson\" title=\"Accessibility\">️️️️♿️</a></td>\n    <td align=\"center\"><a href=\"http://benkrikler.github.io\"><img src=\"https://avatars.githubusercontent.com/u/4083697?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>benkrikler</b></sub></a><br /><a href=\"#ideas-benkrikler\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-benkrikler\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/ceciledebezenac\"><img src=\"https://avatars2.githubusercontent.com/u/49871974?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>ceciledebezenac</b></sub></a><br /><a href=\"#ideas-ceciledebezenac\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/claudia-belardi\"><img src=\"https://avatars.githubusercontent.com/u/62244233?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>claudia-belardi</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aclaudia-belardi\" title=\"Reviewed Pull Requests\">👀</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/daniguariso\"><img src=\"https://avatars3.githubusercontent.com/u/40636435?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>daniguariso</b></sub></a><br /><a href=\"#ideas-daniguariso\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/giuliaok\"><img src=\"https://avatars1.githubusercontent.com/u/33548935?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>giuliaok</b></sub></a><br /><a href=\"#ideas-giuliaok\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/glumand\"><img src=\"https://avatars3.githubusercontent.com/u/55833875?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>glumand</b></sub></a><br /><a href=\"#translation-glumand\" title=\"Translation\">🌍</a></td>\n    <td align=\"center\"><a href=\"https://github.com/griff-rees\"><img src=\"https://avatars.githubusercontent.com/u/60181741?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>griff-rees</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Agriff-rees\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/harisood\"><img src=\"https://avatars.githubusercontent.com/u/67151373?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>harisood</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aharisood\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/hlnicholls\"><img src=\"https://avatars.githubusercontent.com/u/53306752?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>hlnicholls</b></sub></a><br /><a href=\"#content-hlnicholls\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/irenekp\"><img src=\"https://avatars2.githubusercontent.com/u/53008913?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>irenekp</b></sub></a><br /><a href=\"#content-irenekp\" title=\"Content\">🖋</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/keneuoe\"><img src=\"https://avatars.githubusercontent.com/u/32788068?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>keneuoe</b></sub></a><br /><a href=\"#ideas-keneuoe\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-keneuoe\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/kgrieman\"><img src=\"https://avatars0.githubusercontent.com/u/55785990?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>kgrieman</b></sub></a><br /><a href=\"#ideas-kgrieman\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/l-gorman\"><img src=\"https://avatars2.githubusercontent.com/u/55786252?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>l-gorman</b></sub></a><br /><a href=\"#ideas-l-gorman\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/leavanh\"><img src=\"https://avatars2.githubusercontent.com/u/50297755?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>leavanh</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aleavanh\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/lottycoupat\"><img src=\"https://avatars.githubusercontent.com/u/82104604?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>lottycoupat</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Alottycoupat\" title=\"Bug reports\">🐛</a> <a href=\"#content-lottycoupat\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/lukehare\"><img src=\"https://avatars.githubusercontent.com/u/44277986?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>lukehare</b></sub></a><br /><a href=\"#infra-lukehare\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"#maintenance-lukehare\" title=\"Maintenance\">🚧</a></td>\n    <td align=\"center\"><a href=\"https://github.com/mcnanton\"><img src=\"https://avatars.githubusercontent.com/u/42379883?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>mcnanton</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Amcnanton\" title=\"Bug reports\">🐛</a> <a href=\"#content-mcnanton\" title=\"Content\">🖋</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/mingyuzhuu\"><img src=\"https://avatars.githubusercontent.com/u/57093217?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>mingyuzhuu</b></sub></a><br /><a href=\"#ideas-mingyuzhuu\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-mingyuzhuu\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://twitter.com/mishkanemes\"><img src=\"https://avatars.githubusercontent.com/u/39628884?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>mishkanemes</b></sub></a><br /><a href=\"#eventOrganizing-mishkanemes\" title=\"Event Organizing\">📋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/mjcasy\"><img src=\"https://avatars1.githubusercontent.com/u/44202821?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>mjcasy</b></sub></a><br /><a href=\"#ideas-mjcasy\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-mjcasy\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/msanter01\"><img src=\"https://avatars0.githubusercontent.com/u/39199660?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>msanter01</b></sub></a><br /><a href=\"#translation-msanter01\" title=\"Translation\">🌍</a> <a href=\"#talk-msanter01\" title=\"Talks\">📢</a></td>\n    <td align=\"center\"><a href=\"https://github.com/oxpeter\"><img src=\"https://avatars3.githubusercontent.com/u/6393360?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>oxpeter</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aoxpeter\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/peterrhysstrong\"><img src=\"https://avatars.githubusercontent.com/u/43751009?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>peterrhysstrong</b></sub></a><br /><a href=\"#ideas-peterrhysstrong\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/rabbits99\"><img src=\"https://avatars1.githubusercontent.com/u/72690233?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>rabbits99</b></sub></a><br /><a href=\"#translation-rabbits99\" title=\"Translation\">🌍</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/rachelzwalker\"><img src=\"https://avatars.githubusercontent.com/u/100789985?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>rachelzwalker</b></sub></a><br /><a href=\"#ideas-rachelzwalker\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"#content-rachelzwalker\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/raptorchief\"><img src=\"https://avatars.githubusercontent.com/u/55805992?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>raptorchief</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Araptorchief\" title=\"Bug reports\">🐛</a></td>\n    <td align=\"center\"><a href=\"https://github.com/sallyob123\"><img src=\"https://avatars2.githubusercontent.com/u/55785959?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>sallyob123</b></sub></a><br /><a href=\"#ideas-sallyob123\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/sethsh7\"><img src=\"https://avatars0.githubusercontent.com/u/53264282?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>sethsh7</b></sub></a><br /><a href=\"#ideas-sethsh7\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/sliaqat3\"><img src=\"https://avatars2.githubusercontent.com/u/56300607?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>sliaqat3</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Asliaqat3\" title=\"Reviewed Pull Requests\">👀</a></td>\n    <td align=\"center\"><a href=\"https://github.com/saramasa22\"><img src=\"https://avatars3.githubusercontent.com/u/55786246?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>smasarone</b></sub></a><br /><a href=\"#ideas-saramasa22\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/swalkoAI\"><img src=\"https://avatars2.githubusercontent.com/u/55786131?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>swalkoAI</b></sub></a><br /><a href=\"#ideas-swalkoAI\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n  </tr>\n  <tr>\n    <td align=\"center\"><a href=\"https://github.com/takuover\"><img src=\"https://avatars2.githubusercontent.com/u/52206060?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>takuover</b></sub></a><br /><a href=\"#ideas-takuover\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/tugceoruc\"><img src=\"https://avatars0.githubusercontent.com/u/20405276?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>tugceoruc</b></sub></a><br /><a href=\"#ideas-tugceoruc\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/vasilisstav\"><img src=\"https://avatars0.githubusercontent.com/u/55793023?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>vasilisstav</b></sub></a><br /><a href=\"#ideas-vasilisstav\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    <td align=\"center\"><a href=\"https://github.com/vcpope\"><img src=\"https://avatars.githubusercontent.com/u/62377353?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>vcpope</b></sub></a><br /><a href=\"#talk-vcpope\" title=\"Talks\">📢</a></td>\n    <td align=\"center\"><a href=\"https://github.com/vhellon\"><img src=\"https://avatars.githubusercontent.com/u/93144591?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>vhellon</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Avhellon\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"#content-vhellon\" title=\"Content\">🖋</a></td>\n    <td align=\"center\"><a href=\"https://github.com/yaseminturkyilmaz\"><img src=\"https://avatars3.githubusercontent.com/u/45484225?v=4?s=100\" width=\"100px;\" alt=\"\"/><br /><sub><b>yaseminturkyilmaz</b></sub></a><br /><a href=\"#blog-yaseminturkyilmaz\" title=\"Blogposts\">📝</a> <a href=\"#ideas-yaseminturkyilmaz\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n  </tr>\n</table>\n\n<!-- markdownlint-restore -->\n<!-- prettier-ignore-end -->\n\n<!-- ALL-CONTRIBUTORS-LIST:END -->\n\n이 프로젝트는 all-contributors의 규격을 사용합니다. 모든 기여를 환영합니다\n\n이 프로젝트는[all-contributors](https://github.com/all-contributors/all-contributors)의 규격을 사용합니다. \n모든 기여를 환영합니다\n"
  },
  {
    "path": "README-translated/README-Papiamento.md",
    "content": "<a href=\"https://book.the-turing-way.org/welcome.html\"><img src=\"../book/figures/logo/logo.jpg?raw=true)\" width=\"180\" align=\"Right\" /></a>\n\n# _The Turing Way_\n\n>_E archivo README-Papiamento.md aki ta disponibel na Aleman ([README-German.md](README-German.md)), Koreano ([README-Korean](README-Korean.md)), Frances ([README-French.md](README-French.md)), Indones ([README-Indonesian](README-Indonesian.md)), Ingles ([README](../README.md)), Italiano ([README-Italian](README-Italian.md)), Hulandes ([README-Dutch](README-Dutch.md)), Spaño ([README-Spanish](README-Spanish.md)) y Portugues ([README-Portuguese](README-Portuguese.md)) tambe (ordena alfabeticamente)._\n\n*Colaboradornan total:*\n\n| Informacion | Enlace |\n| :--- | :--- |\n| **Proyecto** | [![Read the book](https://img.shields.io/badge/read-the%20book-blue.svg)](https://book.the-turing-way.org) [![](https://img.shields.io/static/v1?label=TuringWay&message=I%20want%20to%20contribute!&color=yellow&logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8%2F9hAAACYklEQVQ4jXXTy09TQRTH8f5VPhI1xoVxYURNAFcmRleaGDdGXQlKAYkLUARNfICoScGKpTyE3t5bkKD2AUQepUXB0gcgLTalD9rema8LKRVrT3I2k%2Fl95kwyY6BMfQiFqHaoVDlUBoJBZJl9hn8XRsIhqh0abd55tnWdrBA8WfBSpakMhUqhXUCJhKl2aLR65%2FEtLeGc%2BYoy5aHf46bX7cThctK%2BAw2HQkVAW41wzqHRMjNNRteR%2BQzGjg5udZtQ47FiO50gdLZ1nVbvPNUOFSUSxnB4sJ%2F0TjCTTjHk%2BoJl%2BRtqPEaL6zMH79Rw0dyDVVURqRgyn0EkN8jkshwZGsBQodgQyQ2kyDPsce859drjdqLRKE0D%2FZhHR5F6DpHc2B3%2FjF3BcFqxARIpBXXmt9ii67vAYDhIr8fNx0UfE3OzzC0sIHIpxNYqSPEHqFBsiFQMkU3h8vs5%2FvABTeNje6BCj%2FxcwzLlIZHYROq5v4EoIr2JyCbJ57Kobjd3u7o41v4I68pyCfTGrhSvUKHYAJD5bcTWGjKbJJdO4A8E6JyexP4rWgK8Vkb2AjK7hcxnmZybxfF9kff%2BhZJQofvXwhg7O4vAfU2l79ME79xOrjY3c9ZYVzZs8nvZf6%2BRQCRCTgiODg1iCK6vc6WtjZM1tzlRW8sNa99%2Fx64fH%2BNAQz0un49nfh%2BVmspAcKX4lKWUbMbjXOg2cf3Vy%2BLIoRWqekxc7nhB6%2FQ0lZqKJRBAyjKfKZFIcKixgVPPn3LTamFfUyPne7qp1Oz0Bn4g5d7vVAIUamJ2FqPZzCW7gvlHabBQvwE2XnlAiFRrOwAAAABJRU5ErkJggg%3D%3D)](https://github.com/the-turing-way/the-turing-way/blob/main/CONTRIBUTING.md) |\n| **Noticia** | [![Twitter Follow](https://img.shields.io/twitter/follow/turingway?style=social)](https://twitter.com/turingway) [![Join our tinyletter mailing list](https://img.shields.io/badge/receive-our%20newsletter%20❤%EF%B8%8F-blueviolet.svg)](https://buttondown.com/turingway)  [![YouTube Channel Views](https://img.shields.io/youtube/channel/views/UCPDxZv5BMzAw0mPobCbMNuA?style=social)](https://www.youtube.com/channel/UCPDxZv5BMzAw0mPobCbMNuA)  |\n| **Chat** | [![Join Slack](https://img.shields.io/badge/Chat-on%20Slack-ff69b4)](https://join.slack.com/t/theturingway/shared_invite/zt-2v7euwuo7-BYstHdKuTNd1ce0puDtBxA) [![GitHub issues](https://img.shields.io/github/issues/the-turing-way/the-turing-way)](https://github.com/the-turing-way/the-turing-way/issues) [![GitHub pull requests](https://img.shields.io/github/issues-pr/the-turing-way/the-turing-way)](https://github.com/the-turing-way/the-turing-way/pulls) |\n| **Construi** | [![Netlify build](https://github.com/the-turing-way/the-turing-way/workflows/CI/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3ACI+branch%3Amain) [![Latin Phrases](https://github.com/the-turing-way/the-turing-way/workflows/Check%20for%20Latin%20Phrases/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3A%22Check+for+Latin+Phrases%22+branch%3Amain) [![TestFileSizes](https://github.com/the-turing-way/the-turing-way/workflows/TestFileSizes/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3ATestFileSizes+branch%3Amain) [![Check for Lorem Ipsums](https://github.com/the-turing-way/the-turing-way/workflows/Check%20for%20Lorem%20Ipsums/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3A%22Check+for+Lorem+Ipsums%22+branch%3Amain) |\n| **Site** |  [![Cite this using DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3233853.svg)](https://doi.org/10.5281/zenodo.3233853) |\n\n*Bonbini na e repositorio di GitHub di e proyecto The Turing Way! \nAki ta tur componente di e proyecto ta wordo desaroya, revisa y mantene.*\n\n_The Turing Way_ ta un guia practico di data science reproducibel, etico y colaborativo.\nNos ta sostene un comunidad diverso di colaboradornan pa logra un data science accesibel, comprendibel y efectivo pa tur hende.\nNos meta ta pa provee tur informacion cu investigador y data scientist den academia, industria y sector publico mester na cuminsamento di nan proyectonan pa segura cu nan ta facil pa reproduci na final.\n\n[![E proyecto The Turing Way ta un buki, un comunidad, un proyecto open source y un cultura di colaboracion. Esaki ta mustra den cuater ilustracion, e prome ta mustra e buki di Turing Way, e di dos ta mustra con e comunidad por crese, e di tres ta mustra dos persona colaborando riba un pull request, y e ultimo ta mustra e balansa unda reproducibilidad ta balora mas cu e cantidad di papers publica](../book/figures/README_imgs/README_turingway.png)](https://docs.google.com/presentation/d/13Nm8LcRW87ffxEugGEs5j6HKQEvhiuH8b7MfIdX7MpI/edit#slide=id.p1).\n\n*The Turing Way ta un buki, un comunidad y un colaboracion global.*\n\nTa encurasha tur partido interesa, incluyendo studiante, investigador, ingeniero di software, y lider di proyecto, pa uza The Turing Way pa compronde nan rol y nan responsabilidad den reproducibilidad di data science.\nBo por lesa e buki [online](https://github.com/the-turing-way/the-turing-way), contribui na e proyecto manera ta describi den nos [guia pa contribui na e proyecto](https://github.com/the-turing-way/the-turing-way/blob/main/CONTRIBUTING.md) y re-uza tur material ([mira e Licencia](https://github.com/the-turing-way/the-turing-way/blob/main/LICENSE.md)).\n\n[![Screenshot di e buki online di Turing Way. Tambe ta mustra un di e ilustracionnan di Turing Way na cuminsamento di e buki. Den e ilustracion aki, nos por mira un caminda of highway cu tiendanan pa diferente habilidadnan di data science. Hende por drenta y sali cu nan lista di compra y scohe loke nan mester.](../book/figures/README_imgs/README_book.png)](https://book.the-turing-way.org/welcome.html)\n\n*Screenshot di e buki online di The Turing Way ([uza e imagen aki den un presentacion](https://drive.google.com/file/d/1wJR664YECSc8b_RSHeyVjDlHs-Ls9lkc/view?usp=sharing))*\n\nNa aña 2019 The Turing Way a inicia como un guia di opinion lihero di data science, y desde e tempo aki a expande y bira un manual hopi mas completo forma di varios guia cu ta cubri varios tema: Investigacion Reproducibel, Diseño di Proyecto, Comunicacion, Colaboracion y Investigacion Etico.\nCada guia ta ofrece capitulo riba un variedad di tema cu ta trata bon practica y recomendacion.\nE capitulonan aki a wordo co-skirbi door di colaborador, cu ta studiante, investigador, docente, lider comunitario, politico y profesional di formacion diverso, experencia biba y conocemento di materia.\n\n***Nos meta ta pa haci reproducibilidad \"demasiado facil pa no hacie\".***\n\n**Tabla di contenido:**\n\n- [Tocante e proyecto](#tocante-e-proyecto)\n- [E ekipo](#e-ekipo)\n- [Contribui](#contribui)\n- [Cita _The Turing Way_](#cita-the-turing-way)\n- [Tuma contacto cu nos](#tuma-contacto-cu-nos)\n- [Colaboradornan](#Colaboradornan)\n\n🎧 Si bo ta prefera un introduccion di e proyecto den forma di audio (na Ingles) Rachael, un colaborador di e proyecto a presenta na [Open Science Fair 2019](https://www.opensciencefair.eu/) na Porto y su presentacion ta graba door di [Podcast Orion](https://orionopenscience.podbean.com/e/the-fair-is-in-town-figshare-the-turing-way-and-open-science-quest-at-the-osfair2019/).\nE descripcion general di _The Turing Way_ ta cuminsa na minuut 5:13.\n\n### Tocante e proyecto\n\nInvestigacion reproducibel ta necesario pa garantisa cu bo por confia den trabou cientifico.\nEsnan cu ta financia y edita e trabounan cientifico ta cuminsa exigi cu publicacionnan tin cu inclui acceso na e data uza y e codigo cu cua nan a haci e analisis.\nE meta ta pa garantisa cu por verifica tur resultado di forma independiente y por sirbi como base pa futuro trabou.\nTin biaha esaki ta mas facil pa bisa cu pa haci.\nComparti e resultado di investigacion ta nifica compronde maneho di data, sciencia di informacion y bibliotecologia, desaroyo di software y tecnicanan di integracion continuo: habilidad cu no ta siña ampliamente of spera di investigador academico y data scientist.\nComo cu no tin enseñansa di den e actividadnan aki, nos ta reconoce cu e carga di e exigencianan y haya  habilidad nobo por ta intimidante pa personanan cu ta nobo den e mundo aki.\n*The Turing Way* ta un manual pa yuda esnan cu ta studia, supervisa, financia y edit trabou cientifico pa garantisa cu data science reproducibel ta \"demasiado facil pa no hacie\" hasta pa esnan cu nunca prome a traha di e manera aki.\nLo inclui material di entrenamento riba control di version, test di analisis y comunicacion habri y transparente cu futuro usuario, y lo traha riba estudio di caso y workshop di Instituto Turing.\nE proyecto aki ta abiertamente desaroya y cualkier y tur pregunta, comentario y recomendacion ta bon bini den nos repositorio di GitHub: <https://github.com/the-turing-way/the-turing-way>.\n\n### E ekipo\n\n_The Turing Way_ ta un proyecto di colaboracion habri y impulsa pa comunidad.\nTur esnan cu ta colabora cu e buki aki, sin importa con chikito of grandi nan contribucion ta, ta reconoci den e proyecto aki como colaborador y miembro di comunidad.\nTa considera colaboradornan cu tin mas tempo trahando parti di e grupo di colaborador principal, cu ta asumi rol di lider den e proyecto, manera describi den e Governance Roles document.\n\nE investigador na cabes **Kirstie Whitaker** (fundador) y **Malvika Sharan** (desaroyador di comunidad) ta cooridina y ta hospeda na [The Alan Turing Institute](https://www.turing.ac.uk/).\n\nBo por lesa con ta haci [e proceso di reconocemento como parti di _The Turing Way_](https://book.the-turing-way.org/community-handbook/acknowledgement/acknowledgement-members.html#community-members-contributors-and-co-authors) y e [Registro di Colaboradornan](https://book.the-turing-way.org/afterword/contributors-record.html) pa conoce con ta haci e reconocemento di trabou y nos colaboradornan destaca.\nPor fabor bishita e [Panel di Colaboradornan](#Colaboradornan) pa mira e profil di GitHub di tur nos colaboradornan.\n\n### Contribui\n\n:construction: E repositorio aki ta un trabou den progreso continuo y **tur hende** ta invita pa yuda nos construi algo cu ta util pa otro hende. :construction:\n\nTa spera cu tur personanan cu kier uni na e proyecto sigui nos [codigo di conducta](../CODE_OF_CONDUCT.md) y cu bishita nos [guia pa contribui na e proyecto](../CONTRIBUTING.md) pa mas informacion tocante con pa cuminsa.\nNos kier conoce nos colaboradornan, nos kier sa ken nan ta.\nP'esey, nos ta provee varios punto di entrada pa bo por colabora basa riba bo interes, disponibilidad of habilidad.\n\n![E imagen aki ta mustra seis tipo di contribucion cu cualke hende por hasi. Esakinan ta: Desaroyay comparti, Mantene y mehora, Comparti recurso, Revisa y actualisa, Hacie global pa medio di traducion, y Comparti e miho practicanan](../book/figures/README_imgs/README_contributions.png)\n\nE contribucionnan ta inclui desaroyo y comparti capitulonan nobo; mantencion y mehoracion di capitulonan existente; comparti recurso di _The Turing Way_; revisa y actualisa material desaroya anteriormente; traduci e capitulonan pa yuda haci e proyecto aki accesibel di forma global, y comparti e miho practicanan den investigacion.\n\nE miembronan di comunidad tin oportunidad pa siña habilidad nobo, comparti nan idea y colabora cu otro.\nNan tambe tin oportunidad pa haya mentoria den e proyecto mientras nan ta haci nan contribucionnan den The Turing Way of otro proyectonan di codigo habri y ta invita pa guia participante nobo den e proyecto.\n\nNos a crea un [pakete di promocion](https://github.com/the-turing-way/the-turing-way/tree/main/communications/promotion-pack) pa yuda bo presenta y comparti The Turing Way den bou bo contactonan.\n\n### Cita _The Turing Way_\n\nBo por haci referencia na _The Turing Way_ pa medio di e archivo Zenodo di e proyecto uzando DOI: [10.5281/zenodo.3233853](https://doi.org/10.5281/zenodo.3233853).\nDOI ta permiti nos archiva e repositorio y ta realmente valioso pa garantisa cu e trabou ta rastrea den publicacionnan academico.\n\nE citacion lo tin un aspecto parecido na esaki (na Ingles):\n\n> The Turing Way Community, Becky Arnold, Louise Bowler, Sarah Gibson, Patricia Herterich, Rosie Higman, … Kirstie Whitaker. (2019, March 25). The Turing Way: A Handbook for Reproducible Data Science (Version v0.0.4). Zenodo. <http://doi.org/10.5281/zenodo.3233986>\n\nTambe bo por comparti e URL unda cu por lesa na un pagina di e buki, por ehempel, <https://book.the-turing-way.org/reproducibility/03/definitions.html>. \nSinembargo, conta cu e proyecto ta den desaroyo, pues e enlacenan aki por cambia cu tempo.\nPor ta cu bo kier inclui un enlace di archivo web manera: <https://web.archive.org/web/20191030093753/https://book.the-turing-way.org/reproducibility/03/definitions.html> pa asegura cu bo no ta haya bo cu enlace kibra.\n\nNos ta realmente agradecido pa cualkier referencia cu bo haci na e proyecto _The Turing Way_ y nos ta spera cu e ta util.\nSi bo tin cualkier pregunta por fabor [tuma contacto cu nos](#tuma-contacto-cu-nos).\n\n### Cita e ilustracionnan di _The Turing Way_\n<p align=\"center\">\n  <img src=\"../book/figures/evolution-open-research.jpg\" alt=\"Esaki ta un ehempel di un di e ilustracionnan di The Turing Way. Ta trata di mustra e evolucion dilanti di era di ciencia habri\" width=\"600\">\n</p>\n\nE ilustracionnan di _The Turing Way_ ta crea pa un artista di [Scriberia](https://www.scriberia.co.uk/) como parti di [_The Turing Way_ book dashes](https://github.com/the-turing-way/the-turing-way/tree/main/workshops/book-dash) na Manchester dia 17 di mei 2019, na London dia 28 di mei 2019 y dia 21 di februari 2020.\nNan ta representa un variedad di contenido di e manual, di e esfuersonan di colaboracion den comunidad y di e proyecto _The Turing Way_ en general.\nE ilustracionnan aki ta disponibel na Zenodo ([https://zenodo.org/record/13882307)](https://zenodo.org/record/13882307) bou un licencia CC-BY.\n\nOra bo uza cualkier di e imagennan, por fabor inclui e atribucion aki:\n> E imagen aki ta crea pa Scriberia pa comunidad The Turing Way y ta uza bou un licencia CC-BY.\n\nPor cita e ultimo version di Zenodo como:\n> The Turing Way Community, & Scriberia. (2024). Illustrations from the Turing Way book dashes. Zenodo. http://doi.org/10.5281/zenodo.13882307\n\nNos a uza algun di e ilustracionnan aki den e responsnan di e contribucionnan di personanan cu ta integra den e comunidad aki den e [Bot di bon bini](https://github.com/apps/welcome) di e repositorio di GitHub aki.\n\n### Tuma contacto cu nos\n\n#### Email\n\nBo por tuma contacto cu e ekipo di *The Turing Way*, mandando un email na [theturingway@gmail.com](mailto:theturingway@gmail.com) of [turingway@turing.ac.uk](mailto:turingway@turing.ac.uk).\n\n#### Chat\n\nConecta cu otro hende y comparti bo ideanan riba Slack uzando [e enlace di invitacion aki](https://join.slack.com/t/theturingway/shared_invite/zt-2v7euwuo7-BYstHdKuTNd1ce0puDtBxA).\n\n\n#### Ricibi actualisacion\n\nTambe nos tin un lista di mail na cua nos ta manda actualisacion mensual di e proyecto.\nSubscribe riba <https://buttondown.com/turingway>.\n\nTambe bo por sigui nos riba [Mastodon](https://fosstodon.org/@turingway), [Bluesky](https://bsky.app/profile/turingway.bsky.social) y [Linkedin](https://www.linkedin.com/company/the-turing-way/).\n\n## Colaboradornan\n\nDanki na e personanan aki ([emoji key](https://allcontributors.org/docs/en/emoji-key)):\n\n[Lista di personanan cu a colabora](https://github.com/the-turing-way/the-turing-way#contributors)\n\nE proyecto aki ta sigui e specificacion [all-contributors](https://github.com/all-contributors/all-contributors).\nContribucion di tur indole ta bon bini!\n"
  },
  {
    "path": "README-translated/README-Portuguese.md",
    "content": "# The Turing Way\n\n[![Leia o livro](https://img.shields.io/badge/leia-o%20livro-blue.svg)](https://book.the-turing-way.org)\n[![Junte-se à nossa lista de e-mails](https://img.shields.io/badge/receba-%20nossos%20emails%20❤%EF%B8%8F-blueviolet.svg)](https://buttondown.com/turingway)\n[![Junte-se ao https://gitter.im/the-turing-way/the-turing-way](https://img.shields.io/gitter/room/the-turing-way/the-turing-way?logo=gitter)](https://gitter.im/the-turing-way/the-turing-way)\n[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3233853.svg)](https://doi.org/10.5281/zenodo.3233853)\n[![](https://img.shields.io/static/v1?label=TuringWay&message=Eu%20quero%20contribuir!&color=yellow&logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8%2F9hAAACYklEQVQ4jXXTy09TQRTH8f5VPhI1xoVxYURNAFcmRleaGDdGXQlKAYkLUARNfICoScGKpTyE3t5bkKD2AUQepUXB0gcgLTalD9rema8LKRVrT3I2k%2Fl95kwyY6BMfQiFqHaoVDlUBoJBZJl9hn8XRsIhqh0abd55tnWdrBA8WfBSpakMhUqhXUCJhKl2aLR65%2FEtLeGc%2BYoy5aHf46bX7cThctK%2BAw2HQkVAW41wzqHRMjNNRteR%2BQzGjg5udZtQ47FiO50gdLZ1nVbvPNUOFSUSxnB4sJ%2F0TjCTTjHk%2BoJl%2BRtqPEaL6zMH79Rw0dyDVVURqRgyn0EkN8jkshwZGsBQodgQyQ2kyDPsce859drjdqLRKE0D%2FZhHR5F6DpHc2B3%2FjF3BcFqxARIpBXXmt9ii67vAYDhIr8fNx0UfE3OzzC0sIHIpxNYqSPEHqFBsiFQMkU3h8vs5%2FvABTeNje6BCj%2FxcwzLlIZHYROq5v4EoIr2JyCbJ57Kobjd3u7o41v4I68pyCfTGrhSvUKHYAJD5bcTWGjKbJJdO4A8E6JyexP4rWgK8Vkb2AjK7hcxnmZybxfF9kff%2BhZJQofvXwhg7O4vAfU2l79ME79xOrjY3c9ZYVzZs8nvZf6%2BRQCRCTgiODg1iCK6vc6WtjZM1tzlRW8sNa99%2Fx64fH%2BNAQz0un49nfh%2BVmspAcKX4lKWUbMbjXOg2cf3Vy%2BLIoRWqekxc7nhB6%2FQ0lZqKJRBAyjKfKZFIcKixgVPPn3LTamFfUyPne7qp1Oz0Bn4g5d7vVAIUamJ2FqPZzCW7gvlHabBQvwE2XnlAiFRrOwAAAABJRU5ErkJggg%3D%3D)](https://github.com/the-turing-way/the-turing-way/blob/main/CONTRIBUTING.md)\n<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->\n[![Todos os contribuidores](https://img.shields.io/badge/todos_contribuidores-175-orange.svg)](#contributors)\n\nO _The Turing Way_ é um guia levemente obstinado para a ciência de dados reproduzível.\nVocê pode lê-lo aqui: <https://book.the-turing-way.org>.\nNeste momento, você está visualizando o repositório GitHub do projeto onde se encontra cada pedacinho que compõe o guia e onde o processo de escrita/construção do guia acontece.\n\nNosso objetivo é prover todas as informações que os pesquisadores precisam no início de seus projetos para assegurar que eles serão facilmente reproduzíveis quando terminados.\n\nIsso também significa garantir que os alunos de doutorado, pós-doutorandos, pesquisadores principais e equipes de financiamento saibam quais partes da \"responsabilidade de reprodutibilidade\" eles podem afetar, e o que devem fazer para estimular a ciência de dados a ser mais eficiente, eficaz e compreensível.\n\nÍndice de conteúdos:\n\n- [Sobre o projeto](#sobre-o-projeto)\n- [A equipe](#a-equipe)\n- [Como contribuir](#como-contribuir)\n- [Citando o _The Turing Way_](#citando-o-the-turing-way)\n- [Entre em contato](#entre-em-contato)\n- [Contribuidores](#contribuidores)\n\n🎧 Se você preferir uma introdução audível ao projeto, Rachael, que é membra da nossa equipe, fez uma apresentação no [Open Science Fair 2019](https://www.opensciencefair.eu/) em Porto e sua demo foi gravada pelo [Orion podcast](https://orionopenscience.podbean.com/e/the-fair-is-in-town-figshare-the-turing-way-and-open-science-quest-at-the-osfair2019/).\nA visão geral do _The Turing Way_ começa em decorridos 5:13.\n\n### Sobre o projeto\n\nA pesquisa reproduzível é necessária para garantir que trabalhos científicos sejam confiáveis.\nFinanciadores e editores estão começando a exigir que as publicações incluam o acesso aos dados subjacentes e ao código de análise.\nO objetivo é garantir que todos os resultados possam ser verificados de forma independente e aproveitados em trabalhos futuros.\nÀs vezes, é mais fácil falar do que fazer.\nCompartilhar esses resultados de pesquisa significa compreender o gerenciamento de dados, o funcionamento das bibliotecas, o desenvolvimento de software e as técnicas de integração contínua: habilidades que geralmente não são ensinadas ou esperadas de pesquisadores acadêmicos e cientistas de dados.\nComo essas atividades não são comumente ensinadas, reconhecemos que a carga da exigência e a aquisição de novas habilidades podem ser intimidantes para pessoas que são novas neste mundo.\nO *The Turing Way* é um manual para apoiar os alunos, seus supervisores, financiadores e editores de periódicos a garantir que a ciência de dados reproduzível seja \"fácil demais para não ser feita\", mesmo para pessoas que nunca trabalharam dessa forma antes.\nEle inclui o material de treinamento sobre controle de versão, teste de análise e comunicação aberta e transparente com usuários futuros, além de estudos de caso e workshops do Instituto Turing (*Turing Institute*).  \nEste projeto é desenvolvido abertamente e todas e quaisquer perguntas, comentários e recomendações são bem-vindas em nosso repositório do GitHub: <https://github.com/the-turing-way/the-turing-way>.\n\n### A equipe\n\nEstes são alguns membros do projeto realizando planejamentos no Instituto Turing (*Turing Institute*).\nPara mais informações sobre como nos contatar, consulte o [Governance Roles document](../GOVERNANCE_ROLES.md).\n\n<!---![Foto da equipe](book/figures/TuringWayTeam.jpg)--->\n\n### Como contribuir\n\n:construction: Este repositório está em constante desenvolvimento e **todos** são incentivados a nos ajudar a construir algo que seja útil para muitos. :construction:\n\nTodos são convidados a seguir nosso [código de conduta](CODE_OF_CONDUCT.md) e a checar nossas [diretrizes de contribuição](CONTRIBUTING.md) para obter mais informações sobre como começar.\n\nSe você não está familiarizado ou confiante em contribuir com o GitHub, também pode contribuir com um estudo de caso ou quaisquer dicas por meio de nosso [formulário Google](https://goo.gl/forms/akFqZEIy2kxAjfZW2).\n\n### Citando o _The Turing Way_\n\nVocê pode fazer referência ao _The Turing Way_ através do arquivo Zenodo do projeto usando DOI: [10.5281/zenodo.3233853](https://doi.org/10.5281/zenodo.3233853).\nOs DOIs nos permitem arquivar o repositório e são realmente valiosos para garantir que o trabalho seja rastreado em publicações acadêmicas.\n\nA citação consistirá em algo parecido com:\n\n> The Turing Way Community, Becky Arnold, Louise Bowler, Sarah Gibson, Patricia Herterich, Rosie Higman, … Kirstie Whitaker. (2019, March 25). The Turing Way: A Handbook for Reproducible Data Science (Version v0.0.4). Zenodo. <http://doi.org/10.5281/zenodo.3233986>\n\nVocê também pode compartilhar um URL mais legível que direciona a uma página do livro, por exemplo: <https://book.the-turing-way.org/reproducibility/03/definitions.html>, mas esteja ciente de que o projeto está em desenvolvimento, e dessa forma, esses links podem mudar com o tempo.\nVocê pode querer incluir um link arquivado na web, como: <https://web.archive.org/web/20191030093753/https://book.the-turing-way.org/reproducibility/03/definitions.html> Assim você se certifica de não acabar com links quebrados por aí!\n\nNós realmente apreciamos qualquer referência que você fizer ao projeto The Turing Way e esperamos que lhe seja útil.\nSe você possuir alguma dúvida, [entre em contato](#entre-em-contato).\n\n### Citando as ilustrações do _The Turing Way_\n\nAs ilustrações do _The Turing Way_ são criadas por artistas da [Scriberia](https://www.scriberia.co.uk/) como parte do [_The Turing Way_ book dashes](https://github.com/the-turing-way/the-turing-way/tree/main/workshops/book-dash) em Manchester em 17 de maio de 2019 e em Londres em 28 de maio de 2019 e 21 de fevereiro de 2020.  \nEles descrevem uma variedade de conteúdo do manual, esforços colaborativos na comunidade e o projeto _The Turing Way_ em geral.  \nEssas ilustrações estão disponíveis no Zenodo ([https://zenodo.org/record/3695300)](https://zenodo.org/record/3695300) sob uma licença CC-BY.\n\nAo usar qualquer uma das imagens, inclua o seguinte:\n> Esta imagem foi criada pela Scriberia para a comunidade The Turing Way e é utilizada sob uma licença CC-BY.\n\nA última versão do Zenodo pode ser citada assim:\n> The Turing Way Community, & Scriberia. (2020, March 3). Illustrations from the Turing Way book dashes. Zenodo. http://doi.org/10.5281/zenodo.3695300\n\nUsamos algumas dessas ilustrações nas respostas do [Bot de boas-vindas](https://github.com/apps/welcome) às contribuições de novos membros neste repositório GitHub.\n\n### Entre em contato\n\nTemos uma sala de bate-papo no gitter e adoraríamos que você passasse lá para dar um oi! acessando <https://gitter.im/the-turing-way/the-turing-way>.\nEssa sala também é sincronizada com o [Matrix](https://matrix.org) em [#the-turing-way:matrix.org](https://riot.im/app/#/room/#the-turing-way:matrix.org) e você também pode se juntar a nós por lá se preferir.\n\nTambém temos uma pequena lista de emails para a qual enviamos atualizações mensais do projeto.  \nInscreva-se acessando <https://buttondown.com/turingway>.\n\nVocê pode entrar em contato com o gerente da nossa comunidade **Malvika Sharan** por e-mail acessando [msharan@turing.ac.uk](mailto:msharan@turing.ac.uk).  \nAlternativamente, você pode entrar em contato com o investigador principal **Kirstie Whitaker** também por e-mail acessando [kwhitaker@turing.ac.uk](mailto:kwhitaker@turing.ac.uk).\n\n## Contribuidores\n\nOs agradecimentos vão para essas pessoas maravilhosas ([emoji key](https://allcontributors.org/docs/en/emoji-key)):\n\n[Lista de pessoas que colaboraram](https://github.com/the-turing-way/the-turing-way#contributors)\n\nEste projeto segue a especificação [all-contributors](https://github.com/all-contributors/all-contributors).\nContribuições de qualquer tipo são bem-vindas!\n"
  },
  {
    "path": "README-translated/README-Spanish.md",
    "content": "<a href=\"https://book.the-turing-way.org/welcome.html\"><img src=\"../book/figures/logo/logo.jpg?raw=true)\" width=\"180\" align=\"Right\" /></a>\n\n# _The Turing Way_\n\n>_Este archivo README-Spanish.md también está disponible en alemán ([README-German.md](README-German.md)), coreano ([README-Korean](README-Korean.md)), francés ([README-French.md](README-French.md)), indonesio ([README-Indonesian](README-Indonesian.md)), inglés ([README](../README.md)), italiano ([README-Italian](README-Italian.md)), holandés ([README-Dutch](README-Dutch.md)) y portugués ([README-Portuguese](README-Portuguese.md)) (ordenados alfabéticamente)._\n\n*Colaboradores totales:*\n\n\n| Información | Enlaces |\n| :--- | :--- |\n| **Proyecto** | [![Read the book](https://img.shields.io/badge/read-the%20book-blue.svg)](https://book.the-turing-way.org) [![](https://img.shields.io/static/v1?label=TuringWay&message=I%20want%20to%20contribute!&color=yellow&logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8%2F9hAAACYklEQVQ4jXXTy09TQRTH8f5VPhI1xoVxYURNAFcmRleaGDdGXQlKAYkLUARNfICoScGKpTyE3t5bkKD2AUQepUXB0gcgLTalD9rema8LKRVrT3I2k%2Fl95kwyY6BMfQiFqHaoVDlUBoJBZJl9hn8XRsIhqh0abd55tnWdrBA8WfBSpakMhUqhXUCJhKl2aLR65%2FEtLeGc%2BYoy5aHf46bX7cThctK%2BAw2HQkVAW41wzqHRMjNNRteR%2BQzGjg5udZtQ47FiO50gdLZ1nVbvPNUOFSUSxnB4sJ%2F0TjCTTjHk%2BoJl%2BRtqPEaL6zMH79Rw0dyDVVURqRgyn0EkN8jkshwZGsBQodgQyQ2kyDPsce859drjdqLRKE0D%2FZhHR5F6DpHc2B3%2FjF3BcFqxARIpBXXmt9ii67vAYDhIr8fNx0UfE3OzzC0sIHIpxNYqSPEHqFBsiFQMkU3h8vs5%2FvABTeNje6BCj%2FxcwzLlIZHYROq5v4EoIr2JyCbJ57Kobjd3u7o41v4I68pyCfTGrhSvUKHYAJD5bcTWGjKbJJdO4A8E6JyexP4rWgK8Vkb2AjK7hcxnmZybxfF9kff%2BhZJQofvXwhg7O4vAfU2l79ME79xOrjY3c9ZYVzZs8nvZf6%2BRQCRCTgiODg1iCK6vc6WtjZM1tzlRW8sNa99%2Fx64fH%2BNAQz0un49nfh%2BVmspAcKX4lKWUbMbjXOg2cf3Vy%2BLIoRWqekxc7nhB6%2FQ0lZqKJRBAyjKfKZFIcKixgVPPn3LTamFfUyPne7qp1Oz0Bn4g5d7vVAIUamJ2FqPZzCW7gvlHabBQvwE2XnlAiFRrOwAAAABJRU5ErkJggg%3D%3D)](https://github.com/the-turing-way/the-turing-way/blob/main/CONTRIBUTING.md) |\n| **Noticias** | [![Twitter Follow](https://img.shields.io/twitter/follow/turingway?style=social)](https://twitter.com/turingway) [![Join our tinyletter mailing list](https://img.shields.io/badge/receive-our%20newsletter%20❤%EF%B8%8F-blueviolet.svg)](https://buttondown.com/turingway)  [![YouTube Channel Views](https://img.shields.io/youtube/channel/views/UCPDxZv5BMzAw0mPobCbMNuA?style=social)](https://www.youtube.com/channel/UCPDxZv5BMzAw0mPobCbMNuA)  |\n| **Chat** | [![Join Slack](https://img.shields.io/badge/Chat-on%20Slack-ff69b4)](https://join.slack.com/t/theturingway/shared_invite/zt-2v7euwuo7-BYstHdKuTNd1ce0puDtBxA) [![GitHub issues](https://img.shields.io/github/issues/the-turing-way/the-turing-way)](https://github.com/the-turing-way/the-turing-way/issues) [![GitHub pull requests](https://img.shields.io/github/issues-pr/the-turing-way/the-turing-way)](https://github.com/the-turing-way/the-turing-way/pulls) |\n| **Compilación** | [![Netlify build](https://github.com/the-turing-way/the-turing-way/workflows/CI/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3ACI+branch%3Amain) [![Latin Phrases](https://github.com/the-turing-way/the-turing-way/workflows/Check%20for%20Latin%20Phrases/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3A%22Check+for+Latin+Phrases%22+branch%3Amain) [![TestFileSizes](https://github.com/the-turing-way/the-turing-way/workflows/TestFileSizes/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3ATestFileSizes+branch%3Amain) [![Check for Lorem Ipsums](https://github.com/the-turing-way/the-turing-way/workflows/Check%20for%20Lorem%20Ipsums/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3A%22Check+for+Lorem+Ipsums%22+branch%3Amain) |\n| **Cita** |  [![Cite this using DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3233853.svg)](https://doi.org/10.5281/zenodo.3233853) |\n\n*Bienvenidos al repositorio de Github del proyecto The Turing Way. Aquí es donde se desarrollan, se revisan y se mantienen todos los componentes del proyecto.*\n\n_The Turing Way_ es una guía práctica para la ciencia de datos reproducible, ética y colaborativa.\nApoyamos una comunidad diversa de colaboradores para conseguir una ciencia de datos accesible, comprensible y efectiva para todos.\nNuestro objetivo es proporcionar toda la información que los investigadores y científicos de datos en la academia, la industria y el sector público necesitan al inicio de sus proyectos para asegurar que sean fáciles de reproducir al final.\n\n[![El proyecto The Turing Way es un libro, una comunidad, un proyecto de código abierto y una cultura de colaboración. Esto se muestra en cuatro ilustraciones, la primera mostrando el libro de Turing Way, la segunda cómo la comunidad puede crecer, la tercera mostrando dos personas colaborando en una pull request, y la última mostrando el balance donde la reproducibilidad es valorada en mayor medida que el número de documentos publicados](../book/figures/README_imgs/README_turingway.png)](https://docs.google.com/presentation/d/13Nm8LcRW87ffxEugGEs5j6HKQEvhiuH8b7MfIdX7MpI/edit#slide=id.p1).\n\n*The Turing Way es un libro, una comunidad y una colaboración global.*\n\nTodas las partes interesadas, incluyendo estudiantes, investigadores/as, ingenieros/as de software, líderes de proyectos y equipos fundadores, están invitados/as a usar The Turing Way para entender sus roles y sus responsabilidades en la reproducibilidad de la ciencia de datos.\nPuede leer el libro [online](https://github.com/the-turing-way/the-turing-way), contribuir al proyecto tal como se describe en nuestras [guías para contribuir al proyecto](https://github.com/the-turing-way/the-turing-way/blob/main/CONTRIBUTING.md) y reutilizar todos los materiales ([ver la Licencia](https://github.com/the-turing-way/the-turing-way/blob/main/LICENSE.md)).\n\n[![Captura de pantalla del libro en línea de Turing Way. También muestra una de las ilustraciónes de Turing Way al comienzo del libro. En esta ilustración, podemos ver una carretera o camino con tiendas para las diferentes habilidades de ciencia de datos. La gente puede entrar y salir con su lista de la compra y escoger lo que necesiten.](../book/figures/README_imgs/README_book.png)](https://book.the-turing-way.org/welcome.html)\n\n*Captura de pantalla del libro en línea de The Turing Way ([usar esta imagen en una presentación](https://drive.google.com/file/d/1wJR664YECSc8b_RSHeyVjDlHs-Ls9lkc/view?usp=sharing))*\n\nThe Turing Way comenzó en 2019 como una pequeña guía de ciencia de datos, y desde entonces se ha expandido hasta formar manual mucho más completo formado por múltiples guías que abarcan varios temas: Investigación Reproducible, Diseño de Proyectos, Comunicación, Colaboración e Investigación Ética.\nCada guía ofrece capítulos sobre una variedad de temas que cubren buenas prácticas y recomendaciones.\nEstos capítulos han sido co-escritos por personas que colaboran y que son estudiantes, investigadores/as, docentes, líderes comunitarios, políticos/as y profesionales de diversos orígenes, experiencias vividas y conocimiento del dominio.\n\n***Nuestro objetivo es hacer que la reproducibilidad sea \"demasiado fácil como para no hacerla\".***\n\n**Tabla de contenidos:**\n\n- [Acerca del proyecto](#acerca-del-proyecto)\n- [El Equipo](#el-equipo)\n- [Contribuir](#contribuir)\n- [Citando _The Turing Way_](#citando-the-turing-way)\n- [Contáctanos](#contáctanos)\n- [Colaboradores](#colaboradores)\n\n🎧 Si prefieres una introducción de audio al proyecto (en inglés) Rachel, una colaboradora del proyecto presentó en el [Open Science Fair 2019](https://www.opensciencefair.eu/) en Oporto y su presentación fue grabada por el [Podcast Orion](https://orionopenscience.podbean.com/e/the-fair-is-in-town-figshare-the-turing-way-and-open-science-quest-at-the-osfair2019/).\nla descripción general del _The Turing Way_ comienza en el minuto 5:13. \n\n### Acerca del Proyecto\n\nLa investigación reproducible es necesaria para garantizar que se pueda confiar en el trabajo científico.\nQuienes financian y editan trabajos científicos están comenzando a exigir que las publicaciones incluyan acceso a los datos utilizados y al código con el que se ha realizado el análisis.\nEl objetivo es garantizar que todos los resultados puedan verificarse de forma independiente y puedan servir como base para trabajos futuros.\nEsto a veces es más fácil decirlo que hacerlo.\nCompartir estos resultados de investigación significa comprender la gestión de datos, bibliotecología, el desarrollo de software y las técnicas de integración continua: habilidades que no se enseñan ni se esperan de los investigadores académicos y científicos de datos.\nComo estas actividades no se enseñan comúnmente, reconocemos que la carga de los requisitos y la adquisición de nuevas habilidades puede ser intimidante para las personas que son nuevas en este mundo.\n*The Turing Way* es un manual para ayudar a quienes estudian, supervisan, financian y editan trabajos científicos a garantizar que la ciencia de datos reproducible sea \"demasiado fácil como para no hacerla\" incluso para personas que nunca antes han trabajado de esta manera.\nIncluirá material de capacitación sobre control de versiones, testeo de análisis y comunicación abierta y transparente con futuras personas usuarias, y se basará en los estudios de caso y talleres del Instituto Turing.\nEste proyecto se desarrolla de manera abierta y todas y cada una de tus preguntas, comentarios y recomendaciones son bienvenidos en nuestro repositorio de github: <https://github.com/the-turing-way/the-turing-way>.\n\n### El equipo\n\n_The Turing Way_ es un proyecto de colaboración abierta e impulsado por la comunidad.\nTodos los que colaboran en este libro, independientemente de lo pequeñas o grande que sean sus contribuciones, están reconocidos en este proyecto como colaboradores y miembros de la comunidad. \nLos colaboradores de larga duración se consideran parte del grupo de colaboradores principal, el cual asume roles de liderazgo en el proyecto.\n\nEl proyecto está coordinado por la líder investigadora **Kirstie Whitaker** (fundadora) y **Malvika Sharan** (desarrolladora de la comunidad) y alojado en [The Alan Turing Institute](https://www.turing.ac.uk/).\n\nPuedes leer cómo se realiza [el proceso de reconocimiento como parte de _The Turing Way_ ](https://book.the-turing-way.org/community-handbook/acknowledgement/acknowledgement-members.html#community-members-contributors-and-co-authors) y el [Registro de Colaboradores](https://book.the-turing-way.org/afterword/contributors-record.html) para conocer cómo se realiza el reconocimiento del trabajo y nuestros colaboradores destacados.\nPor favor visita el [Panel de Colaboradores](#colaboradores) para ver el perfil de Github de todos nuestros colaboradores.\n\n### Contribuir\n\n:construction: Este repositorio es un trabajo en progreso contínuo y **todas las personas** están invitadas a ayudarnos a construir algo que sea útil para los demás. :construction:\n\nSe espera que todas las personas que deseen unirse al proyecto sigan nuestro [código de conducta](../CODE_OF_CONDUCT.md) y que visiten nuestras [guías para contribuir al proyecto](../CONTRIBUTING.md) para más información sobre cómo empezar.\nQueremos conocer a nuestros colaboradores allá donde estén.\nPor lo tanto, proporcionamos múltiples puntos de entrada para que puedas colaborar basados en tus intereses, disponibilidad o habilidades.\n\n![Esta imagen muestra seis tipos de contribuciones que cualquiera puede hacer. Éstas son: Desarrollar y compartir, Mantener y mejorar, Compartir recursos, Revisar y actualizar, Hacerlo global mediante traducciones, y Compartir las mejores prácticas](../book/figures/README_imgs/README_contributions.png)\n\nLas contribuciones incluyen el desarrollo y difusión de nuevos capítulos; matenimiento y mejora de capítulos existentes; compartir recursos de _The Turing Way_; revisar y actualizar materiales anteriormente desarrollados; traducir los capítulos para ayudar a hacer este proyecto accesible de forma global, y compartir las mejores prácticas en la investigación.\n\nLos miembros comunitarios tienen oportunidades de aprender nuevas habilidades, compartir sus ideas y colaborar entre ellos.\nTambién tienen oportunidades de tutoría en el proyecto a medida que hacen sus contribuciones en The Turing Way u otros proyectos de código abierto y están invitadas a asesorar a nuevos participantes en el proyecto.\n\nHemos creado un [paquete de promoción](https://github.com/the-turing-way/the-turing-way/tree/main/communications/promotion-pack) para ayudarle a presentar y compartir The Turing Way en su red.\n\n### Citando _The Turing Way_\n\nPuedes hacer referencia a _The Turing Way_ a través del archivo Zenodo del proyecto usando DOI: [10.5281/zenodo.3233853](https://doi.org/10.5281/zenodo.3233853).\nLos DOI nos permiten archivar el repositorio y son realmente valiosos para garantizar que el trabajo se rastree en las publicaciones académicas.\n\nLa cita tendrá un aspecto similar a este (en inglés):\n\n> The Turing Way Community, Becky Arnold, Louise Bowler, Sarah Gibson, Patricia Herterich, Rosie Higman, … Kirstie Whitaker. (2019, March 25). The Turing Way: A Handbook for Reproducible Data Science (Version v0.0.4). Zenodo. <http://doi.org/10.5281/zenodo.3233986>\n\nTambién puedes compartir la URL legible por humanos a una página del libro, por ejemplo, <https://book.the-turing-way.org/reproducibility/03/definitions.html>, pero ten en cuenta que el proyecto está en desarrollo y, por lo tanto, estos vínculos pueden cambiar con el tiempo.\nEs posible que desees incluir un enlace de archivo web como: <https://web.archive.org/web/20191030093753/https://book.the-turing-way.org/reproducibility/03/definitions.html> para asegurarte de no terminar con enlaces rotos en todas partes.\n\nRealmente agradecemos cualquier referencia que hagas al proyecto _The Turing Way_ y esperamos que sea de utilidad.\nSi tienes alguna pregunta por favor [contáctanos](#get-in-touch).\n\n### Citando las ilustraciones de _The Turing Way_\n<p align=\"center\">\n  <img src=\"../book/figures/evolution-open-research.jpg\" alt=\"Esto es un ejemplo de una de las ilustraciones de The Turing Way. Intenta mostrar la evolución frente a la era de la ciencia abierta\" width=\"600\">\n</p>\n\nLas ilustraciones del _The Turing Way_ se han creado por artistas de [Scriberia](https://www.scriberia.co.uk/) como parte de [_The Turing Way_ book dashes](https://github.com/the-turing-way/the-turing-way/tree/main/workshops/book-dash) en Manchester el 17 de mayo de 2019, en Londres el 28 de mayo de 2019 y el 21 de febrero de 2020.\nLas mismas representan una variedad de contenidos del manual, de los esfuerzos de colaboración en la comunidad y del proyecto _The Turing Way_ en general.\nEstas ilustraciones están disponibles en Zenodo ([https://zenodo.org/record/13882307)](https://zenodo.org/record/13882307) bajo una licencia CC-BY.\n\nCuando utilices cualquiera de las imágenes, por favor incluye la siguiente atribución:\n> Esta imagen fue creada por Scriberia para la comunidad The Turing Way y se usa bajo una licencia CC-BY.\n\nLa última versión de Zenodo se puede citar como:\n> The Turing Way Community, & Scriberia. (2024). Illustrations from the Turing Way book dashes. Zenodo. http://doi.org/10.5281/zenodo.13882307\n\nHemos utilizado algunas de estas ilustraciones en las respuestas a las contribuciones de personas que se integran a esta comunidad en el [Bot de bienvenida](https://github.com/apps/welcome) de este repositorio de GitHub.\n\n### Contáctanos\n\n#### Email\n\nPuede ponerse en contacto con el equipo de *The Turing Way* enviando un correo electrónico a [theturingway@gmail.com](mailto:theturingway@gmail.com) o [turingway@turing.ac.uk](mailto:turingway@turing.ac.uk).\n\n\n\n#### Chat\n\nConectar con otros y compartir tus ideas en Slack usando [este enlace de invitación](https://join.slack.com/t/theturingway/shared_invite/zt-2v7euwuo7-BYstHdKuTNd1ce0puDtBxA).\n\nTenemos una sala de chat de Gitter (si prefieres una alternativa de código abierto para el chat) y nos encantaría que pasaras a saludar a <https://gitter.im/the-turing-way/the-turing-way>.\nEste foro también está sincronizado con [Matrix](https://matrix.org) en [#the-turing-way:matrix.org](https://riot.im/app/#/room/#the-turing-way:matrix.org) y puedes unirte a nosotros allí si lo prefieres.\n\n#### Recibir Actualizaciones\n\nTambién tenemos una lista de correos a la que enviamos actualizaciones mensuales del proyecto.\nSubscríbete en <https://buttondown.com/turingway>.\n\nTambién puedes seguirnos en [Mastodon](https://fosstodon.org/@turingway), [Bluesky](https://bsky.app/profile/turingway.bsky.social) y [Linkedin](https://www.linkedin.com/company/the-turing-way/).\n\n## Colaboradores\n\nGracias a estas personas maravillosas ([emoji key](https://allcontributors.org/docs/en/emoji-key)):\n\n[Lista de personas que han colaborado](https://github.com/the-turing-way/the-turing-way#contributors)\n\nEste proyecto sigue la especificación [all-contributors](https://github.com/all-contributors/all-contributors).\n¡Contribuciones de todo tipo son bienvenidas!\n"
  },
  {
    "path": "README.md",
    "content": "<a href=\"https://book.the-turing-way.org\"><img src=\"book/figures/logo-detail-with-text.svg?raw=true)\" width=\"180\" align=\"Right\" /></a>\n\n# _The Turing Way_\n\n>_This README.md file is also available in Chinese ([README-Chinese](README-translated/README-Chinese.md)), Dutch ([README-Dutch](README-translated/README-Dutch.md)), French ([README-French.md](README-translated/README-French.md)), German ([README-German.md](README-translated/README-German.md)), Indonesian ([README-Indonesian](README-translated/README-Indonesian.md)), Italian ([README-Italian](README-translated/README-Italian.md)), Korean ([README-Korean](README-translated/README-Korean.md)), Portuguese ([README-Portuguese](README-translated/README-Portuguese.md)), and Spanish ([README-Spanish](README-translated/README-Spanish.md)) (listed alphabetically)._\n\n*Total Contributors:*\n\n<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->\n[![All Contributors](https://img.shields.io/badge/all_contributors-567-orange.svg)](#contributors)\n<!-- ALL-CONTRIBUTORS-BADGE:END -->\n\n| Information | Links |\n| :--- | :--- |\n| **Project** | [![Read the book](https://img.shields.io/badge/read-the%20book-blue.svg)](https://book.the-turing-way.org) [![](https://img.shields.io/static/v1?label=TuringWay&message=I%20want%20to%20contribute!&color=yellow&logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8%2F9hAAACYklEQVQ4jXXTy09TQRTH8f5VPhI1xoVxYURNAFcmRleaGDdGXQlKAYkLUARNfICoScGKpTyE3t5bkKD2AUQepUXB0gcgLTalD9rema8LKRVrT3I2k%2Fl95kwyY6BMfQiFqHaoVDlUBoJBZJl9hn8XRsIhqh0abd55tnWdrBA8WfBSpakMhUqhXUCJhKl2aLR65%2FEtLeGc%2BYoy5aHf46bX7cThctK%2BAw2HQkVAW41wzqHRMjNNRteR%2BQzGjg5udZtQ47FiO50gdLZ1nVbvPNUOFSUSxnB4sJ%2F0TjCTTjHk%2BoJl%2BRtqPEaL6zMH79Rw0dyDVVURqRgyn0EkN8jkshwZGsBQodgQyQ2kyDPsce859drjdqLRKE0D%2FZhHR5F6DpHc2B3%2FjF3BcFqxARIpBXXmt9ii67vAYDhIr8fNx0UfE3OzzC0sIHIpxNYqSPEHqFBsiFQMkU3h8vs5%2FvABTeNje6BCj%2FxcwzLlIZHYROq5v4EoIr2JyCbJ57Kobjd3u7o41v4I68pyCfTGrhSvUKHYAJD5bcTWGjKbJJdO4A8E6JyexP4rWgK8Vkb2AjK7hcxnmZybxfF9kff%2BhZJQofvXwhg7O4vAfU2l79ME79xOrjY3c9ZYVzZs8nvZf6%2BRQCRCTgiODg1iCK6vc6WtjZM1tzlRW8sNa99%2Fx64fH%2BNAQz0un49nfh%2BVmspAcKX4lKWUbMbjXOg2cf3Vy%2BLIoRWqekxc7nhB6%2FQ0lZqKJRBAyjKfKZFIcKixgVPPn3LTamFfUyPne7qp1Oz0Bn4g5d7vVAIUamJ2FqPZzCW7gvlHabBQvwE2XnlAiFRrOwAAAABJRU5ErkJggg%3D%3D)](https://github.com/the-turing-way/the-turing-way/blob/main/CONTRIBUTING.md) |\n| **News** | [![Twitter Follow](https://img.shields.io/twitter/follow/turingway?style=social)](https://twitter.com/turingway) [![Mastodon Follow](https://img.shields.io/mastodon/follow/108239013175032418?domain=https%3A%2F%2Ffosstodon.org&style=social)](https://fosstodon.org/@turingway) [![Join our buttondown mailing list](https://img.shields.io/badge/receive-our%20newsletter%20❤%EF%B8%8F-blueviolet.svg)](https://buttondown.email/turingway/)  [![YouTube Channel Views](https://img.shields.io/youtube/channel/views/UCPDxZv5BMzAw0mPobCbMNuA?style=social)](https://www.youtube.com/channel/UCPDxZv5BMzAw0mPobCbMNuA)  |\n| **Chat with us in Slack** | [![Join Slack](https://img.shields.io/badge/Chat-on%20Slack-ff69b4)](https://join.slack.com/t/theturingway/shared_invite/zt-2v7euwuo7-BYstHdKuTNd1ce0puDtBxA) |\n| **Discuss on GitHub** | [![GitHub issues](https://img.shields.io/github/issues/the-turing-way/the-turing-way)](https://github.com/the-turing-way/the-turing-way/issues) [![GitHub pull requests](https://img.shields.io/github/issues-pr/the-turing-way/the-turing-way)](https://github.com/the-turing-way/the-turing-way/pulls) |\n| **Build** | [![Netlify build](https://github.com/the-turing-way/the-turing-way/workflows/CI/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3ACI+branch%3Amain) [![Latin Phrases](https://github.com/the-turing-way/the-turing-way/workflows/Check%20for%20Latin%20Phrases/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3A%22Check+for+Latin+Phrases%22+branch%3Amain) [![TestFileSizes](https://github.com/the-turing-way/the-turing-way/workflows/TestFileSizes/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3ATestFileSizes+branch%3Amain) [![Check for Lorem Ipsums](https://github.com/the-turing-way/the-turing-way/workflows/Check%20for%20Lorem%20Ipsums/badge.svg)](https://github.com/the-turing-way/the-turing-way/actions?query=workflow%3A%22Check+for+Lorem+Ipsums%22+branch%3Amain) |\n| **Cite** |  [![Cite this using DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3233853.svg)](https://doi.org/10.5281/zenodo.3233853) |\n\n*Welcome to The Turing Way project GitHub repository. This is where all the components of the project are developed, reviewed and maintained.*\n\n_The Turing Way_ is a handbook to reproducible, ethical and collaborative data science.\nWe involve and support a diverse community of contributors to make data science accessible, comprehensible and effective for everyone.\nOur goal is to provide all the information that researchers and data scientists in academia, industry and the public sector need at the start of their projects to ensure that they are easy to reproduce at the end.\n\n[![The Turing Way project is a book, community, an open-source project and a culture of collaboration. This is shown in four illustrations, the first one showing the Turing Way book, the second showing how the community can grow, the third one showing two people collaborating on a pull request, the last one is showing a balance where reproducibility is valued more than the number of papers published](book/figures/README_imgs/README_turingway.png)](https://docs.google.com/presentation/d/13Nm8LcRW87ffxEugGEs5j6HKQEvhiuH8b7MfIdX7MpI/edit#slide=id.p1)\n\n*The Turing Way is a book, a community and a global collaboration.*\n\nAll stakeholders, including students, researchers, software engineers, project leaders and funding teams, are encouraged to use _The Turing Way_ to understand their roles and responsibility of reproducibility in data science.\nYou can read the book [online](https://book.the-turing-way.org), contribute to the project as described in our [contribution guidelines](https://github.com/the-turing-way/the-turing-way/blob/main/CONTRIBUTING.md) and re-use all materials ([see the License](https://github.com/the-turing-way/the-turing-way/blob/main/LICENSE.md)). \n**We also invite you to contribute to the translation of _The Turing Way_ into different languages and help make research reproducibility accessible to a wider global audience**. \nIf you are interested in contributing, please refer to [the guidelines provided in the book's handbook](https://book.the-turing-way.org/community-handbook/translation.html) and join our collaborative efforts.\n\n[![This is a screenshot of the online Turing Way book. It also shows one of the Turing Way illustrations at the beginning of the book. In this illustration, there is a road or path with shops for different data science skills. People can go in and out with their shopping cart and pick and choose what they need.](book/figures/README_imgs/README_book.png)](https://book.the-turing-way.org/welcome.html)\n\n*Screenshot of The Turing Way online book ([use this image in a presentation](https://drive.google.com/file/d/1wJR664YECSc8b_RSHeyVjDlHs-Ls9lkc/view?usp=sharing))*\n\nStarted in 2019 as a lightly opinionated guide to data science, _The Turing Way_ has since expanded into a series of guides on Reproducible Research, Project Design, Communication, Collaboration and Ethical Research.\nEach guide offers chapters on a range of topics covering best practices, guidance and recommendations.\nThese chapters have been co-authored by contributors who are students, researchers, educators, community leaders, policy-makers and professionals from diverse backgrounds, lived experiences and domain knowledge.\n\n***Our moonshot goal is to make reproducibility \"too easy not to do\".***\n\n**Table of Contents:**\n\n- [_The Turing Way_](#the-turing-way)\n    - [About the Project](#about-the-project)\n    - [Contributing](#contributing)\n    - [Citing](#citing)\n    - [Get in Touch](#get-in-touch)\n      - [Email](#email)\n      - [Chat](#chat)\n      - [Receive Updates](#receive-updates)\n  - [Contributors](#contributors)\n  - [CROWDIN CONTRIBUTORS](#crowdin-contributors)\n\n🎧 If you prefer an audio introduction to the project, our team member Rachael presented at the [Open Science Fair 2019](https://www.opensciencefair.eu/) in Porto and her demo was recorded by the [Orion podcast](https://orionopenscience.podbean.com/e/the-fair-is-in-town-figshare-the-turing-way-and-open-science-quest-at-the-osfair2019/).\n_The Turing Way_ overview starts at minute 5:13.\n\n### About the Project\n\nReproducible research is necessary to ensure that scientific work can be trusted.\nFunders and publishers are beginning to require that publications include access to the underlying data and the analysis code.\nThe goal is to ensure that all results can be independently verified and built upon in future work.\nThis is sometimes easier said than done.\nSharing these research outputs means understanding data management, library sciences, software development, and continuous integration techniques: skills that are not widely taught or expected of academic researchers and data scientists. \nAs these activities are not commonly taught, we recognise that the burden of requirement and new skill acquisition can be intimidating to individuals who are new to this world.\n_The Turing Way_ is a handbook to support students, their supervisors, funders and journal editors in ensuring that reproducible data science is \"too easy not to do\" even for people who have never worked in this way before.\nIt will include training material on version control, analysis testing, and open and transparent communication with future users, and build on Turing Institute case studies and workshops.\nThis project is openly developed and any and all questions, comments and recommendations are welcome at our GitHub repository: <https://github.com/the-turing-way/the-turing-way>.\n\n### Project Governance\n\n_The Turing Way_ is an open collaboration and community-driven project.\nEveryone who contributes to this book, no matter how small or big their contributions are, is recognised in this project as a contributor and a community member. \nContributors to the various Working Groups are considered part of the Maintenance Level Governance.\nChairs or representatives from these groups who take on leadership roles in the project, join the Steering Committee.\nTheir names are listed in the [Governance Roles document](./GOVERNANCE_ROLES.md).\n\n### Contributing\n\n:construction: This repository is always a work in progress and **everyone** is encouraged to help us build something that is useful to the many. :construction:\n\nEveryone who joins the project is expected to follow our [code of conduct](CODE_OF_CONDUCT.md) and to check out our [contributing guidelines](CONTRIBUTING.md) for more information on how to get started.\nWe want to meet our contributors where they are.\nTherefore, we provide multiple entry points for you to contribute based on your interest, availability or skill requirements.\n\nPlease read the [Ways of Working document](./ways_of_working.md) to identify how members of _The Turing Way_ community collaborate with each other and contribute to the project.\n\n![This image shows six of many kinds of contributions that anyone can make. These are: Develop and share, Maintain and improve, Share resources, Review and update, Make it global through translation, and Share best practices](book/figures/README_imgs/README_contributions.png)\n\n*Contributions include development and sharing of new chapters; maintenance and improvement of existing chapters; sharing _The Turing Way_ resources; review and updating of previously developed materials; translating its chapter to help make this project globally accessible, and sharing best practices in research.*\n\nCommunity members are provided with opportunities to learn new skills, share their ideas and collaborate with others.\nThey are also given mentorship opportunities in the project as they make their contributions to _The Turing Way_ or other open source projects and are encouraged to mentor new participants of the project.\n\nWe have created a [promotion pack](https://github.com/the-turing-way/communications/tree/main/promotion-pack) to help you in presenting and sharing about _The Turing Way_ in your network.\n\n### Citing _The Turing Way_\n\nAll materials in _The Turing Way_ are available under a CC-BY 4.0 licence.\nFor details about citing _The Turing Way_ resources, please refer to the [cite _The Turing Way_ chapter](https://book.the-turing-way.org/foreword/cite) in the Foreword of the book.\n\nThe citation for the book will look something like:\n\n> The Turing Way Community. (2022). The Turing Way: A handbook for reproducible, ethical and collaborative research (1.0.2). Zenodo. DOI 10.5281/zenodo.3233853.\n\nThe citation for our illustrations will look something like:\n\n> The Turing Way Community, & Scriberia. (2020, March 3). Illustrations from the Turing Way book dashes. Zenodo. http://doi.org/10.5281/zenodo.3332807.\n\nYou can cite other assets shared by _The Turing Way_ community using DOI listed in the project's Zenodo community page: [zenodo.org/communities/the-turing-way](https://zenodo.org/communities/the-turing-way).\n\n### Get in Touch\n\n#### Email\n\nYou can contact *The Turing Way* team by emailing [theturingway@gmail.com](mailto:theturingway@gmail.com) or [turingway@turing.ac.uk](mailto:turingway@turing.ac.uk).\n\n#### Chat\n\nConnect with others and discuss your ideas on Slack using [this invitation link](https://join.slack.com/t/theturingway/shared_invite/zt-2v7euwuo7-BYstHdKuTNd1ce0puDtBxA).\n\n#### Receive Updates\n\nWe have a *buttondown* mailing list to which we send monthly project updates.\nSubscribe at <https://buttondown.email/turingway/>.\n\nYou can also follow us on [Mastodon](https://fosstodon.org/@turingway), [Bluesky](https://bsky.app/profile/turingway.bsky.social) and [Linkedin](https://www.linkedin.com/company/the-turing-way/).\n\n## Contributors\n\nThanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):\n\n<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->\n<!-- prettier-ignore-start -->\n<!-- markdownlint-disable -->\n<table>\n  <tbody>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Aakash-Raj-2001\"><img src=\"https://avatars.githubusercontent.com/u/79682170?v=4?s=100\" width=\"100px;\" alt=\"Aakash Raj\"/><br /><sub><b>Aakash Raj</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/aasiyahrashan\"><img src=\"https://avatars.githubusercontent.com/u/9165437?v=4?s=100\" width=\"100px;\" alt=\"Aasiyah Rashan\"/><br /><sub><b>Aasiyah Rashan</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/amefonaffia\"><img src=\"https://avatars.githubusercontent.com/u/20369026?v=4?s=100\" width=\"100px;\" alt=\"Abasi-amefon Affia\"/><br /><sub><b>Abasi-amefon Affia</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/AbcSxyZ\"><img src=\"https://avatars.githubusercontent.com/u/34010605?v=4?s=100\" width=\"100px;\" alt=\"AbcSxyZ\"/><br /><sub><b>AbcSxyZ</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://abelsiqueira.github.io\"><img src=\"https://avatars.githubusercontent.com/u/1068752?v=4?s=100\" width=\"100px;\" alt=\"Abel Siqueira\"/><br /><sub><b>Abel Siqueira</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aabelsiqueira\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://achintyarao.in\"><img src=\"https://avatars.githubusercontent.com/u/7623019?v=4?s=100\" width=\"100px;\" alt=\"Achintya Rao\"/><br /><sub><b>Achintya Rao</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ARaoOfPhysics\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ARaoOfPhysics\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.adina-wagner.com\"><img src=\"https://avatars1.githubusercontent.com/u/29738718?v=4?s=100\" width=\"100px;\" alt=\"Adina Wagner\"/><br /><sub><b>Adina Wagner</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.linkedin.com/in/aditi-dutta-22a299135/\"><img src=\"https://avatars.githubusercontent.com/u/45264620?v=4?s=100\" width=\"100px;\" alt=\"Aditi Dutta\"/><br /><sub><b>Aditi Dutta</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AbooktrackerGirl\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://warwick.ac.uk/aditishenvi\"><img src=\"https://avatars2.githubusercontent.com/u/39489147?v=4?s=100\" width=\"100px;\" alt=\"Aditi Shenvi\"/><br /><sub><b>Aditi Shenvi</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/afzal442\"><img src=\"https://avatars.githubusercontent.com/u/11625672?v=4?s=100\" width=\"100px;\" alt=\"Afzal Ansari\"/><br /><sub><b>Afzal Ansari</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aafzal442\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Ago3\"><img src=\"https://avatars.githubusercontent.com/u/30800478?v=4?s=100\" width=\"100px;\" alt=\"Ago3\"/><br /><sub><b>Ago3</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Hanaffi\"><img src=\"https://avatars.githubusercontent.com/u/35642947?v=4?s=100\" width=\"100px;\" alt=\"Ahmed Essam\"/><br /><sub><b>Ahmed Essam</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AHanaffi\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/AidaMehonic\"><img src=\"https://avatars.githubusercontent.com/u/45169136?v=4?s=100\" width=\"100px;\" alt=\"Aida Mehonic\"/><br /><sub><b>Aida Mehonic</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ahornos\"><img src=\"https://avatars0.githubusercontent.com/u/9551786?v=4?s=100\" width=\"100px;\" alt=\"Albert Hornos Vidal\"/><br /><sub><b>Albert Hornos Vidal</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aahornos\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aahornos\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/aldenc\"><img src=\"https://avatars.githubusercontent.com/u/20688591?v=4?s=100\" width=\"100px;\" alt=\"Alden Conner\"/><br /><sub><b>Alden Conner</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aaldenc\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Tools\">🔧</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/acocac\"><img src=\"https://avatars.githubusercontent.com/u/13321552?v=4?s=100\" width=\"100px;\" alt=\"Alejandro ©\"/><br /><sub><b>Alejandro ©</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=acocac\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aacocac\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/alwil\"><img src=\"https://avatars.githubusercontent.com/u/7210572?v=4?s=100\" width=\"100px;\" alt=\"Aleksandra Ewa Wilczynska\"/><br /><sub><b>Aleksandra Ewa Wilczynska</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aalwil\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/alekszaf\"><img src=\"https://avatars.githubusercontent.com/u/15204615?v=4?s=100\" width=\"100px;\" alt=\"Aleksandra Zaforemska\"/><br /><sub><b>Aleksandra Zaforemska</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://ornithos.github.io/\"><img src=\"https://avatars3.githubusercontent.com/u/8834882?v=4?s=100\" width=\"100px;\" alt=\"Alex Bird\"/><br /><sub><b>Alex Bird</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Tutorials\">✅</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aornithos\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://alexwlchan.net\"><img src=\"https://avatars0.githubusercontent.com/u/301220?v=4?s=100\" width=\"100px;\" alt=\"Alex Chan\"/><br /><sub><b>Alex Chan</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://informationcake.com\"><img src=\"https://avatars3.githubusercontent.com/u/16001543?v=4?s=100\" width=\"100px;\" alt=\"Alex Clarke\"/><br /><sub><b>Alex Clarke</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=informationcake\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://alexmorley.me\"><img src=\"https://avatars2.githubusercontent.com/u/13655521?v=4?s=100\" width=\"100px;\" alt=\"Alexander Morley\"/><br /><sub><b>Alexander Morley</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aalexmorley\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=alexmorley\" title=\"Tests\">⚠️</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/AlexandraAAJ\"><img src=\"https://avatars.githubusercontent.com/u/124181438?v=4?s=100\" width=\"100px;\" alt=\"Alexandra Araujo Alvarez\"/><br /><sub><b>Alexandra Araujo Alvarez</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org\" title=\"Examples\">💡</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=AlexandraAAJ\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AAlexandraAAJ\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.saral.it\"><img src=\"https://avatars1.githubusercontent.com/u/11707417?v=4?s=100\" width=\"100px;\" alt=\"Ali Seyhun Saral\"/><br /><sub><b>Ali Seyhun Saral</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=seyhunsaral\" title=\"Documentation\">📖</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.saral.it\"><img src=\"https://avatars.githubusercontent.com/u/82848414?v=4?s=100\" width=\"100px;\" alt=\"Ali Seyhun Saral\"/><br /><sub><b>Ali Seyhun Saral</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aaseyq\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/amasud08\"><img src=\"https://avatars.githubusercontent.com/u/93528449?v=4?s=100\" width=\"100px;\" alt=\"Ambreen Masud\"/><br /><sub><b>Ambreen Masud</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/kir0ul\"><img src=\"https://avatars3.githubusercontent.com/u/6053592?v=4?s=100\" width=\"100px;\" alt=\"Andrea Pierré\"/><br /><sub><b>Andrea Pierré</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Akir0ul\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://andreasancheztapia.netlify.app/\"><img src=\"https://avatars.githubusercontent.com/u/4183062?v=4?s=100\" width=\"100px;\" alt=\"Andrea Sánchez-Tapia (she/her)\"/><br /><sub><b>Andrea Sánchez-Tapia (she/her)</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AAndreaSanchezTapia\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AAndreaSanchezTapia\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/andreea-avramescu\"><img src=\"https://avatars.githubusercontent.com/u/33720256?v=4?s=100\" width=\"100px;\" alt=\"Andreea Avramescu\"/><br /><sub><b>Andreea Avramescu</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://inwaves.io\"><img src=\"https://avatars.githubusercontent.com/u/8530685?v=4?s=100\" width=\"100px;\" alt=\"Andrei Alexandru\"/><br /><sub><b>Andrei Alexandru</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ainwaves\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ainwaves\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://anicusan.github.io\"><img src=\"https://avatars.githubusercontent.com/u/20279119?v=4?s=100\" width=\"100px;\" alt=\"Andrei Leonard Nicusan\"/><br /><sub><b>Andrei Leonard Nicusan</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://scholar.google.co.uk/citations?user=o0cD2JgAAAAJ&hl=en\"><img src=\"https://avatars3.githubusercontent.com/u/26226804?v=4?s=100\" width=\"100px;\" alt=\"Andrew Stewart\"/><br /><sub><b>Andrew Stewart</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Tutorials\">✅</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.linkedin.com/in/andriannobella\"><img src=\"https://avatars0.githubusercontent.com/u/57834926?v=4?s=100\" width=\"100px;\" alt=\"Andrian Nobella\"/><br /><sub><b>Andrian Nobella</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.astro.rug.nl/~ramos\"><img src=\"https://avatars.githubusercontent.com/u/13357890?v=4?s=100\" width=\"100px;\" alt=\"Andrés Ramos\"/><br /><sub><b>Andrés Ramos</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://anjackson.net\"><img src=\"https://avatars.githubusercontent.com/u/87843?v=4?s=100\" width=\"100px;\" alt=\"Andy Jackson\"/><br /><sub><b>Andy Jackson</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aanjackson\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/zimolzak\"><img src=\"https://avatars.githubusercontent.com/u/2705315?v=4?s=100\" width=\"100px;\" alt=\"Andy Zimolzak\"/><br /><sub><b>Andy Zimolzak</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Azimolzak\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/AngelikaKerlin\"><img src=\"https://avatars.githubusercontent.com/u/115996571?v=4?s=100\" width=\"100px;\" alt=\"AngelikaKerlin\"/><br /><sub><b>AngelikaKerlin</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AAngelikaKerlin\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://varlotta.xyz\"><img src=\"https://avatars3.githubusercontent.com/u/5478922?v=4?s=100\" width=\"100px;\" alt=\"Angelo Varlotta\"/><br /><sub><b>Angelo Varlotta</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://oieltd.com\"><img src=\"https://avatars.githubusercontent.com/u/1248413?v=4?s=100\" width=\"100px;\" alt=\"Angus Hollands\"/><br /><sub><b>Angus Hollands</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aagoose77\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/aniketh-varma\"><img src=\"https://avatars.githubusercontent.com/u/55805574?v=4?s=100\" width=\"100px;\" alt=\"Aniketh Varma\"/><br /><sub><b>Aniketh Varma</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aaniketh-varma\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/AnkitaGarg95\"><img src=\"https://avatars.githubusercontent.com/u/70006784?v=4?s=100\" width=\"100px;\" alt=\"AnkitaGarg95\"/><br /><sub><b>AnkitaGarg95</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/amallon\"><img src=\"https://avatars.githubusercontent.com/u/35258603?v=4?s=100\" width=\"100px;\" alt=\"Ann-Marie Mallon\"/><br /><sub><b>Ann-Marie Mallon</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/annahadji\"><img src=\"https://avatars0.githubusercontent.com/u/14828356?v=4?s=100\" width=\"100px;\" alt=\"Anna Hadjitofi\"/><br /><sub><b>Anna Hadjitofi</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://book.the-turing-way.org\" title=\"Tutorials\">✅</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.annakrystalli.me/\"><img src=\"https://avatars1.githubusercontent.com/u/5583057?v=4?s=100\" width=\"100px;\" alt=\"Anna Krystalli\"/><br /><sub><b>Anna Krystalli</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://book.the-turing-way.org\" title=\"Examples\">💡</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aannakrystalli\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Tutorials\">✅</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ciupava\"><img src=\"https://avatars.githubusercontent.com/u/3450313?v=4?s=100\" width=\"100px;\" alt=\"Anna Zanchetta\"/><br /><sub><b>Anna Zanchetta</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://annabelelizabethwhipp.github.io/homepage\"><img src=\"https://avatars0.githubusercontent.com/u/32568227?v=4?s=100\" width=\"100px;\" alt=\"Annabel Elizabeth Whipp\"/><br /><sub><b>Annabel Elizabeth Whipp</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.mn.uio.no/geo/english/people/adm/annefou/\"><img src=\"https://avatars.githubusercontent.com/u/8168508?v=4?s=100\" width=\"100px;\" alt=\"Anne Fouilloux\"/><br /><sub><b>Anne Fouilloux</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.aleesteele.com\"><img src=\"https://avatars.githubusercontent.com/u/18509789?v=4?s=100\" width=\"100px;\" alt=\"Anne Lee Steele\"/><br /><sub><b>Anne Lee Steele</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aaleesteele\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aaleesteele\" title=\"Bug reports\">🐛</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=aleesteele\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a> <a href=\"https://book.the-turing-way.org\" title=\"Tutorials\">✅</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Videos\">📹</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/AnneliesPieterman-Bos\"><img src=\"https://avatars.githubusercontent.com/u/213759116?v=4?s=100\" width=\"100px;\" alt=\"AnneliesPieterman-Bos\"/><br /><sub><b>AnneliesPieterman-Bos</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AAnneliesPieterman-Bos\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Annetrude\"><img src=\"https://avatars.githubusercontent.com/u/195094341?v=4?s=100\" width=\"100px;\" alt=\"Annetrude de Mooij\"/><br /><sub><b>Annetrude de Mooij</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AAnnetrude\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/AoifeHughes\"><img src=\"https://avatars.githubusercontent.com/u/10923695?v=4?s=100\" width=\"100px;\" alt=\"Aoife\"/><br /><sub><b>Aoife</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AAoifeHughes\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://linkedin.com/in/arasselvi\"><img src=\"https://avatars.githubusercontent.com/u/55166614?v=4?s=100\" width=\"100px;\" alt=\"Aras Selvi\"/><br /><sub><b>Aras Selvi</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://arduin.io\"><img src=\"https://avatars.githubusercontent.com/u/75615911?v=4?s=100\" width=\"100px;\" alt=\"Arduin\"/><br /><sub><b>Arduin</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Arielle-Bennett\"><img src=\"https://avatars.githubusercontent.com/u/74651964?v=4?s=100\" width=\"100px;\" alt=\"Arielle-Bennett\"/><br /><sub><b>Arielle-Bennett</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AArielle-Bennett\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AArielle-Bennett\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.getmarkup.com\"><img src=\"https://avatars.githubusercontent.com/u/4941299?v=4?s=100\" width=\"100px;\" alt=\"Arron Lacey\"/><br /><sub><b>Arron Lacey</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aarronlacey\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/arya1302\"><img src=\"https://avatars.githubusercontent.com/u/73542599?v=4?s=100\" width=\"100px;\" alt=\"Arya A\"/><br /><sub><b>Arya A</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=arya1302\" title=\"Code\">💻</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aarya1302\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=arya1302\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aarya1302\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://book.the-turing-way.org\" title=\"User Testing\">📓</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=arya1302\" title=\"Tests\">⚠️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://aryanuwu.myportfolio.com/\"><img src=\"https://avatars.githubusercontent.com/u/26514224?v=4?s=100\" width=\"100px;\" alt=\"Aryan nath\"/><br /><sub><b>Aryan nath</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AAryannath\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://asmakacem.me/\"><img src=\"https://avatars.githubusercontent.com/u/73066984?v=4?s=100\" width=\"100px;\" alt=\"Asma Kacem\"/><br /><sub><b>Asma Kacem</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AAsmaKacem1\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/augustinas1\"><img src=\"https://avatars1.githubusercontent.com/u/10000223?v=4?s=100\" width=\"100px;\" alt=\"Augustinas Sukys\"/><br /><sub><b>Augustinas Sukys</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Avaga123\"><img src=\"https://avatars.githubusercontent.com/u/112536906?v=4?s=100\" width=\"100px;\" alt=\"Avaga123\"/><br /><sub><b>Avaga123</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://barbaravreede.com\"><img src=\"https://avatars2.githubusercontent.com/u/5747405?v=4?s=100\" width=\"100px;\" alt=\"Barbara Vreede\"/><br /><sub><b>Barbara Vreede</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://tzovar.as\"><img src=\"https://avatars.githubusercontent.com/u/674899?v=4?s=100\" width=\"100px;\" alt=\"Bastian Greshake Tzovaras\"/><br /><sub><b>Bastian Greshake Tzovaras</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Agedankenstuecke\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://medium.com/@batool664\"><img src=\"https://avatars1.githubusercontent.com/u/53487593?v=4?s=100\" width=\"100px;\" alt=\"Batool\"/><br /><sub><b>Batool</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ABatoolMM\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=BatoolMM\" title=\"Documentation\">📖</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://beckigreen.netlify.app\"><img src=\"https://avatars.githubusercontent.com/u/77735779?v=4?s=100\" width=\"100px;\" alt=\"Becki Green\"/><br /><sub><b>Becki Green</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/r-j-arnold\"><img src=\"https://avatars1.githubusercontent.com/u/20441134?v=4?s=100\" width=\"100px;\" alt=\"Becky Arnold\"/><br /><sub><b>Becky Arnold</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=r-j-arnold\" title=\"Code\">💻</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=r-j-arnold\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ar-j-arnold\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/benvanwerkhoven\"><img src=\"https://avatars.githubusercontent.com/u/2337546?v=4?s=100\" width=\"100px;\" alt=\"Ben van Werkhoven\"/><br /><sub><b>Ben van Werkhoven</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/BenjaminMummery\"><img src=\"https://avatars3.githubusercontent.com/u/46931690?v=4?s=100\" width=\"100px;\" alt=\"Benjamin Mummery\"/><br /><sub><b>Benjamin Mummery</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/AlfAWolf140\"><img src=\"https://avatars2.githubusercontent.com/u/29063219?v=4?s=100\" width=\"100px;\" alt=\"Beth Montague-Hellen\"/><br /><sub><b>Beth Montague-Hellen</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=AlfAWolf140\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/bbartholdy\"><img src=\"https://avatars.githubusercontent.com/u/47455812?v=4?s=100\" width=\"100px;\" alt=\"Bjørn Peare Bartholdy\"/><br /><sub><b>Bjørn Peare Bartholdy</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Abbartholdy\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/bouweandela\"><img src=\"https://avatars3.githubusercontent.com/u/5430937?v=4?s=100\" width=\"100px;\" alt=\"Bouwe Andela\"/><br /><sub><b>Bouwe Andela</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Abouweandela\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://brndnlee.me/\"><img src=\"https://avatars3.githubusercontent.com/u/39078797?v=4?s=100\" width=\"100px;\" alt=\"Brandon Lee\"/><br /><sub><b>Brandon Lee</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ablee1710\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/brechtjehuiskes\"><img src=\"https://avatars.githubusercontent.com/u/243357208?v=4?s=100\" width=\"100px;\" alt=\"Brechtje\"/><br /><sub><b>Brechtje</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Abrechtjehuiskes\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://brianoneil.netlify.app/\"><img src=\"https://avatars.githubusercontent.com/u/102704305?v=4?s=100\" width=\"100px;\" alt=\"Brian O'Neil\"/><br /><sub><b>Brian O'Neil</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ABrianAndrewOneil\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://bsipocz.github.io/\"><img src=\"https://avatars1.githubusercontent.com/u/6788290?v=4?s=100\" width=\"100px;\" alt=\"Brigitta Sipőcz\"/><br /><sub><b>Brigitta Sipőcz</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Absipocz\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Tools\">🔧</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Absipocz\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/bcamino\"><img src=\"https://avatars.githubusercontent.com/u/39554331?v=4?s=100\" width=\"100px;\" alt=\"Bruno Camino\"/><br /><sub><b>Bruno Camino</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/BuildingTech24\"><img src=\"https://avatars.githubusercontent.com/u/257283328?v=4?s=100\" width=\"100px;\" alt=\"BuildingTech24\"/><br /><sub><b>BuildingTech24</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ABuildingTech24\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/CDonesCU\"><img src=\"https://avatars.githubusercontent.com/u/169474876?v=4?s=100\" width=\"100px;\" alt=\"CDonesCU\"/><br /><sub><b>CDonesCU</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/callummole\"><img src=\"https://avatars1.githubusercontent.com/u/22677759?v=4?s=100\" width=\"100px;\" alt=\"Callum Mole\"/><br /><sub><b>Callum Mole</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://trotts.io\"><img src=\"https://avatars3.githubusercontent.com/u/9531671?v=4?s=100\" width=\"100px;\" alt=\"Cameron Trotter\"/><br /><sub><b>Cameron Trotter</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/crangelsmith\"><img src=\"https://avatars2.githubusercontent.com/u/11162074?v=4?s=100\" width=\"100px;\" alt=\"Camila Rangel Smith\"/><br /><sub><b>Camila Rangel Smith</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=crangelsmith\" title=\"Documentation\">📖</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/CariHV\"><img src=\"https://avatars.githubusercontent.com/u/82444709?v=4?s=100\" width=\"100px;\" alt=\"Cari Hyde-Vaamonde\"/><br /><sub><b>Cari Hyde-Vaamonde</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ACariHV\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/c-martinez\"><img src=\"https://avatars3.githubusercontent.com/u/7782231?v=4?s=100\" width=\"100px;\" alt=\"Carlos Martinez\"/><br /><sub><b>Carlos Martinez</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ac-martinez\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ac-martinez\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/vladoxNCL\"><img src=\"https://avatars0.githubusercontent.com/u/33488410?v=4?s=100\" width=\"100px;\" alt=\"Carlos Vladimiro González Zelaya\"/><br /><sub><b>Carlos Vladimiro González Zelaya</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/CarlosMFerr\"><img src=\"https://avatars.githubusercontent.com/u/111580443?v=4?s=100\" width=\"100px;\" alt=\"CarlosMFerr\"/><br /><sub><b>CarlosMFerr</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/cassgvp\"><img src=\"https://avatars2.githubusercontent.com/u/43407869?v=4?s=100\" width=\"100px;\" alt=\"Cassandra Gould van Praag\"/><br /><sub><b>Cassandra Gould van Praag</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=cassgvp\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Acassgvp\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/cecibaldoni\"><img src=\"https://avatars.githubusercontent.com/u/111133332?v=4?s=100\" width=\"100px;\" alt=\"Cecilia Baldoni\"/><br /><sub><b>Cecilia Baldoni</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Cedeli\"><img src=\"https://avatars.githubusercontent.com/u/96904745?v=4?s=100\" width=\"100px;\" alt=\"Ced\"/><br /><sub><b>Ced</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/CeilidhWelsh\"><img src=\"https://avatars.githubusercontent.com/u/71887891?v=4?s=100\" width=\"100px;\" alt=\"CeilidhWelsh\"/><br /><sub><b>CeilidhWelsh</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/cemulus\"><img src=\"https://avatars3.githubusercontent.com/u/55829938?v=4?s=100\" width=\"100px;\" alt=\"Cem Ulus\"/><br /><sub><b>Cem Ulus</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://cghlewis.com\"><img src=\"https://avatars.githubusercontent.com/u/33465957?v=4?s=100\" width=\"100px;\" alt=\"Cghlewis\"/><br /><sub><b>Cghlewis</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ACghlewis\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/chadsgilbert\"><img src=\"https://avatars1.githubusercontent.com/u/524598?v=4?s=100\" width=\"100px;\" alt=\"Chad Gilbert\"/><br /><sub><b>Chad Gilbert</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Achadsgilbert\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://chandlerklein.com\"><img src=\"https://avatars3.githubusercontent.com/u/18371945?v=4?s=100\" width=\"100px;\" alt=\"Chandler Klein\"/><br /><sub><b>Chandler Klein</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AChandlerKlein\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/illushka\"><img src=\"https://avatars1.githubusercontent.com/u/8143964?v=4?s=100\" width=\"100px;\" alt=\"Chanuki Illushka Seresinhe\"/><br /><sub><b>Chanuki Illushka Seresinhe</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=illushka\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ccoulombe\"><img src=\"https://avatars.githubusercontent.com/u/22602168?v=4?s=100\" width=\"100px;\" alt=\"Charles Coulombe\"/><br /><sub><b>Charles Coulombe</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/watson-c\"><img src=\"https://avatars3.githubusercontent.com/u/48691807?v=4?s=100\" width=\"100px;\" alt=\"Charlotte Watson\"/><br /><sub><b>Charlotte Watson</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://andreaczhang.github.io\"><img src=\"https://avatars.githubusercontent.com/u/32897643?v=4?s=100\" width=\"100px;\" alt=\"Chi Zhang\"/><br /><sub><b>Chi Zhang</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aandreaczhang\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://chjh.nl\"><img src=\"https://avatars.githubusercontent.com/u/2946344?v=4?s=100\" width=\"100px;\" alt=\"Chris Hartgerink\"/><br /><sub><b>Chris Hartgerink</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://chrisholdgraf.com\"><img src=\"https://avatars1.githubusercontent.com/u/1839645?v=4?s=100\" width=\"100px;\" alt=\"Chris Holdgraf\"/><br /><sub><b>Chris Holdgraf</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/effigies\"><img src=\"https://avatars0.githubusercontent.com/u/83442?v=4?s=100\" width=\"100px;\" alt=\"Chris Markiewicz\"/><br /><sub><b>Chris Markiewicz</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://ctomlinson.net\"><img src=\"https://avatars.githubusercontent.com/u/46465574?v=4?s=100\" width=\"100px;\" alt=\"Chris Tomlinson\"/><br /><sub><b>Chris Tomlinson</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Chrisisour\"><img src=\"https://avatars2.githubusercontent.com/u/49248075?v=4?s=100\" width=\"100px;\" alt=\"Christina Hitrova\"/><br /><sub><b>Christina Hitrova</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://chrisdburr.github.io\"><img src=\"https://avatars.githubusercontent.com/u/63010234?v=4?s=100\" width=\"100px;\" alt=\"Christopher Burr\"/><br /><sub><b>Christopher Burr</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://christopherlovell.co.uk\"><img src=\"https://avatars3.githubusercontent.com/u/4648092?v=4?s=100\" width=\"100px;\" alt=\"Christopher Lovell\"/><br /><sub><b>Christopher Lovell</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ClareLiggins\"><img src=\"https://avatars3.githubusercontent.com/u/47981871?v=4?s=100\" width=\"100px;\" alt=\"Clare Liggins\"/><br /><sub><b>Clare Liggins</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=ClareLiggins\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ClauFischer\"><img src=\"https://avatars.githubusercontent.com/u/104078689?v=4?s=100\" width=\"100px;\" alt=\"ClauFischer\"/><br /><sub><b>ClauFischer</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AClauFischer\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ClaudiaCAU\"><img src=\"https://avatars.githubusercontent.com/u/32701238?v=4?s=100\" width=\"100px;\" alt=\"ClaudiaCAU\"/><br /><sub><b>ClaudiaCAU</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AClaudiaCAU\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://users.aber.ac.uk/cos\"><img src=\"https://avatars3.githubusercontent.com/u/1053628?v=4?s=100\" width=\"100px;\" alt=\"Colin Sauze\"/><br /><sub><b>Colin Sauze</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://collinschwantes.github.io\"><img src=\"https://avatars.githubusercontent.com/u/6107885?v=4?s=100\" width=\"100px;\" alt=\"Collin Schwantes\"/><br /><sub><b>Collin Schwantes</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Acollinschwantes\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/DSrinivasKarthik\"><img src=\"https://avatars.githubusercontent.com/u/139240749?v=4?s=100\" width=\"100px;\" alt=\"D Srinivas Karthik\"/><br /><sub><b>D Srinivas Karthik</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ADSrinivasKarthik\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/DACNC\"><img src=\"https://avatars.githubusercontent.com/u/57093439?v=4?s=100\" width=\"100px;\" alt=\"DACNC\"/><br /><sub><b>DACNC</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/DDelbarre\"><img src=\"https://avatars.githubusercontent.com/u/108824056?v=4?s=100\" width=\"100px;\" alt=\"DDelbarre\"/><br /><sub><b>DDelbarre</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/DaisyParry\"><img src=\"https://avatars.githubusercontent.com/u/56261324?v=4?s=100\" width=\"100px;\" alt=\"DaisyParry\"/><br /><sub><b>DaisyParry</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ubdbra001\"><img src=\"https://avatars.githubusercontent.com/u/18421270?v=4?s=100\" width=\"100px;\" alt=\"Dan Brady\"/><br /><sub><b>Dan Brady</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aubdbra001\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://spot.colorado.edu/~daho1668/\"><img src=\"https://avatars3.githubusercontent.com/u/6867260?v=4?s=100\" width=\"100px;\" alt=\"Dan Hobley\"/><br /><sub><b>Dan Hobley</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=SiccarPoint\" title=\"Documentation\">📖</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/kerchner\"><img src=\"https://avatars.githubusercontent.com/u/3451175?v=4?s=100\" width=\"100px;\" alt=\"Dan Kerchner\"/><br /><sub><b>Dan Kerchner</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Akerchner\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://cv.shearer.org\"><img src=\"https://avatars.githubusercontent.com/u/3944577?v=4?s=100\" width=\"100px;\" alt=\"Dan Shearer\"/><br /><sub><b>Dan Shearer</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/taunsquared\"><img src=\"https://avatars1.githubusercontent.com/u/27739141?v=4?s=100\" width=\"100px;\" alt=\"Danbee Kim\"/><br /><sub><b>Danbee Kim</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=taunsquared\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/dlintott\"><img src=\"https://avatars2.githubusercontent.com/u/4700562?v=4?s=100\" width=\"100px;\" alt=\"Daniel Lintott\"/><br /><sub><b>Daniel Lintott</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Adlintott\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://orcid.org/0000-0001-9488-1870\"><img src=\"https://avatars3.githubusercontent.com/u/465923?v=4?s=100\" width=\"100px;\" alt=\"Daniel Mietchen\"/><br /><sub><b>Daniel Mietchen</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ADaniel-Mietchen\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://nordholmen.net\"><img src=\"https://avatars1.githubusercontent.com/u/1325054?v=4?s=100\" width=\"100px;\" alt=\"Daniel Nüst\"/><br /><sub><b>Daniel Nüst</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://dannygarside.co.uk\"><img src=\"https://avatars3.githubusercontent.com/u/3739866?v=4?s=100\" width=\"100px;\" alt=\"Danny Garside\"/><br /><sub><b>Danny Garside</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ada5nsy\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ada5nsy\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Tools\">🔧</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/dpdong19\"><img src=\"https://avatars.githubusercontent.com/u/54056456?v=4?s=100\" width=\"100px;\" alt=\"Danping\"/><br /><sub><b>Danping</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Adpdong19\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/foster999\"><img src=\"https://avatars0.githubusercontent.com/u/31405412?v=4?s=100\" width=\"100px;\" alt=\"David Foster\"/><br /><sub><b>David Foster</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Afoster999\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Afoster999\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://research.ncl.ac.uk/geospatial-systems/phdresearchers/profiles/davidgregg.html\"><img src=\"https://avatars.githubusercontent.com/u/45788793?v=4?s=100\" width=\"100px;\" alt=\"David Gregg\"/><br /><sub><b>David Gregg</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.flypig.co.uk\"><img src=\"https://avatars.githubusercontent.com/u/1446122?v=4?s=100\" width=\"100px;\" alt=\"David Llewellyn-Jones\"/><br /><sub><b>David Llewellyn-Jones</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Allewelld\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://dpshelio.github.io\"><img src=\"https://avatars.githubusercontent.com/u/963242?v=4?s=100\" width=\"100px;\" alt=\"David Pérez-Suárez\"/><br /><sub><b>David Pérez-Suárez</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.davidstansby.com\"><img src=\"https://avatars0.githubusercontent.com/u/6197628?v=4?s=100\" width=\"100px;\" alt=\"David Stansby\"/><br /><sub><b>David Stansby</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/DerienFe\"><img src=\"https://avatars3.githubusercontent.com/u/55786232?v=4?s=100\" width=\"100px;\" alt=\"DerienFe\"/><br /><sub><b>DerienFe</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.imperial.ac.uk/quantum-photovoltaics\"><img src=\"https://avatars1.githubusercontent.com/u/6095790?v=4?s=100\" width=\"100px;\" alt=\"Diego Alonso Alvarez\"/><br /><sub><b>Diego Alonso Alvarez</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Adalonsoa\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/DiegoOLopez\"><img src=\"https://avatars.githubusercontent.com/u/92211663?v=4?s=100\" width=\"100px;\" alt=\"Diego O Lopez\"/><br /><sub><b>Diego O Lopez</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://dblana.github.io/\"><img src=\"https://avatars0.githubusercontent.com/u/13907429?v=4?s=100\" width=\"100px;\" alt=\"Dimitra Blana\"/><br /><sub><b>Dimitra Blana</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Adblana\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/dineshkumar12004\"><img src=\"https://avatars.githubusercontent.com/u/67814205?v=4?s=100\" width=\"100px;\" alt=\"Dinesh kumar\"/><br /><sub><b>Dinesh kumar</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Adineshkumar12004\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.dorienhuijser.com\"><img src=\"https://avatars.githubusercontent.com/u/58177697?v=4?s=100\" width=\"100px;\" alt=\"Dorien Huijser\"/><br /><sub><b>Dorien Huijser</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/mitre88\"><img src=\"https://avatars.githubusercontent.com/u/30060514?v=4?s=100\" width=\"100px;\" alt=\"Dr Alex Mitre\"/><br /><sub><b>Dr Alex Mitre</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Amitre88\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://owainkenwayucl.github.io/\"><img src=\"https://avatars.githubusercontent.com/u/4256093?v=4?s=100\" width=\"100px;\" alt=\"Dr Owain Kenway\"/><br /><sub><b>Dr Owain Kenway</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://edchalstrey.com/\"><img src=\"https://avatars.githubusercontent.com/u/5486164?v=4?s=100\" width=\"100px;\" alt=\"Ed Chalstrey\"/><br /><sub><b>Ed Chalstrey</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aedwardchalstrey1\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.linkedin.com/in/edwin-ajong-51601a217/\"><img src=\"https://avatars.githubusercontent.com/u/80322163?v=4?s=100\" width=\"100px;\" alt=\"Edwin Ajong\"/><br /><sub><b>Edwin Ajong</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aeddybruv\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://emalliaraki.com\"><img src=\"https://avatars3.githubusercontent.com/u/36627260?v=4?s=100\" width=\"100px;\" alt=\"Eirini Malliaraki\"/><br /><sub><b>Eirini Malliaraki</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=rockita\" title=\"Documentation\">📖</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/eirini-zormpa\"><img src=\"https://avatars3.githubusercontent.com/u/30151074?v=4?s=100\" width=\"100px;\" alt=\"Eirini Zormpa\"/><br /><sub><b>Eirini Zormpa</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aeirini-zormpa\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aeirini-zormpa\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Elisarau\"><img src=\"https://avatars.githubusercontent.com/u/88763664?v=4?s=100\" width=\"100px;\" alt=\"Elisa Rauseo\"/><br /><sub><b>Elisa Rauseo</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Elisa-on-GitHub\"><img src=\"https://avatars.githubusercontent.com/u/78543806?v=4?s=100\" width=\"100px;\" alt=\"Elisa-on-GitHub\"/><br /><sub><b>Elisa-on-GitHub</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AElisa-on-GitHub\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://emdupre.me\"><img src=\"https://avatars3.githubusercontent.com/u/15017191?v=4?s=100\" width=\"100px;\" alt=\"Elizabeth DuPre\"/><br /><sub><b>Elizabeth DuPre</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aemdupre\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/EKaroune\"><img src=\"https://avatars2.githubusercontent.com/u/58147174?v=4?s=100\" width=\"100px;\" alt=\"Em K\"/><br /><sub><b>Em K</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AEKaroune\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/newsletter\" title=\"Blogposts\">📝</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AEKaroune\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ereynaud\"><img src=\"https://avatars.githubusercontent.com/u/12295393?v=4?s=100\" width=\"100px;\" alt=\"Emmanuel G. REYNAUD\"/><br /><sub><b>Emmanuel G. REYNAUD</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://emmyft.github.io\"><img src=\"https://avatars.githubusercontent.com/u/24935760?v=4?s=100\" width=\"100px;\" alt=\"Emmy Tsang\"/><br /><sub><b>Emmy Tsang</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.glerean.com\"><img src=\"https://avatars1.githubusercontent.com/u/8993301?v=4?s=100\" width=\"100px;\" alt=\"Enrico Glerean\"/><br /><sub><b>Enrico Glerean</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aeglerean\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/edaub\"><img src=\"https://avatars0.githubusercontent.com/u/45598892?v=4?s=100\" width=\"100px;\" alt=\"Eric Daub\"/><br /><sub><b>Eric Daub</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=edaub\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://erictleung.com\"><img src=\"https://avatars2.githubusercontent.com/u/2754821?v=4?s=100\" width=\"100px;\" alt=\"Eric Leung\"/><br /><sub><b>Eric Leung</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aerictleung\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.ericrscott.com\"><img src=\"https://avatars2.githubusercontent.com/u/25404783?v=4?s=100\" width=\"100px;\" alt=\"Eric R Scott\"/><br /><sub><b>Eric R Scott</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AAariq\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/EstherPlomp\"><img src=\"https://avatars1.githubusercontent.com/u/46314469?v=4?s=100\" width=\"100px;\" alt=\"Esther Plomp\"/><br /><sub><b>Esther Plomp</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AEstherPlomp\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AEstherPlomp\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a> <a href=\"https://github.com/the-turing-way/newsletter\" title=\"Blogposts\">📝</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://evelinag.com\"><img src=\"https://avatars2.githubusercontent.com/u/5541162?v=4?s=100\" width=\"100px;\" alt=\"Evelina Gabasova\"/><br /><sub><b>Evelina Gabasova</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aevelinag\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/fdiblen\"><img src=\"https://avatars.githubusercontent.com/u/144492?v=4?s=100\" width=\"100px;\" alt=\"Faruk D.\"/><br /><sub><b>Faruk D.</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://federiconanni.com/\"><img src=\"https://avatars2.githubusercontent.com/u/8415204?v=4?s=100\" width=\"100px;\" alt=\"Federico Nanni\"/><br /><sub><b>Federico Nanni</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Afedenanni\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Afedenanni\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.turing.ac.uk/people/doctoral-students/ferran-gonzalez-hernandez\"><img src=\"https://avatars0.githubusercontent.com/u/43019129?v=4?s=100\" width=\"100px;\" alt=\"Ferran Gonzalez Hernandez\"/><br /><sub><b>Ferran Gonzalez Hernandez</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://flavio2018.github.io\"><img src=\"https://avatars.githubusercontent.com/u/39437769?v=4?s=100\" width=\"100px;\" alt=\"Flavio Petruzzellis\"/><br /><sub><b>Flavio Petruzzellis</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aflavio2018\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://asquera.de\"><img src=\"https://avatars2.githubusercontent.com/u/47542?v=4?s=100\" width=\"100px;\" alt=\"Florian Gilcher\"/><br /><sub><b>Florian Gilcher</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Askade\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://francescooper.net\"><img src=\"https://avatars3.githubusercontent.com/u/14854230?v=4?s=100\" width=\"100px;\" alt=\"Frances Cooper\"/><br /><sub><b>Frances Cooper</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/FrancesMadden\"><img src=\"https://avatars3.githubusercontent.com/u/52208466?v=4?s=100\" width=\"100px;\" alt=\"Frances Madden\"/><br /><sub><b>Frances Madden</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/fwkoch\"><img src=\"https://avatars.githubusercontent.com/u/9453731?v=4?s=100\" width=\"100px;\" alt=\"Franklin Koch\"/><br /><sub><b>Franklin Koch</b></sub></a><br /><a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/FreekPols\"><img src=\"https://avatars.githubusercontent.com/u/55780866?v=4?s=100\" width=\"100px;\" alt=\"Freek Pols\"/><br /><sub><b>Freek Pols</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AFreekPols\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Froguin99\"><img src=\"https://avatars.githubusercontent.com/u/93538632?v=4?s=100\" width=\"100px;\" alt=\"Froguin99\"/><br /><sub><b>Froguin99</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/FrozenLines\"><img src=\"https://avatars.githubusercontent.com/u/103727912?v=4?s=100\" width=\"100px;\" alt=\"FrozenLines\"/><br /><sub><b>FrozenLines</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AFrozenLines\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.linkedin.com/in/fuad-reza-pahlevi-531283160/\"><img src=\"https://avatars1.githubusercontent.com/u/25898509?v=4?s=100\" width=\"100px;\" alt=\"Fuad Reza Pahlevi\"/><br /><sub><b>Fuad Reza Pahlevi</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/GabinWK\"><img src=\"https://avatars.githubusercontent.com/u/104582708?v=4?s=100\" width=\"100px;\" alt=\"GabinWK\"/><br /><sub><b>GabinWK</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AGabinWK\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/gandrewgabriel\"><img src=\"https://avatars.githubusercontent.com/u/52380254?v=4?s=100\" width=\"100px;\" alt=\"George Gabriel\"/><br /><sub><b>George Gabriel</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=gandrewgabriel\" title=\"Code\">💻</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=gandrewgabriel\" title=\"Tests\">⚠️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/GeorgiaHCA\"><img src=\"https://avatars1.githubusercontent.com/u/46889966?v=4?s=100\" width=\"100px;\" alt=\"Georgia\"/><br /><sub><b>Georgia</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/GeorgiaA\"><img src=\"https://avatars2.githubusercontent.com/u/33513781?v=4?s=100\" width=\"100px;\" alt=\"Georgia Atkinson\"/><br /><sub><b>Georgia Atkinson</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/georgiatomova\"><img src=\"https://avatars3.githubusercontent.com/u/17258191?v=4?s=100\" width=\"100px;\" alt=\"Georgia Tomova\"/><br /><sub><b>Georgia Tomova</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/GeorgianaElena\"><img src=\"https://avatars0.githubusercontent.com/u/7579677?v=4?s=100\" width=\"100px;\" alt=\"Georgiana Elena\"/><br /><sub><b>Georgiana Elena</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AGeorgianaElena\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://gertjan.dev\"><img src=\"https://avatars2.githubusercontent.com/u/3286696?v=4?s=100\" width=\"100px;\" alt=\"Gertjan van den Burg\"/><br /><sub><b>Gertjan van den Burg</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=GjjvdBurg\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/giannidsp\"><img src=\"https://avatars1.githubusercontent.com/u/40976911?v=4?s=100\" width=\"100px;\" alt=\"Gianni Scolaro\"/><br /><sub><b>Gianni Scolaro</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Agiannidsp\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://bit.ly/gigi-kenneth\"><img src=\"https://avatars.githubusercontent.com/u/52600214?v=4?s=100\" width=\"100px;\" alt=\"Gigi Kenneth\"/><br /><sub><b>Gigi Kenneth</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.linkedin.com/in/giulia-crocioni/\"><img src=\"https://avatars.githubusercontent.com/u/55382553?v=4?s=100\" width=\"100px;\" alt=\"Giulia Crocioni\"/><br /><sub><b>Giulia Crocioni</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Agcroci2\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://goodnewssandy.netlify.app/\"><img src=\"https://avatars.githubusercontent.com/u/54219127?v=4?s=100\" width=\"100px;\" alt=\"Goodnews Sandy\"/><br /><sub><b>Goodnews Sandy</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asandygudie\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Asandygudie\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://labrary.online\"><img src=\"https://avatars0.githubusercontent.com/u/237254?v=4?s=100\" width=\"100px;\" alt=\"Graham Lee\"/><br /><sub><b>Graham Lee</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aiamleeg\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aiamleeg\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.caporasolab.us\"><img src=\"https://avatars.githubusercontent.com/u/192372?v=4?s=100\" width=\"100px;\" alt=\"Greg Caporaso\"/><br /><sub><b>Greg Caporaso</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Agregcaporaso\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://gkiar.github.io\"><img src=\"https://avatars3.githubusercontent.com/u/4883288?v=4?s=100\" width=\"100px;\" alt=\"Greg Kiar\"/><br /><sub><b>Greg Kiar</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=gkiar\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Agkiar\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.fil.ion.ucl.ac.uk/team/spm-team/\"><img src=\"https://avatars.githubusercontent.com/u/5950855?v=4?s=100\" width=\"100px;\" alt=\"Guillaume Flandin\"/><br /><sub><b>Guillaume Flandin</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/gustavobecelli\"><img src=\"https://avatars3.githubusercontent.com/u/39573195?v=4?s=100\" width=\"100px;\" alt=\"Gustavo Becelli do Nacimento\"/><br /><sub><b>Gustavo Becelli do Nacimento</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://haoye.us\"><img src=\"https://avatars.githubusercontent.com/u/5835366?v=4?s=100\" width=\"100px;\" alt=\"Hao Ye\"/><br /><sub><b>Hao Ye</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aha0ye\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/harrietrs\"><img src=\"https://avatars.githubusercontent.com/u/28767009?v=4?s=100\" width=\"100px;\" alt=\"Harriet Sands\"/><br /><sub><b>Harriet Sands</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aharrietrs\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://twitter.com/HeidiBaya\"><img src=\"https://avatars1.githubusercontent.com/u/14146757?v=4?s=100\" width=\"100px;\" alt=\"Heidi Seibold\"/><br /><sub><b>Heidi Seibold</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/afuetterer\"><img src=\"https://avatars.githubusercontent.com/u/35225576?v=4?s=100\" width=\"100px;\" alt=\"Heinz-Alexander Fuetterer\"/><br /><sub><b>Heinz-Alexander Fuetterer</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aafuetterer\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.hoang.co.uk/hieu\"><img src=\"https://avatars1.githubusercontent.com/u/691732?v=4?s=100\" width=\"100px;\" alt=\"Hieu Hoang\"/><br /><sub><b>Hieu Hoang</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/humbertodebat\"><img src=\"https://avatars.githubusercontent.com/u/55153399?v=4?s=100\" width=\"100px;\" alt=\"Humberto Debat\"/><br /><sub><b>Humberto Debat</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Iain-S\"><img src=\"https://avatars.githubusercontent.com/u/25081046?v=4?s=100\" width=\"100px;\" alt=\"Iain\"/><br /><sub><b>Iain</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AIain-S\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=Iain-S\" title=\"Code\">💻</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://ianhinder.net\"><img src=\"https://avatars3.githubusercontent.com/u/213274?v=4?s=100\" width=\"100px;\" alt=\"Ian Hinder\"/><br /><sub><b>Ian Hinder</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=ianhinder\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://bandism.net/\"><img src=\"https://avatars.githubusercontent.com/u/22633385?v=4?s=100\" width=\"100px;\" alt=\"Ikko Ashimine\"/><br /><sub><b>Ikko Ashimine</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aeltociear\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://aspdenlab.weebly.com/isabel-birds.html\"><img src=\"https://avatars.githubusercontent.com/u/44876111?v=4?s=100\" width=\"100px;\" alt=\"IsabelBirds\"/><br /><sub><b>IsabelBirds</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/IshanG97\"><img src=\"https://avatars.githubusercontent.com/u/32465586?v=4?s=100\" width=\"100px;\" alt=\"IshanG97\"/><br /><sub><b>IshanG97</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=IshanG97\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://twitter.com/complexbrains\"><img src=\"https://avatars1.githubusercontent.com/u/45263281?v=4?s=100\" width=\"100px;\" alt=\"Isil Bilgin\"/><br /><sub><b>Isil Bilgin</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Acomplexbrains\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Ismael-KG\"><img src=\"https://avatars0.githubusercontent.com/u/64027166?v=4?s=100\" width=\"100px;\" alt=\"Ismael-KG\"/><br /><sub><b>Ismael-KG</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AIsmael-KG\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/newsletter\" title=\"Blogposts\">📝</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://sites.google.com/view/drjkasmireresearch/home\"><img src=\"https://avatars2.githubusercontent.com/u/1334163?v=4?s=100\" width=\"100px;\" alt=\"JKasmire\"/><br /><sub><b>JKasmire</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AJKasmire\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/JZhou-ScottLogic\"><img src=\"https://avatars.githubusercontent.com/u/205162886?v=4?s=100\" width=\"100px;\" alt=\"JZhou-ScottLogic\"/><br /><sub><b>JZhou-ScottLogic</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.jabezsamson.in/\"><img src=\"https://avatars.githubusercontent.com/u/233149054?v=4?s=100\" width=\"100px;\" alt=\"Jabez Samson\"/><br /><sub><b>Jabez Samson</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jabezsamsondev-prog\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/scjjb\"><img src=\"https://avatars.githubusercontent.com/u/77981425?v=4?s=100\" width=\"100px;\" alt=\"Jack Breen\"/><br /><sub><b>Jack Breen</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/jspickering\"><img src=\"https://avatars3.githubusercontent.com/u/28339195?v=4?s=100\" width=\"100px;\" alt=\"Jade Pickering\"/><br /><sub><b>Jade Pickering</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jspickering\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ajspickering\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/JadeHotchkiss\"><img src=\"https://avatars.githubusercontent.com/u/25898078?v=4?s=100\" width=\"100px;\" alt=\"JadeHotchkiss\"/><br /><sub><b>JadeHotchkiss</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AJadeHotchkiss\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://cradledincaricature.com/\"><img src=\"https://avatars.githubusercontent.com/u/4965300?v=4?s=100\" width=\"100px;\" alt=\"James Baker\"/><br /><sub><b>James Baker</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.linkedin.com/in/james-kent-24666468/\"><img src=\"https://avatars0.githubusercontent.com/u/12564882?v=4?s=100\" width=\"100px;\" alt=\"James Kent\"/><br /><sub><b>James Kent</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ajdkent\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.jamesmyatt.co.uk/\"><img src=\"https://avatars1.githubusercontent.com/u/1047337?v=4?s=100\" width=\"100px;\" alt=\"James Myatt\"/><br /><sub><b>James Myatt</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jamesmyatt\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/jemrobinson\"><img src=\"https://avatars2.githubusercontent.com/u/3502751?v=4?s=100\" width=\"100px;\" alt=\"James Robinson\"/><br /><sub><b>James Robinson</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jemrobinson\" title=\"Code\">💻</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://linkedin.com/in/jatonline\"><img src=\"https://avatars.githubusercontent.com/u/48878399?v=4?s=100\" width=\"100px;\" alt=\"James Thomas\"/><br /><sub><b>James Thomas</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ajatonline\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://jamiejquinn.com\"><img src=\"https://avatars.githubusercontent.com/u/8229296?v=4?s=100\" width=\"100px;\" alt=\"Jamie J Quinn\"/><br /><sub><b>Jamie J Quinn</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.jannetta.com\"><img src=\"https://avatars.githubusercontent.com/u/6432530?v=4?s=100\" width=\"100px;\" alt=\"Jannetta Steyn\"/><br /><sub><b>Jannetta Steyn</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ajsteyn\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/JaroCamphuijsen\"><img src=\"https://avatars.githubusercontent.com/u/12695232?v=4?s=100\" width=\"100px;\" alt=\"Jaro Camphuijsen\"/><br /><sub><b>Jaro Camphuijsen</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/jmgate\"><img src=\"https://avatars3.githubusercontent.com/u/20327215?v=4?s=100\" width=\"100px;\" alt=\"Jason Gates\"/><br /><sub><b>Jason Gates</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jmgate\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ajmgate\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/jmoldon\"><img src=\"https://avatars2.githubusercontent.com/u/1053066?v=4?s=100\" width=\"100px;\" alt=\"Javier Moldon\"/><br /><sub><b>Javier Moldon</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jmoldon\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/IIITM-Jay\"><img src=\"https://avatars2.githubusercontent.com/u/65283880?v=4?s=100\" width=\"100px;\" alt=\"Jay Dev Jha\"/><br /><sub><b>Jay Dev Jha</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AIIITM-Jay\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://jending.com\"><img src=\"https://avatars.githubusercontent.com/u/5104098?v=4?s=100\" width=\"100px;\" alt=\"Jennifer Ding\"/><br /><sub><b>Jennifer Ding</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Adingaaling\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Adingaaling\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ubikcan\"><img src=\"https://avatars.githubusercontent.com/u/23242626?v=4?s=100\" width=\"100px;\" alt=\"Jeremy Crampton\"/><br /><sub><b>Jeremy Crampton</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aubikcan\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://twitter.com/jermdemo\"><img src=\"https://avatars3.githubusercontent.com/u/147991?v=4?s=100\" width=\"100px;\" alt=\"Jeremy Leipzig\"/><br /><sub><b>Jeremy Leipzig</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aleipzig\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://jerrydevos.com\"><img src=\"https://avatars.githubusercontent.com/u/22919620?v=4?s=100\" width=\"100px;\" alt=\"Jerry de Vos\"/><br /><sub><b>Jerry de Vos</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/JFormoso\"><img src=\"https://avatars.githubusercontent.com/u/32418102?v=4?s=100\" width=\"100px;\" alt=\"Jesica Formoso\"/><br /><sub><b>Jesica Formoso</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AJFormoso\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/JessicaS11\"><img src=\"https://avatars.githubusercontent.com/u/11756442?v=4?s=100\" width=\"100px;\" alt=\"Jessica\"/><br /><sub><b>Jessica</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/jessyprovencher\"><img src=\"https://avatars2.githubusercontent.com/u/70674444?v=4?s=100\" width=\"100px;\" alt=\"Jessy Provencher\"/><br /><sub><b>Jessy Provencher</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://erambler.co.uk/\"><img src=\"https://avatars3.githubusercontent.com/u/457628?v=4?s=100\" width=\"100px;\" alt=\"Jez Cope\"/><br /><sub><b>Jez Cope</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jezcope\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ajezcope\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/JiaruiWang-Jill\"><img src=\"https://avatars.githubusercontent.com/u/41178872?v=4?s=100\" width=\"100px;\" alt=\"Jill Wang\"/><br /><sub><b>Jill Wang</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AJiaruiWang-Jill\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://inconsistentrecords.co.uk\"><img src=\"https://avatars.githubusercontent.com/u/731727?v=4?s=100\" width=\"100px;\" alt=\"Jim Circadian\"/><br /><sub><b>Jim Circadian</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/JimMadge\"><img src=\"https://avatars2.githubusercontent.com/u/23616154?v=4?s=100\" width=\"100px;\" alt=\"Jim Madge\"/><br /><sub><b>Jim Madge</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=JimMadge\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AJimMadge\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=JimMadge\" title=\"Code\">💻</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AJimMadge\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/JoannaLeng\"><img src=\"https://avatars1.githubusercontent.com/u/23033397?v=4?s=100\" width=\"100px;\" alt=\"Joanna Leng\"/><br /><sub><b>Joanna Leng</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.jearly.co.uk\"><img src=\"https://avatars2.githubusercontent.com/u/7620667?v=4?s=100\" width=\"100px;\" alt=\"Joe Early\"/><br /><sub><b>Joe Early</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/joe-fennell\"><img src=\"https://avatars3.githubusercontent.com/u/25105262?v=4?s=100\" width=\"100px;\" alt=\"Joe Fennell\"/><br /><sub><b>Joe Fennell</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=joe-fennell\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/likeajumprope\"><img src=\"https://avatars.githubusercontent.com/u/23728822?v=4?s=100\" width=\"100px;\" alt=\"Johanna Bayer\"/><br /><sub><b>Johanna Bayer</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Alikeajumprope\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/JohnnyRobs19\"><img src=\"https://avatars.githubusercontent.com/u/145652841?v=4?s=100\" width=\"100px;\" alt=\"Jonathan Siew\"/><br /><sub><b>Jonathan Siew</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/jurra\"><img src=\"https://avatars.githubusercontent.com/u/18581201?v=4?s=100\" width=\"100px;\" alt=\"Jose Urra \"/><br /><sub><b>Jose Urra </b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/jbteves\"><img src=\"https://avatars3.githubusercontent.com/u/26722533?v=4?s=100\" width=\"100px;\" alt=\"Joshua Teves\"/><br /><sub><b>Joshua Teves</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.madrimasd.org/blogs/bioinformatica\"><img src=\"https://avatars1.githubusercontent.com/u/2072150?v=4?s=100\" width=\"100px;\" alt=\"José María Fernández\"/><br /><sub><b>José María Fernández</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ajmfernandez\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://guiomarniso.com\"><img src=\"https://avatars.githubusercontent.com/u/4451818?v=4?s=100\" width=\"100px;\" alt=\"Julia Guiomar Niso Galán\"/><br /><sub><b>Julia Guiomar Niso Galán</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aguiomar\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/juliancervos\"><img src=\"https://avatars.githubusercontent.com/u/25617825?v=4?s=100\" width=\"100px;\" alt=\"Julian Lopez Gordillo\"/><br /><sub><b>Julian Lopez Gordillo</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ajuliancervos\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://orcid.org/0000-0002-3127-5520\"><img src=\"https://avatars2.githubusercontent.com/u/1876667?v=4?s=100\" width=\"100px;\" alt=\"Julien Colomb\"/><br /><sub><b>Julien Colomb</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ajcolomb\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/K-C-Martin\"><img src=\"https://avatars.githubusercontent.com/u/57388565?v=4?s=100\" width=\"100px;\" alt=\"K-C-Martin\"/><br /><sub><b>K-C-Martin</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AK-C-Martin\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.westerling.nu\"><img src=\"https://avatars.githubusercontent.com/u/7298727?v=4?s=100\" width=\"100px;\" alt=\"Kalle Westerling\"/><br /><sub><b>Kalle Westerling</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Akallewesterling\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Akallewesterling\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/KarolineLeiberg\"><img src=\"https://avatars.githubusercontent.com/u/57093276?v=4?s=100\" width=\"100px;\" alt=\"KarolineLeiberg\"/><br /><sub><b>KarolineLeiberg</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://katehertweck.com\"><img src=\"https://avatars.githubusercontent.com/u/1678233?v=4?s=100\" width=\"100px;\" alt=\"Kate Hertweck\"/><br /><sub><b>Kate Hertweck</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/kafitzgerald\"><img src=\"https://avatars.githubusercontent.com/u/7872563?v=4?s=100\" width=\"100px;\" alt=\"Katelyn FitzGerald\"/><br /><sub><b>Katelyn FitzGerald</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/kdixey\"><img src=\"https://avatars2.githubusercontent.com/u/59925972?v=4?s=100\" width=\"100px;\" alt=\"Katherine Dixey\"/><br /><sub><b>Katherine Dixey</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://katrionagoldmann.github.io\"><img src=\"https://avatars.githubusercontent.com/u/25952322?v=4?s=100\" width=\"100px;\" alt=\"Katriona Goldmann\"/><br /><sub><b>Katriona Goldmann</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AKatrionaGoldmann\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/klbarnes20\"><img src=\"https://avatars.githubusercontent.com/u/64787509?v=4?s=100\" width=\"100px;\" alt=\"Kelly Barnes\"/><br /><sub><b>Kelly Barnes</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aklbarnes20\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Kelly-dot\"><img src=\"https://avatars0.githubusercontent.com/u/59481756?v=4?s=100\" width=\"100px;\" alt=\"Kelly-dot\"/><br /><sub><b>Kelly-dot</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/kessonovitch\"><img src=\"https://avatars0.githubusercontent.com/u/23242159?v=4?s=100\" width=\"100px;\" alt=\"Kesson Magid\"/><br /><sub><b>Kesson Magid</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://kkmann.github.io/\"><img src=\"https://avatars2.githubusercontent.com/u/2482236?v=4?s=100\" width=\"100px;\" alt=\"Kevin Kunzmann\"/><br /><sub><b>Kevin Kunzmann</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=kkmann\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Akkmann\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/KimDeRuyck\"><img src=\"https://avatars1.githubusercontent.com/u/26715049?v=4?s=100\" width=\"100px;\" alt=\"Kim De Ruyck\"/><br /><sub><b>Kim De Ruyck</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AKimDeRuyck\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/kderuyck\"><img src=\"https://avatars3.githubusercontent.com/u/74196557?v=4?s=100\" width=\"100px;\" alt=\"Kim De Ruyck\"/><br /><sub><b>Kim De Ruyck</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://whitakerlab.github.io\"><img src=\"https://avatars1.githubusercontent.com/u/3626306?v=4?s=100\" width=\"100px;\" alt=\"Kirstie Whitaker\"/><br /><sub><b>Kirstie Whitaker</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=KirstieJane\" title=\"Documentation\">📖</a> <a href=\"https://book.the-turing-way.org\" title=\"Design\">🎨</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://book.the-turing-way.org\" title=\"Funding Finding\">🔍</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AKirstieJane\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Kj263\"><img src=\"https://avatars.githubusercontent.com/u/114452573?v=4?s=100\" width=\"100px;\" alt=\"Kjirsten Fastabend\"/><br /><sub><b>Kjirsten Fastabend</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/nkosaku\"><img src=\"https://avatars.githubusercontent.com/u/64463851?v=4?s=100\" width=\"100px;\" alt=\"Kosaku Nakano\"/><br /><sub><b>Kosaku Nakano</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/KristijanArmeni\"><img src=\"https://avatars3.githubusercontent.com/u/14061041?v=4?s=100\" width=\"100px;\" alt=\"Kristijan Armeni\"/><br /><sub><b>Kristijan Armeni</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AKristijanArmeni\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://krrank.live\"><img src=\"https://avatars0.githubusercontent.com/u/44499991?v=4?s=100\" width=\"100px;\" alt=\"Krunal Rank\"/><br /><sub><b>Krunal Rank</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AKRHero03\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/masonlr\"><img src=\"https://avatars2.githubusercontent.com/u/5828176?v=4?s=100\" width=\"100px;\" alt=\"Lachlan Mason\"/><br /><sub><b>Lachlan Mason</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=masonlr\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=masonlr\" title=\"Code\">💻</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://lacion.rbind.io\"><img src=\"https://avatars3.githubusercontent.com/u/17729900?v=4?s=100\" width=\"100px;\" alt=\"Laura Acion\"/><br /><sub><b>Laura Acion</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/LauraCarter\"><img src=\"https://avatars3.githubusercontent.com/u/16853500?v=4?s=100\" width=\"100px;\" alt=\"Laura Carter\"/><br /><sub><b>Laura Carter</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ALauraCarter\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ALauraCarter\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Girl-in-Geo\"><img src=\"https://avatars.githubusercontent.com/u/47306402?v=4?s=100\" width=\"100px;\" alt=\"Laura Mugeha\"/><br /><sub><b>Laura Mugeha</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AGirl-in-Geo\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Karvovskaya\"><img src=\"https://avatars3.githubusercontent.com/u/44666630?v=4?s=100\" width=\"100px;\" alt=\"Lenka\"/><br /><sub><b>Lenka</b></sub></a><br /><a href=\"https://github.com/the-turing-way/newsletter\" title=\"Blogposts\">📝</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://csd.utexas.edu/research/hamilton-lab\"><img src=\"https://avatars2.githubusercontent.com/u/3268583?v=4?s=100\" width=\"100px;\" alt=\"Liberty Hamilton\"/><br /><sub><b>Liberty Hamilton</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Alibertyh\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://research.colling.net.nz\"><img src=\"https://avatars.githubusercontent.com/u/21215217?v=4?s=100\" width=\"100px;\" alt=\"Lincoln Colling\"/><br /><sub><b>Lincoln Colling</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Lion-admin\"><img src=\"https://avatars.githubusercontent.com/u/72327875?v=4?s=100\" width=\"100px;\" alt=\"Lion-admin\"/><br /><sub><b>Lion-admin</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ALion-admin\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/LizHareDogs\"><img src=\"https://avatars.githubusercontent.com/u/53099600?v=4?s=100\" width=\"100px;\" alt=\"LizHareDogs\"/><br /><sub><b>LizHareDogs</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ALizHareDogs\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/LouiseABowler\"><img src=\"https://avatars1.githubusercontent.com/u/25640708?v=4?s=100\" width=\"100px;\" alt=\"Louise Bowler\"/><br /><sub><b>Louise Bowler</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=LouiseABowler\" title=\"Code\">💻</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=LouiseABowler\" title=\"Documentation\">📖</a> <a href=\"https://book.the-turing-way.org\" title=\"Examples\">💡</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ALouiseABowler\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Lovkush-A\"><img src=\"https://avatars.githubusercontent.com/u/25344832?v=4?s=100\" width=\"100px;\" alt=\"Lovkush\"/><br /><sub><b>Lovkush</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ALovkush-A\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.robots.ox.ac.uk/~luca\"><img src=\"https://avatars3.githubusercontent.com/u/3330489?v=4?s=100\" width=\"100px;\" alt=\"Luca Bertinetto\"/><br /><sub><b>Luca Bertinetto</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/lucyjstephenson\"><img src=\"https://avatars.githubusercontent.com/u/112892956?v=4?s=100\" width=\"100px;\" alt=\"Lucy Stephenson\"/><br /><sub><b>Lucy Stephenson</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Examples\">💡</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Alucyjstephenson\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Alucyjstephenson\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/GGn0\"><img src=\"https://avatars.githubusercontent.com/u/44038661?v=4?s=100\" width=\"100px;\" alt=\"Luigi Scalzone\"/><br /><sub><b>Luigi Scalzone</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/la-sts\"><img src=\"https://avatars.githubusercontent.com/u/34314067?v=4?s=100\" width=\"100px;\" alt=\"Luis Santos\"/><br /><sub><b>Luis Santos</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ala-sts\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/luisacutillo78\"><img src=\"https://avatars.githubusercontent.com/u/13733038?v=4?s=100\" width=\"100px;\" alt=\"Luisa\"/><br /><sub><b>Luisa</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/luisaforozco\"><img src=\"https://avatars.githubusercontent.com/u/99738896?v=4?s=100\" width=\"100px;\" alt=\"Luisa Orozco\"/><br /><sub><b>Luisa Orozco</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.lukeconibear.com/\"><img src=\"https://avatars.githubusercontent.com/u/19871268?v=4?s=100\" width=\"100px;\" alt=\"Luke Conibear\"/><br /><sub><b>Luke Conibear</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Alukeconibear\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/perluna\"><img src=\"https://avatars.githubusercontent.com/u/47083632?v=4?s=100\" width=\"100px;\" alt=\"Luna\"/><br /><sub><b>Luna</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://laboratoria.la\"><img src=\"https://avatars0.githubusercontent.com/u/15850514?v=4?s=100\" width=\"100px;\" alt=\"Lupe CaMay\"/><br /><sub><b>Lupe CaMay</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aluucamay\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/luukfroling\"><img src=\"https://avatars.githubusercontent.com/u/31106485?v=4?s=100\" width=\"100px;\" alt=\"Luuk Fröling\"/><br /><sub><b>Luuk Fröling</b></sub></a><br /><a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/LydiaFrance\"><img src=\"https://avatars.githubusercontent.com/u/85945427?v=4?s=100\" width=\"100px;\" alt=\"Lydia France\"/><br /><sub><b>Lydia France</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=LydiaFrance\" title=\"Code\">💻</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/LelleDi\"><img src=\"https://avatars.githubusercontent.com/u/108274982?v=4?s=100\" width=\"100px;\" alt=\"LélléD\"/><br /><sub><b>LélléD</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ALelleDi\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/MLeston2022\"><img src=\"https://avatars.githubusercontent.com/u/114400532?v=4?s=100\" width=\"100px;\" alt=\"MLeston2022\"/><br /><sub><b>MLeston2022</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Rainiefantasy\"><img src=\"https://avatars.githubusercontent.com/u/43926907?v=4?s=100\" width=\"100px;\" alt=\"Mahwish M\"/><br /><sub><b>Mahwish M</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/malvikasharan\"><img src=\"https://avatars0.githubusercontent.com/u/5370471?v=4?s=100\" width=\"100px;\" alt=\"Malvika Sharan\"/><br /><sub><b>Malvika Sharan</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=malvikasharan\" title=\"Documentation\">📖</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Project Management\">📆</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Amalvikasharan\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Videos\">📹</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/manuGil\"><img src=\"https://avatars.githubusercontent.com/u/8195424?v=4?s=100\" width=\"100px;\" alt=\"Manuel Garcia\"/><br /><sub><b>Manuel Garcia</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://marcosellys.com\"><img src=\"https://avatars.githubusercontent.com/u/6751242?v=4?s=100\" width=\"100px;\" alt=\"Marcos Ellys Rocha Honorato\"/><br /><sub><b>Marcos Ellys Rocha Honorato</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AMarcosEllys\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/MariaEriksson\"><img src=\"https://avatars1.githubusercontent.com/u/43676485?v=4?s=100\" width=\"100px;\" alt=\"Maria Eriksson\"/><br /><sub><b>Maria Eriksson</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AMariaEriksson\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/mariadelmarq\"><img src=\"https://avatars.githubusercontent.com/u/12743476?v=4?s=100\" width=\"100px;\" alt=\"Maria del Mar Quiroga\"/><br /><sub><b>Maria del Mar Quiroga</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Amariadelmarq\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Mariam-ke\"><img src=\"https://avatars3.githubusercontent.com/u/39956740?v=4?s=100\" width=\"100px;\" alt=\"Mariam-ke\"/><br /><sub><b>Mariam-ke</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AMariam-ke\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/marianaiv\"><img src=\"https://avatars.githubusercontent.com/u/53548707?v=4?s=100\" width=\"100px;\" alt=\"Mariana V.\"/><br /><sub><b>Mariana V.</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Amarianaiv\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/MarionBWeinzierl\"><img src=\"https://avatars.githubusercontent.com/u/56403724?v=4?s=100\" width=\"100px;\" alt=\"Marion\"/><br /><sub><b>Marion</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AMarionBWeinzierl\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.turing.ac.uk/people/researchers/mariona-coll-ardanuy\"><img src=\"https://avatars.githubusercontent.com/u/46483603?v=4?s=100\" width=\"100px;\" alt=\"Mariona\"/><br /><sub><b>Mariona</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.imperial.ac.uk/ict/rcs\"><img src=\"https://avatars3.githubusercontent.com/u/1724545?v=4?s=100\" width=\"100px;\" alt=\"Mark Woodbridge\"/><br /><sub><b>Mark Woodbridge</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://mhauru.org\"><img src=\"https://avatars.githubusercontent.com/u/5229876?v=4?s=100\" width=\"100px;\" alt=\"Markus Hauru\"/><br /><sub><b>Markus Hauru</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Amhauru\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.linkedin.com/in/mloning/\"><img src=\"https://avatars3.githubusercontent.com/u/21020482?v=4?s=100\" width=\"100px;\" alt=\"Markus Löning\"/><br /><sub><b>Markus Löning</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Amloning\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Marta-MM\"><img src=\"https://avatars2.githubusercontent.com/u/67780317?v=4?s=100\" width=\"100px;\" alt=\"Marta-MM\"/><br /><sub><b>Marta-MM</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AMarta-MM\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AMarta-MM\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/martinjeanphd\"><img src=\"https://avatars.githubusercontent.com/u/44728169?v=4?s=100\" width=\"100px;\" alt=\"Martin Jean\"/><br /><sub><b>Martin Jean</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Amartinjeanphd\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/martintoreilly\"><img src=\"https://avatars3.githubusercontent.com/u/21147592?v=4?s=100\" width=\"100px;\" alt=\"Martin O'Reilly\"/><br /><sub><b>Martin O'Reilly</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Tools\">🔧</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://martinagvilas.github.io\"><img src=\"https://avatars2.githubusercontent.com/u/37339384?v=4?s=100\" width=\"100px;\" alt=\"Martina G. Vilas\"/><br /><sub><b>Martina G. Vilas</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=martinagvilas\" title=\"Tests\">⚠️</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Videos\">📹</a> <a href=\"https://book.the-turing-way.org\" title=\"Tutorials\">✅</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://gmbernardoharrington.netlify.app/\"><img src=\"https://avatars.githubusercontent.com/u/26403410?v=4?s=100\" width=\"100px;\" alt=\"Mateus Harrington\"/><br /><sub><b>Mateus Harrington</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AH-Mateus\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/mkuzak\"><img src=\"https://avatars2.githubusercontent.com/u/208443?v=4?s=100\" width=\"100px;\" alt=\"Mateusz Kuzak\"/><br /><sub><b>Mateusz Kuzak</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Amkuzak\" title=\"Bug reports\">🐛</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Amkuzak\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://ml-evs.science\"><img src=\"https://avatars2.githubusercontent.com/u/7916000?v=4?s=100\" width=\"100px;\" alt=\"Matthew Evans\"/><br /><sub><b>Matthew Evans</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aml-evs\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://mbjoseph.github.io\"><img src=\"https://avatars3.githubusercontent.com/u/2664564?v=4?s=100\" width=\"100px;\" alt=\"Max Joseph\"/><br /><sub><b>Max Joseph</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ambjoseph\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://mosorio.dev\"><img src=\"https://avatars.githubusercontent.com/u/2365990?v=4?s=100\" width=\"100px;\" alt=\"Maximiliano Osorio\"/><br /><sub><b>Maximiliano Osorio</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://mayaandersongonzalez.hcommons.org\"><img src=\"https://avatars.githubusercontent.com/u/56874297?v=4?s=100\" width=\"100px;\" alt=\"Maya Anderson-González\"/><br /><sub><b>Maya Anderson-González</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/msundukova\"><img src=\"https://avatars.githubusercontent.com/u/34685833?v=4?s=100\" width=\"100px;\" alt=\"Mayya Sundukova\"/><br /><sub><b>Mayya Sundukova</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/melibleq\"><img src=\"https://avatars.githubusercontent.com/u/16723182?v=4?s=100\" width=\"100px;\" alt=\"Melissa Black\"/><br /><sub><b>Melissa Black</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Amelibleq\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://melissawm.github.io\"><img src=\"https://avatars.githubusercontent.com/u/3949932?v=4?s=100\" width=\"100px;\" alt=\"Melissa Weber Mendonça\"/><br /><sub><b>Melissa Weber Mendonça</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.mrc-bsu.cam.ac.uk/people/in-alphabetical-order/a-to-g/michael-grayling/\"><img src=\"https://avatars2.githubusercontent.com/u/4548867?v=4?s=100\" width=\"100px;\" alt=\"Michael Grayling\"/><br /><sub><b>Michael Grayling</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=mjg211\" title=\"Documentation\">📖</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://mikey24-7.xyz\"><img src=\"https://avatars.githubusercontent.com/u/93191705?v=4?s=100\" width=\"100px;\" alt=\"Michael Umeokoli\"/><br /><sub><b>Michael Umeokoli</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Amikey247\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/m-rivera\"><img src=\"https://avatars1.githubusercontent.com/u/22956181?v=4?s=100\" width=\"100px;\" alt=\"Miguel Rivera\"/><br /><sub><b>Miguel Rivera</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Am-rivera\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://nolski.rocks\"><img src=\"https://avatars.githubusercontent.com/u/2600677?v=4?s=100\" width=\"100px;\" alt=\"Mike Nolan\"/><br /><sub><b>Mike Nolan</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://twitter.com/mishkanemes\"><img src=\"https://avatars.githubusercontent.com/u/39628884?v=4?s=100\" width=\"100px;\" alt=\"Mishka Nemes\"/><br /><sub><b>Mishka Nemes</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Amishkanemes\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/MoritzMaxeiner\"><img src=\"https://avatars.githubusercontent.com/u/497073?v=4?s=100\" width=\"100px;\" alt=\"Moritz Maxeiner\"/><br /><sub><b>Moritz Maxeiner</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AMoritzMaxeiner\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://radifar.github.io\"><img src=\"https://avatars.githubusercontent.com/u/11450417?v=4?s=100\" width=\"100px;\" alt=\"Muhammad Radifar\"/><br /><sub><b>Muhammad Radifar</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aradifar\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/dsmukilan\"><img src=\"https://avatars.githubusercontent.com/u/11191375?v=4?s=100\" width=\"100px;\" alt=\"Mukilan\"/><br /><sub><b>Mukilan</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.linkedin.com/in/aniltuncel/\"><img src=\"https://avatars2.githubusercontent.com/u/7026020?v=4?s=100\" width=\"100px;\" alt=\"Mustafa Anil Tuncel\"/><br /><sub><b>Mustafa Anil Tuncel</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aanilbey\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/nadiasoliman\"><img src=\"https://avatars0.githubusercontent.com/u/41086364?v=4?s=100\" width=\"100px;\" alt=\"Nadia Soliman\"/><br /><sub><b>Nadia Soliman</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=nadiasoliman\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Nagabharan1\"><img src=\"https://avatars.githubusercontent.com/u/72192695?v=4?s=100\" width=\"100px;\" alt=\"Nagabharan1\"/><br /><sub><b>Nagabharan1</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ANagabharan1\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://npscience.github.io\"><img src=\"https://avatars2.githubusercontent.com/u/9406530?v=4?s=100\" width=\"100px;\" alt=\"Naomi Penfold\"/><br /><sub><b>Naomi Penfold</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Anpscience\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://mednche.github.io\"><img src=\"https://avatars0.githubusercontent.com/u/24226111?v=4?s=100\" width=\"100px;\" alt=\"Natacha Chenevoy\"/><br /><sub><b>Natacha Chenevoy</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/NatalieThurlby\"><img src=\"https://avatars1.githubusercontent.com/u/17617308?v=4?s=100\" width=\"100px;\" alt=\"Natalie Thurlby\"/><br /><sub><b>Natalie Thurlby</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=NatalieThurlby\" title=\"Code\">💻</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=NatalieThurlby\" title=\"Tests\">⚠️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/nathanbegbie\"><img src=\"https://avatars0.githubusercontent.com/u/7100966?v=4?s=100\" width=\"100px;\" alt=\"Nathan Begbie\"/><br /><sub><b>Nathan Begbie</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Anathanbegbie\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/nehamoopen\"><img src=\"https://avatars3.githubusercontent.com/u/37183829?v=4?s=100\" width=\"100px;\" alt=\"Neha Moopen\"/><br /><sub><b>Neha Moopen</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Anehamoopen\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.software.ac.uk\"><img src=\"https://avatars1.githubusercontent.com/u/1507151?v=4?s=100\" width=\"100px;\" alt=\"Neil Chue Hong\"/><br /><sub><b>Neil Chue Hong</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/nbarlowATI\"><img src=\"https://avatars3.githubusercontent.com/u/33832774?v=4?s=100\" width=\"100px;\" alt=\"Nick Barlow\"/><br /><sub><b>Nick Barlow</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AnbarlowATI\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/NZR\"><img src=\"https://avatars3.githubusercontent.com/u/2925086?v=4?s=100\" width=\"100px;\" alt=\"Nico\"/><br /><sub><b>Nico</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://orcid.org/0000-0002-6595-0969\"><img src=\"https://avatars0.githubusercontent.com/u/43151303?v=4?s=100\" width=\"100px;\" alt=\"Nicolás Alessandroni\"/><br /><sub><b>Nicolás Alessandroni</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ninadicara\"><img src=\"https://avatars.githubusercontent.com/u/44364127?v=4?s=100\" width=\"100px;\" alt=\"Nina\"/><br /><sub><b>Nina</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aninadicara\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/nlharris\"><img src=\"https://avatars3.githubusercontent.com/u/348704?v=4?s=100\" width=\"100px;\" alt=\"Nomi Harris\"/><br /><sub><b>Nomi Harris</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Anlharris\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/NoorhanAbbas\"><img src=\"https://avatars.githubusercontent.com/u/84336434?v=4?s=100\" width=\"100px;\" alt=\"NoorhanAbbas\"/><br /><sub><b>NoorhanAbbas</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/NotActuallyACat\"><img src=\"https://avatars.githubusercontent.com/u/69468081?v=4?s=100\" width=\"100px;\" alt=\"NotActuallyACat\"/><br /><sub><b>NotActuallyACat</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/obisargoni\"><img src=\"https://avatars0.githubusercontent.com/u/33906525?v=4?s=100\" width=\"100px;\" alt=\"Obi Thompson Sargoni\"/><br /><sub><b>Obi Thompson Sargoni</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://datalets.ch\"><img src=\"https://avatars.githubusercontent.com/u/31819?v=4?s=100\" width=\"100px;\" alt=\"Oleg Lavrovsky\"/><br /><sub><b>Oleg Lavrovsky</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/OliJimbo\"><img src=\"https://avatars2.githubusercontent.com/u/16899600?v=4?s=100\" width=\"100px;\" alt=\"Oliver Clark\"/><br /><sub><b>Oliver Clark</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=OliJimbo\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/oforrest\"><img src=\"https://avatars2.githubusercontent.com/u/49275282?v=4?s=100\" width=\"100px;\" alt=\"Oliver Forrest\"/><br /><sub><b>Oliver Forrest</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=oforrest\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aoforrest\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/defaultobject\"><img src=\"https://avatars2.githubusercontent.com/u/1484941?v=4?s=100\" width=\"100px;\" alt=\"Oliver Hamelijnck\"/><br /><sub><b>Oliver Hamelijnck</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ots22\"><img src=\"https://avatars1.githubusercontent.com/u/5434836?v=4?s=100\" width=\"100px;\" alt=\"Oliver Strickson\"/><br /><sub><b>Oliver Strickson</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=ots22\" title=\"Documentation\">📖</a> <a href=\"https://book.the-turing-way.org\" title=\"Tutorials\">✅</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.oeg-upm.net/index.php/en/teachers/11-ocorcho/index.html\"><img src=\"https://avatars.githubusercontent.com/u/1067341?v=4?s=100\" width=\"100px;\" alt=\"Oscar Corcho\"/><br /><sub><b>Oscar Corcho</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aocorcho\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/OscartGiles\"><img src=\"https://avatars0.githubusercontent.com/u/12784013?v=4?s=100\" width=\"100px;\" alt=\"Oscar Giles\"/><br /><sub><b>Oscar Giles</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=OscartGiles\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://pabrod.github.io/\"><img src=\"https://avatars0.githubusercontent.com/u/7677614?v=4?s=100\" width=\"100px;\" alt=\"Pablo Rodríguez-Sánchez\"/><br /><sub><b>Pablo Rodríguez-Sánchez</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://patricia-loto.netlify.app/\"><img src=\"https://avatars.githubusercontent.com/u/39300655?v=4?s=100\" width=\"100px;\" alt=\"Patricia A. Loto\"/><br /><sub><b>Patricia A. Loto</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3APatriLoto\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/pherterich\"><img src=\"https://avatars0.githubusercontent.com/u/8457675?v=4?s=100\" width=\"100px;\" alt=\"Patricia Herterich\"/><br /><sub><b>Patricia Herterich</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=pherterich\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Apherterich\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://egpbos.nl\"><img src=\"https://avatars.githubusercontent.com/u/6146598?v=4?s=100\" width=\"100px;\" alt=\"Patrick Bos\"/><br /><sub><b>Patrick Bos</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aegpbos\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://xcorr.net\"><img src=\"https://avatars.githubusercontent.com/u/3516539?v=4?s=100\" width=\"100px;\" alt=\"Patrick Mineault\"/><br /><sub><b>Patrick Mineault</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Apatrickmineault\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/paulbaniqued\"><img src=\"https://avatars2.githubusercontent.com/u/47854500?v=4?s=100\" width=\"100px;\" alt=\"Paul Dominick Baniqued\"/><br /><sub><b>Paul Dominick Baniqued</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.linkedin.com/in/paulowoicho/\"><img src=\"https://avatars3.githubusercontent.com/u/28223751?v=4?s=100\" width=\"100px;\" alt=\"Paul Owoicho\"/><br /><sub><b>Paul Owoicho</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Apaulowoicho\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Apaulowoicho\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=paulowoicho\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.ncl.ac.uk/computing/people/profile/paulwatson.html#background\"><img src=\"https://avatars.githubusercontent.com/u/7299312?v=4?s=100\" width=\"100px;\" alt=\"Paul Watson\"/><br /><sub><b>Paul Watson</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/orchid00\"><img src=\"https://avatars3.githubusercontent.com/u/9795785?v=4?s=100\" width=\"100px;\" alt=\"Paula Andrea Martinez\"/><br /><sub><b>Paula Andrea Martinez</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aorchid00\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://ppintosilva.com\"><img src=\"https://avatars1.githubusercontent.com/u/11331882?v=4?s=100\" width=\"100px;\" alt=\"Pedro Pinto da Silva\"/><br /><sub><b>Pedro Pinto da Silva</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/PeterC-ATI\"><img src=\"https://avatars1.githubusercontent.com/u/55786296?v=4?s=100\" width=\"100px;\" alt=\"PeterC-ATI\"/><br /><sub><b>PeterC-ATI</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://philipdarke.com\"><img src=\"https://avatars2.githubusercontent.com/u/43066442?v=4?s=100\" width=\"100px;\" alt=\"Philip Darke\"/><br /><sub><b>Philip Darke</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://greptilian.com\"><img src=\"https://avatars.githubusercontent.com/u/21006?v=4?s=100\" width=\"100px;\" alt=\"Philip Durbin\"/><br /><sub><b>Philip Durbin</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/pc494\"><img src=\"https://avatars.githubusercontent.com/u/32455330?v=4?s=100\" width=\"100px;\" alt=\"Phillip Crout\"/><br /><sub><b>Phillip Crout</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Apc494\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Phome95\"><img src=\"https://avatars.githubusercontent.com/u/100789966?v=4?s=100\" width=\"100px;\" alt=\"Phome95\"/><br /><sub><b>Phome95</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://p.ier.re\"><img src=\"https://avatars1.githubusercontent.com/u/1866496?v=4?s=100\" width=\"100px;\" alt=\"Pierre Grimaud\"/><br /><sub><b>Pierre Grimaud</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Apgrimaud\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/pgadige\"><img src=\"https://avatars2.githubusercontent.com/u/8632025?v=4?s=100\" width=\"100px;\" alt=\"Pooja Gadige\"/><br /><sub><b>Pooja Gadige</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=pgadige\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Apgadige\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/peranti\"><img src=\"https://avatars.githubusercontent.com/u/9472741?v=4?s=100\" width=\"100px;\" alt=\"Pradeep Eranti\"/><br /><sub><b>Pradeep Eranti</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aperanti\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://pranavmahajan25.github.io/\"><img src=\"https://avatars0.githubusercontent.com/u/33349653?v=4?s=100\" width=\"100px;\" alt=\"Pranav Mahajan\"/><br /><sub><b>Pranav Mahajan</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Preshh0\"><img src=\"https://avatars.githubusercontent.com/u/42142405?v=4?s=100\" width=\"100px;\" alt=\"Precious Onyewuchi\"/><br /><sub><b>Precious Onyewuchi</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3APreshh0\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3APreshh0\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/priya-gitTest\"><img src=\"https://avatars.githubusercontent.com/u/21082240?v=4?s=100\" width=\"100px;\" alt=\"Priyanka O\"/><br /><sub><b>Priyanka O</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://git.io/priyanshu\"><img src=\"https://avatars.githubusercontent.com/u/64051212?v=4?s=100\" width=\"100px;\" alt=\"Priyanshu Agarwal\"/><br /><sub><b>Priyanshu Agarwal</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Apriyanshuone6\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/przemekdolata96\"><img src=\"https://avatars3.githubusercontent.com/u/26312462?v=4?s=100\" width=\"100px;\" alt=\"Przemek Dolata\"/><br /><sub><b>Przemek Dolata</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/RabeaMue\"><img src=\"https://avatars.githubusercontent.com/u/42644523?v=4?s=100\" width=\"100px;\" alt=\"Rabea Müller\"/><br /><sub><b>Rabea Müller</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ARabeaMue\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://rainsworth.github.io\"><img src=\"https://avatars3.githubusercontent.com/u/10600877?v=4?s=100\" width=\"100px;\" alt=\"Rachael Ainsworth\"/><br /><sub><b>Rachael Ainsworth</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=rainsworth\" title=\"Documentation\">📖</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Arainsworth\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://linkedin.com/in/rstickland-phd\"><img src=\"https://avatars.githubusercontent.com/u/50215726?v=4?s=100\" width=\"100px;\" alt=\"Rachael Stickland\"/><br /><sub><b>Rachael Stickland</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ARayStick\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/radka-j\"><img src=\"https://avatars2.githubusercontent.com/u/29207091?v=4?s=100\" width=\"100px;\" alt=\"Radka Jersakova\"/><br /><sub><b>Radka Jersakova</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aradka-j\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://bast.fr\"><img src=\"https://avatars.githubusercontent.com/u/5120679?v=4?s=100\" width=\"100px;\" alt=\"Radovan Bast\"/><br /><sub><b>Radovan Bast</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Abast\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.linkedin.com/in/rafaelaqueirozg/\"><img src=\"https://avatars.githubusercontent.com/u/42815135?v=4?s=100\" width=\"100px;\" alt=\"Rafaela Queiroz\"/><br /><sub><b>Rafaela Queiroz</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/bantya\"><img src=\"https://avatars.githubusercontent.com/u/16685565?v=4?s=100\" width=\"100px;\" alt=\"Rahul Thakare\"/><br /><sub><b>Rahul Thakare</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://rgaiacs.com\"><img src=\"https://avatars0.githubusercontent.com/u/1506457?v=4?s=100\" width=\"100px;\" alt=\"Raniere Silva\"/><br /><sub><b>Raniere Silva</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Argaiacs\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/rapw3k\"><img src=\"https://avatars.githubusercontent.com/u/557493?v=4?s=100\" width=\"100px;\" alt=\"Raul Palma\"/><br /><sub><b>Raul Palma</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/camachoreina\"><img src=\"https://avatars0.githubusercontent.com/u/12454015?v=4?s=100\" width=\"100px;\" alt=\"Reina Camacho Toro\"/><br /><sub><b>Reina Camacho Toro</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/radersma\"><img src=\"https://avatars.githubusercontent.com/u/28388211?v=4?s=100\" width=\"100px;\" alt=\"Reinder Radersma\"/><br /><sub><b>Reinder Radersma</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aradersma\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://remi-gau.github.io/\"><img src=\"https://avatars3.githubusercontent.com/u/6961185?v=4?s=100\" width=\"100px;\" alt=\"Remi Gau\"/><br /><sub><b>Remi Gau</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ARemi-Gau\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/bakhshir\"><img src=\"https://avatars.githubusercontent.com/u/16703268?v=4?s=100\" width=\"100px;\" alt=\"Rena Bakhshi\"/><br /><sub><b>Rena Bakhshi</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Abakhshir\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.c-economics.com\"><img src=\"https://avatars.githubusercontent.com/u/10668732?v=4?s=100\" width=\"100px;\" alt=\"Rendell de Kort\"/><br /><sub><b>Rendell de Kort</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://huixinng.com\"><img src=\"https://avatars.githubusercontent.com/u/16829271?v=4?s=100\" width=\"100px;\" alt=\"Renee (Hui Xin) Ng\"/><br /><sub><b>Renee (Hui Xin) Ng</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Anghuixin\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://reshamas.github.io\"><img src=\"https://avatars0.githubusercontent.com/u/2507232?v=4?s=100\" width=\"100px;\" alt=\"Reshama Shaikh\"/><br /><sub><b>Reshama Shaikh</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Areshamas\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://rhian.rbind.io\"><img src=\"https://avatars.githubusercontent.com/u/7017740?v=4?s=100\" width=\"100px;\" alt=\"Rhian Davies\"/><br /><sub><b>Rhian Davies</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AStatsRhian\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://richarddushime.netlify.app/\"><img src=\"https://avatars.githubusercontent.com/u/45734838?v=4?s=100\" width=\"100px;\" alt=\"Richard Dushime\"/><br /><sub><b>Richard Dushime</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/rjjgilham\"><img src=\"https://avatars0.githubusercontent.com/u/18323072?v=4?s=100\" width=\"100px;\" alt=\"Richard Gilham\"/><br /><sub><b>Richard Gilham</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=rjjgilham\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://richardjacton.github.io/\"><img src=\"https://avatars.githubusercontent.com/u/6893043?v=4?s=100\" width=\"100px;\" alt=\"Richard James Acton\"/><br /><sub><b>Richard James Acton</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ARichardJActon\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://rplant.netlify.app\"><img src=\"https://avatars.githubusercontent.com/u/11060480?v=4?s=100\" width=\"100px;\" alt=\"Richard Plant\"/><br /><sub><b>Richard Plant</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://realrichi3.github.io\"><img src=\"https://avatars.githubusercontent.com/u/76791916?v=4?s=100\" width=\"100px;\" alt=\"Richie\"/><br /><sub><b>Richie</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/risaueno\"><img src=\"https://avatars0.githubusercontent.com/u/22602921?v=4?s=100\" width=\"100px;\" alt=\"Risa Ueno\"/><br /><sub><b>Risa Ueno</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/rlanzafame\"><img src=\"https://avatars.githubusercontent.com/u/22560680?v=4?s=100\" width=\"100px;\" alt=\"Robert Lanzafame\"/><br /><sub><b>Robert Lanzafame</b></sub></a><br /><a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/RobPrecious\"><img src=\"https://avatars.githubusercontent.com/u/9133187?v=4?s=100\" width=\"100px;\" alt=\"Robert Precious\"/><br /><sub><b>Robert Precious</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/longr\"><img src=\"https://avatars0.githubusercontent.com/u/3597743?v=4?s=100\" width=\"100px;\" alt=\"Robin Long\"/><br /><sub><b>Robin Long</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=longr\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://rohitmidha23.github.io\"><img src=\"https://avatars1.githubusercontent.com/u/38888530?v=4?s=100\" width=\"100px;\" alt=\"Rohit Midha\"/><br /><sub><b>Rohit Midha</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=RohitMidha23\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/romeroclaudino\"><img src=\"https://avatars1.githubusercontent.com/u/6520331?v=4?s=100\" width=\"100px;\" alt=\"Romero Silva\"/><br /><sub><b>Romero Silva</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/rosesisk\"><img src=\"https://avatars2.githubusercontent.com/u/52324551?v=4?s=100\" width=\"100px;\" alt=\"Rose Sisk\"/><br /><sub><b>Rose Sisk</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/rosiehigman\"><img src=\"https://avatars2.githubusercontent.com/u/15738325?v=4?s=100\" width=\"100px;\" alt=\"Rosie Higman\"/><br /><sub><b>Rosie Higman</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Arosiehigman\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/RostiReadioff\"><img src=\"https://avatars1.githubusercontent.com/u/45424690?v=4?s=100\" width=\"100px;\" alt=\"Rosti Readioff\"/><br /><sub><b>Rosti Readioff</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=RostiReadioff\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://row1.ca\"><img src=\"https://avatars.githubusercontent.com/u/913249?v=4?s=100\" width=\"100px;\" alt=\"Rowan Cockett\"/><br /><sub><b>Rowan Cockett</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Arowanc1\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://jupyterbook.org\" title=\"Packaging/porting to new platform\">📦</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.maths.tcd.ie/~rcampion/\"><img src=\"https://avatars.githubusercontent.com/u/79585079?v=4?s=100\" width=\"100px;\" alt=\"Ruaidhrí Campion\"/><br /><sub><b>Ruaidhrí Campion</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Acampioru\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/SYU-NING\"><img src=\"https://avatars.githubusercontent.com/u/71600183?v=4?s=100\" width=\"100px;\" alt=\"SYU-NING\"/><br /><sub><b>SYU-NING</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/SachaHq\"><img src=\"https://avatars.githubusercontent.com/u/58265506?v=4?s=100\" width=\"100px;\" alt=\"Sacha Hodencq\"/><br /><sub><b>Sacha Hodencq</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://sadielbartholomew.github.io\"><img src=\"https://avatars.githubusercontent.com/u/30274190?v=4?s=100\" width=\"100px;\" alt=\"Sadie L. Bartholomew\"/><br /><sub><b>Sadie L. Bartholomew</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Asadielbartholomew\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/nikhil26vaddadi\"><img src=\"https://avatars.githubusercontent.com/u/29629242?v=4?s=100\" width=\"100px;\" alt=\"Sai Nikhil Vaddadi\"/><br /><sub><b>Sai Nikhil Vaddadi</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Anikhil26vaddadi\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/SamGuay\"><img src=\"https://avatars1.githubusercontent.com/u/30598330?v=4?s=100\" width=\"100px;\" alt=\"Samuel Guay\"/><br /><sub><b>Samuel Guay</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://snastase.github.io/\"><img src=\"https://avatars2.githubusercontent.com/u/3496566?v=4?s=100\" width=\"100px;\" alt=\"Samuel Nastase\"/><br /><sub><b>Samuel Nastase</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asnastase\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.svrijn.nl\"><img src=\"https://avatars.githubusercontent.com/u/8833517?v=4?s=100\" width=\"100px;\" alt=\"Sander\"/><br /><sub><b>Sander</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asjvrijn\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://sksahu.net\"><img src=\"https://avatars1.githubusercontent.com/u/23085664?v=4?s=100\" width=\"100px;\" alt=\"Sangram K Sahu\"/><br /><sub><b>Sangram K Sahu</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/sarasrking\"><img src=\"https://avatars.githubusercontent.com/u/48195568?v=4?s=100\" width=\"100px;\" alt=\"Sara King\"/><br /><sub><b>Sara King</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asarasrking\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/SaraVilla\"><img src=\"https://avatars.githubusercontent.com/u/43204602?v=4?s=100\" width=\"100px;\" alt=\"Sara Villa\"/><br /><sub><b>Sara Villa</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ASaraVilla\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/sgibson91\"><img src=\"https://avatars2.githubusercontent.com/u/44771837?v=4?s=100\" width=\"100px;\" alt=\"Sarah Gibson\"/><br /><sub><b>Sarah Gibson</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=sgibson91\" title=\"Code\">💻</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=sgibson91\" title=\"Documentation\">📖</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Tools\">🔧</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Asgibson91\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Tutorials\">✅</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Videos\">📹</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://dmponline.dcc.ac.uk\"><img src=\"https://avatars.githubusercontent.com/u/6169940?v=4?s=100\" width=\"100px;\" alt=\"Sarah Jones\"/><br /><sub><b>Sarah Jones</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/SarahMiller137\"><img src=\"https://avatars.githubusercontent.com/u/9994261?v=4?s=100\" width=\"100px;\" alt=\"Sarah Miller\"/><br /><sub><b>Sarah Miller</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Biostew\"><img src=\"https://avatars3.githubusercontent.com/u/17767752?v=4?s=100\" width=\"100px;\" alt=\"Sarah Stewart\"/><br /><sub><b>Sarah Stewart</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=BioStew\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/rootsandberries\"><img src=\"https://avatars.githubusercontent.com/u/11933741?v=4?s=100\" width=\"100px;\" alt=\"Sarah Young\"/><br /><sub><b>Sarah Young</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Arootsandberries\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://nl.linkedin.com/in/fakhereh-sarah-alidoost-11a24a89\"><img src=\"https://avatars3.githubusercontent.com/u/55081872?v=4?s=100\" width=\"100px;\" alt=\"SarahAlidoost\"/><br /><sub><b>SarahAlidoost</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://saranjeetkaur.github.io/About-Me/\"><img src=\"https://avatars.githubusercontent.com/u/28556616?v=4?s=100\" width=\"100px;\" alt=\"Saranjeet Kaur\"/><br /><sub><b>Saranjeet Kaur</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ASaranjeetKaur\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/hughesthe1st\"><img src=\"https://avatars.githubusercontent.com/u/6203251?v=4?s=100\" width=\"100px;\" alt=\"Sean Hughes\"/><br /><sub><b>Sean Hughes</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ahughesthe1st\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://spier.hu\"><img src=\"https://avatars.githubusercontent.com/u/163029?v=4?s=100\" width=\"100px;\" alt=\"Sebastian Spier\"/><br /><sub><b>Sebastian Spier</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aspier\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.turing.ac.uk/people/doctoral-students/sedar-olmez\"><img src=\"https://avatars3.githubusercontent.com/u/10035934?v=4?s=100\" width=\"100px;\" alt=\"Sedar Olmez\"/><br /><sub><b>Sedar Olmez</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Sergih28\"><img src=\"https://avatars.githubusercontent.com/u/16263046?v=4?s=100\" width=\"100px;\" alt=\"Sergi\"/><br /><sub><b>Sergi</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ASergih28\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://shanidsajjatuz.is-a.dev\"><img src=\"https://avatars.githubusercontent.com/u/155494150?v=4?s=100\" width=\"100px;\" alt=\"Shanid Sajjatuz Islam\"/><br /><sub><b>Shanid Sajjatuz Islam</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://growupboron.github.io\"><img src=\"https://avatars3.githubusercontent.com/u/41593068?v=4?s=100\" width=\"100px;\" alt=\"Shankho Boron Ghosh\"/><br /><sub><b>Shankho Boron Ghosh</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Agrowupboron\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/s-shivanand\"><img src=\"https://avatars.githubusercontent.com/u/107891112?v=4?s=100\" width=\"100px;\" alt=\"Sharana Shivanand\"/><br /><sub><b>Sharana Shivanand</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3As-shivanand\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/shashank-k-y\"><img src=\"https://avatars.githubusercontent.com/u/74789167?v=4?s=100\" width=\"100px;\" alt=\"Shashank\"/><br /><sub><b>Shashank</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ashashank-k-y\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/srtee\"><img src=\"https://avatars.githubusercontent.com/u/60586092?v=4?s=100\" width=\"100px;\" alt=\"Shern Tee\"/><br /><sub><b>Shern Tee</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/shreyadimri\"><img src=\"https://avatars.githubusercontent.com/u/58469708?v=4?s=100\" width=\"100px;\" alt=\"Shreya Dimri\"/><br /><sub><b>Shreya Dimri</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ashreyadimri\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/sianbladon\"><img src=\"https://avatars0.githubusercontent.com/u/60200458?v=4?s=100\" width=\"100px;\" alt=\"Sian Bladon\"/><br /><sub><b>Sian Bladon</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/SianC\"><img src=\"https://avatars.githubusercontent.com/u/52662865?v=4?s=100\" width=\"100px;\" alt=\"SianC\"/><br /><sub><b>SianC</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ASianC\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://sibasmarak.blogspot.com \"><img src=\"https://avatars0.githubusercontent.com/u/49467053?v=4?s=100\" width=\"100px;\" alt=\"Siba Smarak Panigrahi\"/><br /><sub><b>Siba Smarak Panigrahi</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asibasmarak\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/BeastyBlacksmith\"><img src=\"https://avatars.githubusercontent.com/u/18145188?v=4?s=100\" width=\"100px;\" alt=\"Simon Christ\"/><br /><sub><b>Simon Christ</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ABeastyBlacksmith\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://simonduerr.eu\"><img src=\"https://avatars.githubusercontent.com/u/16979577?v=4?s=100\" width=\"100px;\" alt=\"Simon Duerr\"/><br /><sub><b>Simon Duerr</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aduerrsimon\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aduerrsimon\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://theabstract.github.io/\"><img src=\"https://avatars.githubusercontent.com/u/56311555?v=4?s=100\" width=\"100px;\" alt=\"Siphiwe\"/><br /><sub><b>Siphiwe</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ATheAbstract\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ATheAbstract\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.solon-karapanagiotis.com/\"><img src=\"https://avatars2.githubusercontent.com/u/7536922?v=4?s=100\" width=\"100px;\" alt=\"Solon\"/><br /><sub><b>Solon</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/BrainonSilicon\"><img src=\"https://avatars1.githubusercontent.com/u/42813259?v=4?s=100\" width=\"100px;\" alt=\"Sophia Batchelor\"/><br /><sub><b>Sophia Batchelor</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ABrainonSilicon\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=BrainonSilicon\" title=\"Tests\">⚠️</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ABrainonSilicon\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/aranas\"><img src=\"https://avatars.githubusercontent.com/u/6906140?v=4?s=100\" width=\"100px;\" alt=\"Sophie Arana\"/><br /><sub><b>Sophie Arana</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aaranas\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aaranas\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/sophiejean\"><img src=\"https://avatars.githubusercontent.com/u/100791169?v=4?s=100\" width=\"100px;\" alt=\"Sophie J Mann\"/><br /><sub><b>Sophie J Mann</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/RVFlowers\"><img src=\"https://avatars.githubusercontent.com/u/44363442?v=4?s=100\" width=\"100px;\" alt=\"Sophie T\"/><br /><sub><b>Sophie T</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ARVFlowers\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/sparkler0323\"><img src=\"https://avatars2.githubusercontent.com/u/18514015?v=4?s=100\" width=\"100px;\" alt=\"Sparkler\"/><br /><sub><b>Sparkler</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://srishti-nema.github.io/\"><img src=\"https://avatars1.githubusercontent.com/u/42498900?v=4?s=100\" width=\"100px;\" alt=\"Srishti Nema\"/><br /><sub><b>Srishti Nema</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asrishti-nema\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://stefanjanssen.nl\"><img src=\"https://avatars1.githubusercontent.com/u/6250246?v=4?s=100\" width=\"100px;\" alt=\"Stefan Janssen\"/><br /><sub><b>Stefan Janssen</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://sradicwebster.me/\"><img src=\"https://avatars.githubusercontent.com/u/56719930?v=4?s=100\" width=\"100px;\" alt=\"Stefan Radic Webster\"/><br /><sub><b>Stefan Radic Webster</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asradicwebster\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/sverhoeven\"><img src=\"https://avatars1.githubusercontent.com/u/1713488?v=4?s=100\" width=\"100px;\" alt=\"Stefan Verhoeven\"/><br /><sub><b>Stefan Verhoeven</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/stweil\"><img src=\"https://avatars.githubusercontent.com/u/6734573?v=4?s=100\" width=\"100px;\" alt=\"Stefan Weil\"/><br /><sub><b>Stefan Weil</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Astweil\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/StefanW0\"><img src=\"https://avatars.githubusercontent.com/u/183834624?v=4?s=100\" width=\"100px;\" alt=\"Stefan Wouters\"/><br /><sub><b>Stefan Wouters</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AStefanW0\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://mentat.za.net\"><img src=\"https://avatars.githubusercontent.com/u/45071?v=4?s=100\" width=\"100px;\" alt=\"Stefan van der Walt\"/><br /><sub><b>Stefan van der Walt</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Astefanv\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Astefanv\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://sdruskat.net\"><img src=\"https://avatars0.githubusercontent.com/u/3007126?v=4?s=100\" width=\"100px;\" alt=\"Stephan Druskat\"/><br /><sub><b>Stephan Druskat</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=sdruskat\" title=\"Documentation\">📖</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://damtp.cam.ac.uk/user/eglen\"><img src=\"https://avatars1.githubusercontent.com/u/1095067?v=4?s=100\" width=\"100px;\" alt=\"Stephen Eglen\"/><br /><sub><b>Stephen Eglen</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Asje30\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/HyunKN\"><img src=\"https://avatars.githubusercontent.com/u/152015418?v=4?s=100\" width=\"100px;\" alt=\"Sugu\"/><br /><sub><b>Sugu</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Sylfrena\"><img src=\"https://avatars2.githubusercontent.com/u/35404119?v=4?s=100\" width=\"100px;\" alt=\"Sumera Priyadarsini\"/><br /><sub><b>Sumera Priyadarsini</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ASylfrena\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://susana465.github.io/\"><img src=\"https://avatars.githubusercontent.com/u/73224467?v=4?s=100\" width=\"100px;\" alt=\"Susana Roman Garcia\"/><br /><sub><b>Susana Roman Garcia</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://sansonegroup.eng.ox.ac.uk/\"><img src=\"https://avatars3.githubusercontent.com/u/525719?v=4?s=100\" width=\"100px;\" alt=\"Susanna-Assunta Sansone\"/><br /><sub><b>Susanna-Assunta Sansone</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=SusannaSansone\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/svenvanderburg\"><img src=\"https://avatars.githubusercontent.com/u/9945255?v=4?s=100\" width=\"100px;\" alt=\"Sven van der Burg\"/><br /><sub><b>Sven van der Burg</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/SydneyAmbrose\"><img src=\"https://avatars.githubusercontent.com/u/144704015?v=4?s=100\" width=\"100px;\" alt=\"SydneyAmbrose\"/><br /><sub><b>SydneyAmbrose</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.bitsandchips.me\"><img src=\"https://avatars3.githubusercontent.com/u/23552331?v=4?s=100\" width=\"100px;\" alt=\"Tania Allard\"/><br /><sub><b>Tania Allard</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Atrallard\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.tudelft.nl/open-science\"><img src=\"https://avatars.githubusercontent.com/u/107634879?v=4?s=100\" width=\"100px;\" alt=\"Tanya Yankelevich\"/><br /><sub><b>Tanya Yankelevich</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.tarekallamjr.com\"><img src=\"https://avatars1.githubusercontent.com/u/8843728?v=4?s=100\" width=\"100px;\" alt=\"Tarek Allam\"/><br /><sub><b>Tarek Allam</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=tallamjr\" title=\"Documentation\">📖</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/davehedgehog\"><img src=\"https://avatars0.githubusercontent.com/u/57715289?v=4?s=100\" width=\"100px;\" alt=\"Tess Gough\"/><br /><sub><b>Tess Gough</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.linkedin.com/pub/thomas-sandmann/21/61b/410/\"><img src=\"https://avatars0.githubusercontent.com/u/10490984?v=4?s=100\" width=\"100px;\" alt=\"Thomas Sandmann\"/><br /><sub><b>Thomas Sandmann</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ThyavdBerg\"><img src=\"https://avatars.githubusercontent.com/u/77287134?v=4?s=100\" width=\"100px;\" alt=\"Thya van den Berg\"/><br /><sub><b>Thya van den Berg</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/lubianat\"><img src=\"https://avatars.githubusercontent.com/u/7917951?v=4?s=100\" width=\"100px;\" alt=\"Tiago Lubiana\"/><br /><sub><b>Tiago Lubiana</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/TiernanOSullivan\"><img src=\"https://avatars.githubusercontent.com/u/172599503?v=4?s=100\" width=\"100px;\" alt=\"Tiernan O'Sullivan\"/><br /><sub><b>Tiernan O'Sullivan</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ATiernanOSullivan\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/betatim\"><img src=\"https://avatars1.githubusercontent.com/u/1448859?v=4?s=100\" width=\"100px;\" alt=\"Tim Head\"/><br /><sub><b>Tim Head</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/timyers\"><img src=\"https://avatars.githubusercontent.com/u/48717893?v=4?s=100\" width=\"100px;\" alt=\"Tim Myers\"/><br /><sub><b>Tim Myers</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Atimyers\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/teapowell\"><img src=\"https://avatars1.githubusercontent.com/u/35264355?v=4?s=100\" width=\"100px;\" alt=\"Tim Powell\"/><br /><sub><b>Tim Powell</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/tonyyzy\"><img src=\"https://avatars3.githubusercontent.com/u/38984697?v=4?s=100\" width=\"100px;\" alt=\"Tony Yang\"/><br /><sub><b>Tony Yang</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=tonyyzy\" title=\"Documentation\">📖</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Trish-hub\"><img src=\"https://avatars.githubusercontent.com/u/78088054?v=4?s=100\" width=\"100px;\" alt=\"Trish\"/><br /><sub><b>Trish</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/TueloNtlotlang\"><img src=\"https://avatars.githubusercontent.com/u/72657722?v=4?s=100\" width=\"100px;\" alt=\"TueloNtlotlang\"/><br /><sub><b>TueloNtlotlang</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ATueloNtlotlang\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/CapTen101\"><img src=\"https://avatars0.githubusercontent.com/u/45699327?v=4?s=100\" width=\"100px;\" alt=\"Tushar Rohilla\"/><br /><sub><b>Tushar Rohilla</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ACapTen101\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/TylerGHawthorne\"><img src=\"https://avatars.githubusercontent.com/u/218156932?v=4?s=100\" width=\"100px;\" alt=\"TylerGHawthorne\"/><br /><sub><b>TylerGHawthorne</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://vamsiindugu.vercel.app/\"><img src=\"https://avatars.githubusercontent.com/u/150576424?v=4?s=100\" width=\"100px;\" alt=\"Vamsi Indugu\"/><br /><sub><b>Vamsi Indugu</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org\" title=\"Design\">🎨</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://gitlab.gwdg.de/users/hanna.varachkina/contributed\"><img src=\"https://avatars.githubusercontent.com/u/22443239?v=4?s=100\" width=\"100px;\" alt=\"Varachkina\"/><br /><sub><b>Varachkina</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AVarachkina\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/VatsalNagelia\"><img src=\"https://avatars.githubusercontent.com/u/52467754?v=4?s=100\" width=\"100px;\" alt=\"VatsalNagelia\"/><br /><sub><b>VatsalNagelia</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.veronikach.com\"><img src=\"https://avatars2.githubusercontent.com/u/10584818?v=4?s=100\" width=\"100px;\" alt=\"Veronika Cheplygina\"/><br /><sub><b>Veronika Cheplygina</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.linkedin.com/in/victoria-smith-754602104/\"><img src=\"https://avatars.githubusercontent.com/u/72864814?v=4?s=100\" width=\"100px;\" alt=\"Vicky Smith\"/><br /><sub><b>Vicky Smith</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/blue-moon22\"><img src=\"https://avatars1.githubusercontent.com/u/15203325?v=4?s=100\" width=\"100px;\" alt=\"Victoria\"/><br /><sub><b>Victoria</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/vdda\"><img src=\"https://avatars1.githubusercontent.com/u/642451?v=4?s=100\" width=\"100px;\" alt=\"Victoria Dominguez del Angel\"/><br /><sub><b>Victoria Dominguez del Angel</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Avdda\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/WinnyNekesa\"><img src=\"https://avatars.githubusercontent.com/u/110591866?v=4?s=100\" width=\"100px;\" alt=\"WNekesa\"/><br /><sub><b>WNekesa</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://warrickball.github.io\"><img src=\"https://avatars.githubusercontent.com/u/20858744?v=4?s=100\" width=\"100px;\" alt=\"Warrick Ball\"/><br /><sub><b>Warrick Ball</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://wiebketoussaint.com\"><img src=\"https://avatars3.githubusercontent.com/u/11086407?v=4?s=100\" width=\"100px;\" alt=\"Wiebke Toussaint\"/><br /><sub><b>Wiebke Toussaint</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Awiebket\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/wjchulme\"><img src=\"https://avatars1.githubusercontent.com/u/25637345?v=4?s=100\" width=\"100px;\" alt=\"Will Hulme\"/><br /><sub><b>Will Hulme</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=wjchulme\" title=\"Documentation\">📖</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/wna-se\"><img src=\"https://avatars3.githubusercontent.com/u/1221165?v=4?s=100\" width=\"100px;\" alt=\"Wolmar Nyberg Åkerström\"/><br /><sub><b>Wolmar Nyberg Åkerström</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Awna-se\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/xchen101\"><img src=\"https://avatars.githubusercontent.com/u/3393596?v=4?s=100\" width=\"100px;\" alt=\"Xiaoli Chen\"/><br /><sub><b>Xiaoli Chen</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/xc308\"><img src=\"https://avatars1.githubusercontent.com/u/55785985?v=4?s=100\" width=\"100px;\" alt=\"Xiaoqing Chen\"/><br /><sub><b>Xiaoqing Chen</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://yabellini.netlify.com/\"><img src=\"https://avatars.githubusercontent.com/u/2473676?v=4?s=100\" width=\"100px;\" alt=\"Yanina Bellini Saibene\"/><br /><sub><b>Yanina Bellini Saibene</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ayabellini\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.twinreality.blog\"><img src=\"https://avatars0.githubusercontent.com/u/44135465?v=4?s=100\" width=\"100px;\" alt=\"Yash Varshney\"/><br /><sub><b>Yash Varshney</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AYash-Varshney\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/minnieho1115\"><img src=\"https://avatars1.githubusercontent.com/u/35134464?v=4?s=100\" width=\"100px;\" alt=\"Yini\"/><br /><sub><b>Yini</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://yo-yehudi.com\"><img src=\"https://avatars0.githubusercontent.com/u/9271438?v=4?s=100\" width=\"100px;\" alt=\"Yo Yehudi\"/><br /><sub><b>Yo Yehudi</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=yochannah\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ayochannah\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ufangYang\"><img src=\"https://avatars3.githubusercontent.com/u/33165978?v=4?s=100\" width=\"100px;\" alt=\"Yu-Fang Yang\"/><br /><sub><b>Yu-Fang Yang</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AufangYang\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Zeena-Shawa\"><img src=\"https://avatars.githubusercontent.com/u/72321461?v=4?s=100\" width=\"100px;\" alt=\"Zeena-Shawa\"/><br /><sub><b>Zeena-Shawa</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ZoeIngr\"><img src=\"https://avatars.githubusercontent.com/u/80701413?v=4?s=100\" width=\"100px;\" alt=\"ZoeIngr\"/><br /><sub><b>ZoeIngr</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/abrown41\"><img src=\"https://avatars.githubusercontent.com/u/10060170?v=4?s=100\" width=\"100px;\" alt=\"abrown41\"/><br /><sub><b>abrown41</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/acork25\"><img src=\"https://avatars0.githubusercontent.com/u/55786005?v=4?s=100\" width=\"100px;\" alt=\"acork25\"/><br /><sub><b>acork25</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/acrall\"><img src=\"https://avatars.githubusercontent.com/u/17599316?v=4?s=100\" width=\"100px;\" alt=\"acrall\"/><br /><sub><b>acrall</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aacrall\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ahkrook\"><img src=\"https://avatars.githubusercontent.com/u/167080825?v=4?s=100\" width=\"100px;\" alt=\"ahkrook\"/><br /><sub><b>ahkrook</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/akira-endo\"><img src=\"https://avatars3.githubusercontent.com/u/26547770?v=4?s=100\" width=\"100px;\" alt=\"akira-endo\"/><br /><sub><b>akira-endo</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/alessandroragano\"><img src=\"https://avatars3.githubusercontent.com/u/44505487?v=4?s=100\" width=\"100px;\" alt=\"alessandroragano\"/><br /><sub><b>alessandroragano</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/alihumayun\"><img src=\"https://avatars.githubusercontent.com/u/78482064?v=4?s=100\" width=\"100px;\" alt=\"alihumayun\"/><br /><sub><b>alihumayun</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aalihumayun\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aalihumayun\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/andreabecsek\"><img src=\"https://avatars.githubusercontent.com/u/50207436?v=4?s=100\" width=\"100px;\" alt=\"andreabecsek\"/><br /><sub><b>andreabecsek</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/andrealuppi\"><img src=\"https://avatars.githubusercontent.com/u/50251039?v=4?s=100\" width=\"100px;\" alt=\"andrealuppi\"/><br /><sub><b>andrealuppi</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/annarae13\"><img src=\"https://avatars.githubusercontent.com/u/53874820?v=4?s=100\" width=\"100px;\" alt=\"annarae13\"/><br /><sub><b>annarae13</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.lse.ac.uk/media-and-communications/people/research-staff/asha-titus\"><img src=\"https://avatars3.githubusercontent.com/u/32542663?v=4?s=100\" width=\"100px;\" alt=\"ashatitus\"/><br /><sub><b>ashatitus</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aashatitus\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/asoaresca\"><img src=\"https://avatars.githubusercontent.com/u/143703780?v=4?s=100\" width=\"100px;\" alt=\"asoaresca\"/><br /><sub><b>asoaresca</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.drrebeccawilson.co.uk\"><img src=\"https://avatars0.githubusercontent.com/u/5114032?v=4?s=100\" width=\"100px;\" alt=\"beccawilson\"/><br /><sub><b>beccawilson</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://benkrikler.github.io\"><img src=\"https://avatars.githubusercontent.com/u/4083697?v=4?s=100\" width=\"100px;\" alt=\"benkrikler\"/><br /><sub><b>benkrikler</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/brynnelliott\"><img src=\"https://avatars.githubusercontent.com/u/104380698?v=4?s=100\" width=\"100px;\" alt=\"brynnelliott\"/><br /><sub><b>brynnelliott</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Abrynnelliott\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/caroldutra3\"><img src=\"https://avatars.githubusercontent.com/u/86290575?v=4?s=100\" width=\"100px;\" alt=\"caroldutra3\"/><br /><sub><b>caroldutra3</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Acaroldutra3\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ceciledebezenac\"><img src=\"https://avatars2.githubusercontent.com/u/49871974?v=4?s=100\" width=\"100px;\" alt=\"ceciledebezenac\"/><br /><sub><b>ceciledebezenac</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/claudia-belardi\"><img src=\"https://avatars.githubusercontent.com/u/62244233?v=4?s=100\" width=\"100px;\" alt=\"claudia-belardi\"/><br /><sub><b>claudia-belardi</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aclaudia-belardi\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/daniguariso\"><img src=\"https://avatars3.githubusercontent.com/u/40636435?v=4?s=100\" width=\"100px;\" alt=\"daniguariso\"/><br /><sub><b>daniguariso</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/denisebianco\"><img src=\"https://avatars.githubusercontent.com/u/151555588?v=4?s=100\" width=\"100px;\" alt=\"denisebianco\"/><br /><sub><b>denisebianco</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/dumei00\"><img src=\"https://avatars.githubusercontent.com/u/94013453?v=4?s=100\" width=\"100px;\" alt=\"dumei00\"/><br /><sub><b>dumei00</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/f-rower\"><img src=\"https://avatars.githubusercontent.com/u/29379394?v=4?s=100\" width=\"100px;\" alt=\"f-rower\"/><br /><sub><b>f-rower</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=f-rower\" title=\"Code\">💻</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=f-rower\" title=\"Documentation\">📖</a> <a href=\"https://book.the-turing-way.org\" title=\"Design\">🎨</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Promotion\">📣</a> <a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=f-rower\" title=\"Tests\">⚠️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/fhreidsma\"><img src=\"https://avatars.githubusercontent.com/u/80468267?v=4?s=100\" width=\"100px;\" alt=\"fhreidsma\"/><br /><sub><b>fhreidsma</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Afhreidsma\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ghuangcazza\"><img src=\"https://avatars.githubusercontent.com/u/72579332?v=4?s=100\" width=\"100px;\" alt=\"ghuangcazza\"/><br /><sub><b>ghuangcazza</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/giuliaok\"><img src=\"https://avatars1.githubusercontent.com/u/33548935?v=4?s=100\" width=\"100px;\" alt=\"giuliaok\"/><br /><sub><b>giuliaok</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/giuliatomba\"><img src=\"https://avatars.githubusercontent.com/u/56237678?v=4?s=100\" width=\"100px;\" alt=\"giuliatomba\"/><br /><sub><b>giuliatomba</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Agiuliatomba\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/glumand\"><img src=\"https://avatars3.githubusercontent.com/u/55833875?v=4?s=100\" width=\"100px;\" alt=\"glumand\"/><br /><sub><b>glumand</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/grczh\"><img src=\"https://avatars.githubusercontent.com/u/92826273?v=4?s=100\" width=\"100px;\" alt=\"grczh\"/><br /><sub><b>grczh</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/griff-rees\"><img src=\"https://avatars.githubusercontent.com/u/60181741?v=4?s=100\" width=\"100px;\" alt=\"griff-rees\"/><br /><sub><b>griff-rees</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Agriff-rees\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/gulesaman\"><img src=\"https://avatars.githubusercontent.com/u/60602896?v=4?s=100\" width=\"100px;\" alt=\"gulesaman\"/><br /><sub><b>gulesaman</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/harisood\"><img src=\"https://avatars.githubusercontent.com/u/67151373?v=4?s=100\" width=\"100px;\" alt=\"harisood\"/><br /><sub><b>harisood</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aharisood\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/hlnicholls\"><img src=\"https://avatars.githubusercontent.com/u/53306752?v=4?s=100\" width=\"100px;\" alt=\"hlnicholls\"/><br /><sub><b>hlnicholls</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ahlnicholls\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/iramosp\"><img src=\"https://avatars.githubusercontent.com/u/8619939?v=4?s=100\" width=\"100px;\" alt=\"iramosp\"/><br /><sub><b>iramosp</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Airamosp\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/irenekp\"><img src=\"https://avatars2.githubusercontent.com/u/53008913?v=4?s=100\" width=\"100px;\" alt=\"irenekp\"/><br /><sub><b>irenekp</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/jessieontherun\"><img src=\"https://avatars.githubusercontent.com/u/56831617?v=4?s=100\" width=\"100px;\" alt=\"jessieontherun\"/><br /><sub><b>jessieontherun</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jessieontherun\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/jewelyk\"><img src=\"https://avatars.githubusercontent.com/u/66874197?v=4?s=100\" width=\"100px;\" alt=\"jewelyk\"/><br /><sub><b>jewelyk</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ajewelyk\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/JonnyHorsley\"><img src=\"https://avatars.githubusercontent.com/u/57093278?v=4?s=100\" width=\"100px;\" alt=\"jonnyhorsley\"/><br /><sub><b>jonnyhorsley</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://julieta.aranc.io\"><img src=\"https://avatars.githubusercontent.com/u/33497609?v=4?s=100\" width=\"100px;\" alt=\"juli arancio\"/><br /><sub><b>juli arancio</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/keneuoe\"><img src=\"https://avatars.githubusercontent.com/u/32788068?v=4?s=100\" width=\"100px;\" alt=\"keneuoe\"/><br /><sub><b>keneuoe</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/kgrieman\"><img src=\"https://avatars0.githubusercontent.com/u/55785990?v=4?s=100\" width=\"100px;\" alt=\"kgrieman\"/><br /><sub><b>kgrieman</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/kkaryono\"><img src=\"https://avatars.githubusercontent.com/u/68295052?v=4?s=100\" width=\"100px;\" alt=\"kkaryono\"/><br /><sub><b>kkaryono</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/l-gorman\"><img src=\"https://avatars2.githubusercontent.com/u/55786252?v=4?s=100\" width=\"100px;\" alt=\"l-gorman\"/><br /><sub><b>l-gorman</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/lakillo\"><img src=\"https://avatars.githubusercontent.com/u/81825476?v=4?s=100\" width=\"100px;\" alt=\"lakillo\"/><br /><sub><b>lakillo</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/leavanh\"><img src=\"https://avatars2.githubusercontent.com/u/50297755?v=4?s=100\" width=\"100px;\" alt=\"leavanh\"/><br /><sub><b>leavanh</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aleavanh\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/lottycoupat\"><img src=\"https://avatars.githubusercontent.com/u/82104604?v=4?s=100\" width=\"100px;\" alt=\"lottycoupat\"/><br /><sub><b>lottycoupat</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Alottycoupat\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/lukehare\"><img src=\"https://avatars.githubusercontent.com/u/44277986?v=4?s=100\" width=\"100px;\" alt=\"lukehare\"/><br /><sub><b>lukehare</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/lwalma\"><img src=\"https://avatars.githubusercontent.com/u/100857620?v=4?s=100\" width=\"100px;\" alt=\"lwalma\"/><br /><sub><b>lwalma</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/mahmoud-elsherif\"><img src=\"https://avatars.githubusercontent.com/u/44072961?v=4?s=100\" width=\"100px;\" alt=\"mahmoud-elsherif\"/><br /><sub><b>mahmoud-elsherif</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/mcnanton\"><img src=\"https://avatars.githubusercontent.com/u/42379883?v=4?s=100\" width=\"100px;\" alt=\"mcnanton\"/><br /><sub><b>mcnanton</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Amcnanton\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/meliimming\"><img src=\"https://avatars.githubusercontent.com/u/129850001?v=4?s=100\" width=\"100px;\" alt=\"meliimming\"/><br /><sub><b>meliimming</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ameliimming\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/mengyucui123\"><img src=\"https://avatars.githubusercontent.com/u/124688773?v=4?s=100\" width=\"100px;\" alt=\"mengyucui123\"/><br /><sub><b>mengyucui123</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/merlijn-de-smit\"><img src=\"https://avatars.githubusercontent.com/u/110983126?v=4?s=100\" width=\"100px;\" alt=\"merlijn-de-smit\"/><br /><sub><b>merlijn-de-smit</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Amerlijn-de-smit\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/mingyuzhuu\"><img src=\"https://avatars.githubusercontent.com/u/57093217?v=4?s=100\" width=\"100px;\" alt=\"mingyuzhuu\"/><br /><sub><b>mingyuzhuu</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/mjcasy\"><img src=\"https://avatars1.githubusercontent.com/u/44202821?v=4?s=100\" width=\"100px;\" alt=\"mjcasy\"/><br /><sub><b>mjcasy</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/mkhslaa\"><img src=\"https://avatars.githubusercontent.com/u/4571759?v=4?s=100\" width=\"100px;\" alt=\"mkhslaa\"/><br /><sub><b>mkhslaa</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/msanter01\"><img src=\"https://avatars0.githubusercontent.com/u/39199660?v=4?s=100\" width=\"100px;\" alt=\"msanter01\"/><br /><sub><b>msanter01</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/myyong\"><img src=\"https://avatars.githubusercontent.com/u/5417696?v=4?s=100\" width=\"100px;\" alt=\"myyong\"/><br /><sub><b>myyong</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=myyong\" title=\"Code\">💻</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/nnorouzi913\"><img src=\"https://avatars.githubusercontent.com/u/239992651?v=4?s=100\" width=\"100px;\" alt=\"nnorouzi913\"/><br /><sub><b>nnorouzi913</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Annorouzi913\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/oxpeter\"><img src=\"https://avatars3.githubusercontent.com/u/6393360?v=4?s=100\" width=\"100px;\" alt=\"oxpeter\"/><br /><sub><b>oxpeter</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aoxpeter\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/pascalflohr\"><img src=\"https://avatars.githubusercontent.com/u/43570914?v=4?s=100\" width=\"100px;\" alt=\"pascalflohr\"/><br /><sub><b>pascalflohr</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Apascalflohr\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.penonek.com/\"><img src=\"https://avatars.githubusercontent.com/u/13352427?v=4?s=100\" width=\"100px;\" alt=\"penyuan\"/><br /><sub><b>penyuan</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/peterrhysstrong\"><img src=\"https://avatars.githubusercontent.com/u/43751009?v=4?s=100\" width=\"100px;\" alt=\"peterrhysstrong\"/><br /><sub><b>peterrhysstrong</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/rabbits99\"><img src=\"https://avatars1.githubusercontent.com/u/72690233?v=4?s=100\" width=\"100px;\" alt=\"rabbits99\"/><br /><sub><b>rabbits99</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/rachelzwalker\"><img src=\"https://avatars.githubusercontent.com/u/100789985?v=4?s=100\" width=\"100px;\" alt=\"rachelzwalker\"/><br /><sub><b>rachelzwalker</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/raptorchief\"><img src=\"https://avatars.githubusercontent.com/u/55805992?v=4?s=100\" width=\"100px;\" alt=\"raptorchief\"/><br /><sub><b>raptorchief</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Araptorchief\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://orcid.org/0000-0003-2745-1963\"><img src=\"https://avatars.githubusercontent.com/u/33315062?v=4?s=100\" width=\"100px;\" alt=\"rickdkk\"/><br /><sub><b>rickdkk</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/robbykha\"><img src=\"https://avatars.githubusercontent.com/u/131724231?v=4?s=100\" width=\"100px;\" alt=\"robbykha\"/><br /><sub><b>robbykha</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/russellmartin321\"><img src=\"https://avatars.githubusercontent.com/u/104580892?v=4?s=100\" width=\"100px;\" alt=\"russellmartin321\"/><br /><sub><b>russellmartin321</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Arussellmartin321\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/sallyob123\"><img src=\"https://avatars2.githubusercontent.com/u/55785959?v=4?s=100\" width=\"100px;\" alt=\"sallyob123\"/><br /><sub><b>sallyob123</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/sethsh7\"><img src=\"https://avatars0.githubusercontent.com/u/53264282?v=4?s=100\" width=\"100px;\" alt=\"sethsh7\"/><br /><sub><b>sethsh7</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.linkedin.com/in/susanwg/\"><img src=\"https://avatars.githubusercontent.com/u/53834942?v=4?s=100\" width=\"100px;\" alt=\"sgichuki\"/><br /><sub><b>sgichuki</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asgichuki\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/sliaqat3\"><img src=\"https://avatars2.githubusercontent.com/u/56300607?v=4?s=100\" width=\"100px;\" alt=\"sliaqat3\"/><br /><sub><b>sliaqat3</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Asliaqat3\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/saramasa22\"><img src=\"https://avatars3.githubusercontent.com/u/55786246?v=4?s=100\" width=\"100px;\" alt=\"smasarone\"/><br /><sub><b>smasarone</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/snehashish-ghosh98\"><img src=\"https://avatars.githubusercontent.com/u/106345869?v=4?s=100\" width=\"100px;\" alt=\"snehashish-ghosh98\"/><br /><sub><b>snehashish-ghosh98</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asnehashish-ghosh98\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/sreenithyaa\"><img src=\"https://avatars.githubusercontent.com/u/64282208?v=4?s=100\" width=\"100px;\" alt=\"sreenithyaa\"/><br /><sub><b>sreenithyaa</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Asreenithyaa\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/srtmohan\"><img src=\"https://avatars.githubusercontent.com/u/114400355?v=4?s=100\" width=\"100px;\" alt=\"srtmohan\"/><br /><sub><b>srtmohan</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/swalkoAI\"><img src=\"https://avatars2.githubusercontent.com/u/55786131?v=4?s=100\" width=\"100px;\" alt=\"swalkoAI\"/><br /><sub><b>swalkoAI</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/takuover\"><img src=\"https://avatars2.githubusercontent.com/u/52206060?v=4?s=100\" width=\"100px;\" alt=\"takuover\"/><br /><sub><b>takuover</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/timothy22000\"><img src=\"https://avatars.githubusercontent.com/u/9934371?v=4?s=100\" width=\"100px;\" alt=\"timothy22000\"/><br /><sub><b>timothy22000</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/tongyu0924\"><img src=\"https://avatars.githubusercontent.com/u/119610311?v=4?s=100\" width=\"100px;\" alt=\"tongyu\"/><br /><sub><b>tongyu</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/tpronk\"><img src=\"https://avatars.githubusercontent.com/u/8987504?v=4?s=100\" width=\"100px;\" alt=\"tpronk\"/><br /><sub><b>tpronk</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Atpronk\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/tugceoruc\"><img src=\"https://avatars0.githubusercontent.com/u/20405276?v=4?s=100\" width=\"100px;\" alt=\"tugceoruc\"/><br /><sub><b>tugceoruc</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/vasilisstav\"><img src=\"https://avatars0.githubusercontent.com/u/55793023?v=4?s=100\" width=\"100px;\" alt=\"vasilisstav\"/><br /><sub><b>vasilisstav</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/vcpope\"><img src=\"https://avatars.githubusercontent.com/u/62377353?v=4?s=100\" width=\"100px;\" alt=\"vcpope\"/><br /><sub><b>vcpope</b></sub></a><br /><a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/veerasai06\"><img src=\"https://avatars.githubusercontent.com/u/229084338?v=4?s=100\" width=\"100px;\" alt=\"veerasai06\"/><br /><sub><b>veerasai06</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/vhellon\"><img src=\"https://avatars.githubusercontent.com/u/93144591?v=4?s=100\" width=\"100px;\" alt=\"vhellon\"/><br /><sub><b>vhellon</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Avhellon\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://book.the-turing-way.org\" title=\"Examples\">💡</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Avhellon\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/vrajesh-daga\"><img src=\"https://avatars.githubusercontent.com/u/201659831?v=4?s=100\" width=\"100px;\" alt=\"vrajesh-daga\"/><br /><sub><b>vrajesh-daga</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Avrajesh-daga\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/yaochengchen\"><img src=\"https://avatars.githubusercontent.com/u/51320658?v=4?s=100\" width=\"100px;\" alt=\"yaochengchen\"/><br /><sub><b>yaochengchen</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/yaseminturkyilmaz\"><img src=\"https://avatars3.githubusercontent.com/u/45484225?v=4?s=100\" width=\"100px;\" alt=\"yaseminturkyilmaz\"/><br /><sub><b>yaseminturkyilmaz</b></sub></a><br /><a href=\"https://github.com/the-turing-way/newsletter\" title=\"Blogposts\">📝</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n  </tbody>\n</table>\n\n<!-- markdownlint-restore -->\n<!-- prettier-ignore-end -->\n\n<!-- ALL-CONTRIBUTORS-LIST:END -->\n\nThis project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification.\nContributions of any kind welcome!\n\n## CROWDIN CONTRIBUTORS\n<!-- CROWDIN-CONTRIBUTORS-LIST:START -->\n<table>\n  <tbody>\n    <tr>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/26/medium/5b77163808ce530c50d295f1336507d8_default.png\" />\n        <br />\n        <sub><b>Asma Kacem (asmakacem)</b></sub>\n        <br />\n        <sub><b>35934 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/1/medium/0c17284a2e87d9a1933f711746212298.jpeg\" />\n        <br />\n        <sub><b>Batool Almarzouq (batool664)</b></sub>\n        <br />\n        <sub><b>34202 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b>, <b><code title=\"Chinese Simplified\">zh-CN</code></b>, <b><code title=\"French\">fr</code></b>, <b><code title=\"Italian\">it</code></b>, <b><code title=\"Japanese\">ja</code></b>, <b><code title=\"Portuguese, Brazilian\">pt-BR</code></b>, <b><code title=\"Spanish, Latin America\">es-419</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/145/medium/06752c8f7224d971a260ffbdb67071e6.png\" />\n        <br />\n        <sub><b>Richie Moluno (molunorichie)</b></sub>\n        <br />\n        <sub><b>149739 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b>, <b><code title=\"Chinese Simplified\">zh-CN</code></b>, <b><code title=\"French\">fr</code></b>, <b><code title=\"Japanese\">ja</code></b>, <b><code title=\"Portuguese, Brazilian\">pt-BR</code></b>, <b><code title=\"Spanish, Latin America\">es-419</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/90/medium/6112a91c1fd9fd24ed2d5906a2db3ef9.jpeg\" />\n        <br />\n        <sub><b>cozenkaplan</b></sub>\n        <br />\n        <sub><b>5914 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/171/medium/b69b0ce61c692d4b1bf3f06e9d763dc8.jpeg\" />\n        <br />\n        <sub><b>Vitória Stavis (vitoriastavis)</b></sub>\n        <br />\n        <sub><b>5337 words</b></sub>\n        <br /><sub><b><code title=\"Portuguese, Brazilian\">pt-BR</code></b></sub>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/100/medium/17fa9c884f31b86b2236f8c2db0f4def_default.png\" />\n        <br />\n        <sub><b>melibleq</b></sub>\n        <br />\n        <sub><b>7757 words</b></sub>\n        <br /><sub><b><code title=\"Portuguese, Brazilian\">pt-BR</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/12/medium/112dffa3e5cc1fbd7fbbd3e9bfd520dc_default.png\" />\n        <br />\n        <sub><b>Mohamed Alaa Eddine Mejri (alaamejri)</b></sub>\n        <br />\n        <sub><b>2658 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/184/medium/7c26b64a5d9766cfc274eac3f0dc10b1.jpeg\" />\n        <br />\n        <sub><b>João Pitta (jlpitta82)</b></sub>\n        <br />\n        <sub><b>2558 words</b></sub>\n        <br /><sub><b><code title=\"Portuguese, Brazilian\">pt-BR</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/182/medium/71cf117221f1d2361873154d4ad25758.png\" />\n        <br />\n        <sub><b>Alicia Melo (aliemelo)</b></sub>\n        <br />\n        <sub><b>2514 words</b></sub>\n        <br /><sub><b><code title=\"Portuguese, Brazilian\">pt-BR</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/179/medium/a45b69ebaf4c8c652b42628022584fc2.png\" />\n        <br />\n        <sub><b>VITOR LUCIANO COSTA DA SILVA (vitor.silva7)</b></sub>\n        <br />\n        <sub><b>2455 words</b></sub>\n        <br /><sub><b><code title=\"Portuguese, Brazilian\">pt-BR</code></b></sub>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/135/medium/d8c65f8d4d1289eb0116d654ebd1fa7d_default.png\" />\n        <br />\n        <sub><b>node</b></sub>\n        <br />\n        <sub><b>2390 words</b></sub>\n        <br /><sub><b><code title=\"Chinese Simplified\">zh-CN</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/7/medium/ba8209f4544bc4fcf882f35ba295bc5c_default.png\" />\n        <br />\n        <sub><b>crangelsmith</b></sub>\n        <br />\n        <sub><b>2685 words</b></sub>\n        <br /><sub><b><code title=\"French\">fr</code></b>, <b><code title=\"Spanish, Latin America\">es-419</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/173/medium/0f7dcef1edc12d411af6f7b16a968623_default.png\" />\n        <br />\n        <sub><b>Matheus Pimenta (omatheuspimenta)</b></sub>\n        <br />\n        <sub><b>2159 words</b></sub>\n        <br /><sub><b><code title=\"Portuguese, Brazilian\">pt-BR</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/137/medium/0db9c41e4579dc47c5a289315ca6e016.jpeg\" />\n        <br />\n        <sub><b>João Vitor (jvfe)</b></sub>\n        <br />\n        <sub><b>1490 words</b></sub>\n        <br /><sub><b><code title=\"Portuguese, Brazilian\">pt-BR</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/5/medium/463393d04547cd1067cccdb0cf0e33c7.jpeg\" />\n        <br />\n        <sub><b>acocac</b></sub>\n        <br />\n        <sub><b>1892 words</b></sub>\n        <br /><sub><b><code title=\"Spanish, Latin America\">es-419</code></b></sub>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/10/medium/1b1667031f9e47e186ffdd6b8a184dfe.png\" />\n        <br />\n        <sub><b>Boutainaelatbaoui</b></sub>\n        <br />\n        <sub><b>1259 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/20/medium/32627112ab709769f5d1406937ed9558.jpg\" />\n        <br />\n        <sub><b>ثناء (Thana)</b></sub>\n        <br />\n        <sub><b>1094 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/68/medium/6deaa65b1f0997b43df812d13b2f1106.jpeg\" />\n        <br />\n        <sub><b>Kozo Nishida (kozo2)</b></sub>\n        <br />\n        <sub><b>1043 words</b></sub>\n        <br /><sub><b><code title=\"Japanese\">ja</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/108/medium/b060f6c4b504d701c36d4b384e612dd4_default.png\" />\n        <br />\n        <sub><b>berhankatipoglu</b></sub>\n        <br />\n        <sub><b>990 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/139/medium/2449eb1df310dcaff0ccb929817c5543.jpeg\" />\n        <br />\n        <sub><b>Anna Zanchetta (ciupava)</b></sub>\n        <br />\n        <sub><b>1846 words</b></sub>\n        <br /><sub><b><code title=\"Italian\">it</code></b></sub>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/64/medium/dc6bbb114a3c768f424a553bac213989.jpeg\" />\n        <br />\n        <sub><b>timothy22000</b></sub>\n        <br />\n        <sub><b>879 words</b></sub>\n        <br /><sub><b><code title=\"Chinese Simplified\">zh-CN</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/18/medium/4eaefb611f9a4efb0dbe090002e56c31_default.png\" />\n        <br />\n        <sub><b>seunlijoka</b></sub>\n        <br />\n        <sub><b>861 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/70/medium/2262b12230cac55e1d97a9d3f3af8086.png\" />\n        <br />\n        <sub><b>Muhammet Ali Kula (alikula314)</b></sub>\n        <br />\n        <sub><b>840 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/52/medium/1270d5b75e2b6b35d222b9e1c19b973f_default.png\" />\n        <br />\n        <sub><b>Muluh</b></sub>\n        <br />\n        <sub><b>713 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/106/medium/4525151e38c77aba3592e1666c7717f4.jpeg\" />\n        <br />\n        <sub><b>İsmail Kılıç (ismailkilic)</b></sub>\n        <br />\n        <sub><b>633 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/60/medium/dd415fa9f35bc08f229498c49bf053ea.JPG\" />\n        <br />\n        <sub><b>Iman Al Hasani (ImanAlhasani)</b></sub>\n        <br />\n        <sub><b>1274 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/66/medium/48ff46079939fb7bebca7186552ad3fc.jpeg\" />\n        <br />\n        <sub><b>Anıl Tuncel (anilbey)</b></sub>\n        <br />\n        <sub><b>609 words</b></sub>\n        <br /><sub><b><code title=\"Spanish, Latin America\">es-419</code></b>, <b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/177/medium/f7d1a233a687f2b8e760e38cc2ab1ec2.jpeg\" />\n        <br />\n        <sub><b>Leonardo Dorneles (leonardodorneles)</b></sub>\n        <br />\n        <sub><b>533 words</b></sub>\n        <br /><sub><b><code title=\"Portuguese, Brazilian\">pt-BR</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/161/medium/d623b8524dd0f439d7d720263233ef0a.png\" />\n        <br />\n        <sub><b>jordan49er</b></sub>\n        <br />\n        <sub><b>372 words</b></sub>\n        <br /><sub><b><code title=\"French\">fr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/86/medium/591f614a9b9be8d2ec9b04e63699a377.jpeg\" />\n        <br />\n        <sub><b>Ceren YURTLU (cerenyurtlu)</b></sub>\n        <br />\n        <sub><b>362 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/98/medium/84288ef00942e512a1e54bc8545db2f1.jpeg\" />\n        <br />\n        <sub><b>yasin güneş (yasin01ysn)</b></sub>\n        <br />\n        <sub><b>269 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/3/medium/83bd007136a00d1a9fa70f1f14afbb66_default.png\" />\n        <br />\n        <sub><b>Andrea Sánchez-Tapia (andreasancheztapia)</b></sub>\n        <br />\n        <sub><b>2134 words</b></sub>\n        <br /><sub><b><code title=\"Portuguese, Brazilian\">pt-BR</code></b>, <b><code title=\"Spanish, Latin America\">es-419</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/131/medium/0b582d612e2a4062b069a758f2534430.jpeg\" />\n        <br />\n        <sub><b>Johan Bonneau (Zenigata)</b></sub>\n        <br />\n        <sub><b>254 words</b></sub>\n        <br /><sub><b><code title=\"French\">fr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/8/medium/d6d807e129e1bb3c24aa1635afeb6d09.jpeg\" />\n        <br />\n        <sub><b>Nancy Aswad (nancyalaswad90)</b></sub>\n        <br />\n        <sub><b>230 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/48/medium/42082ab79726e9cee6033ad20c017722.jpeg\" />\n        <br />\n        <sub><b>Salma Abdelfattah (salmaabdelfatah77)</b></sub>\n        <br />\n        <sub><b>225 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/121/medium/b2f34f2fea0e93e39a3f9beafabc0fb5_default.png\" />\n        <br />\n        <sub><b>danielumpierre</b></sub>\n        <br />\n        <sub><b>243 words</b></sub>\n        <br /><sub><b><code title=\"Portuguese, Brazilian\">pt-BR</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/36/medium/7fedad8f1ac74abc71cb774f8b7236ca.png\" />\n        <br />\n        <sub><b>IssaAlrubaye</b></sub>\n        <br />\n        <sub><b>231 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/54/medium/49e7cf2ae4b97bc5dca7c2d848e84117.png\" />\n        <br />\n        <sub><b>Abdulrahman Alswaji (alswajiab)</b></sub>\n        <br />\n        <sub><b>164 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/125/medium/3f3d78bc1e1aed775ca33429148b74e4.jpeg\" />\n        <br />\n        <sub><b>KHADIJAH WURAOLA AMUSAT (Khadeeejah)</b></sub>\n        <br />\n        <sub><b>164 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/92/medium/8d9e7e27ed54c88f71729cea1b8d98b0_default.png\" />\n        <br />\n        <sub><b>iclal.cetin</b></sub>\n        <br />\n        <sub><b>91 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/80/medium/bd65e4c199c4894429131d427d14871b_default.png\" />\n        <br />\n        <sub><b>niraito</b></sub>\n        <br />\n        <sub><b>87 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/84/medium/9b47771c0437ed8f8bf438caef48f508_default.png\" />\n        <br />\n        <sub><b>merveaydin</b></sub>\n        <br />\n        <sub><b>77 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/154/medium/ca8fba23cbd0d3868c752404f7347b04.png\" />\n        <br />\n        <sub><b>Annajiat Alim Rasel (annajiat)</b></sub>\n        <br />\n        <sub><b>71 words</b></sub>\n        <br /><sub><b><code title=\"Bengali\">bn</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/62/medium/ba0593097d63731f2da78ae9e0ed3296.jpeg\" />\n        <br />\n        <sub><b>Gültekin Ünal (cinnetcrash)</b></sub>\n        <br />\n        <sub><b>63 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/109/medium/1ea5e78434e043089a69456bca38e711.JPG\" />\n        <br />\n        <sub><b>Burhan Simsek (burhansimsekbs)</b></sub>\n        <br />\n        <sub><b>45 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/159/medium/94ce74abfc3812748a934c152198b0af.jpeg\" />\n        <br />\n        <sub><b>Adrien Taudiere (adrientaudiere)</b></sub>\n        <br />\n        <sub><b>36 words</b></sub>\n        <br /><sub><b><code title=\"French\">fr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/72/medium/137b4d9172d1ad8ed62737ac8e13a045_default.png\" />\n        <br />\n        <sub><b>fatmaerdem</b></sub>\n        <br />\n        <sub><b>40 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/74/medium/9113e949babb3cc63807298633376b00.jpeg\" />\n        <br />\n        <sub><b>Şükrücan Cebeci (sukrucncbc)</b></sub>\n        <br />\n        <sub><b>11 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/151/medium/bf57e39ccfdd7d3d9de8bd94551b7f05.jpeg\" />\n        <br />\n        <sub><b>mcnanton</b></sub>\n        <br />\n        <sub><b>4 words</b></sub>\n        <br /><sub><b><code title=\"Spanish, Latin America\">es-419</code></b></sub>\n      </td>\n    </tr>\n  </tbody>\n</table><a href=\"https://turingway.crowdin.com/turing-way\" target=\"_blank\">Translate in Crowdin 🚀</a>\n<!-- CROWDIN-CONTRIBUTORS-LIST:END -->\n"
  },
  {
    "path": "Vagrantfile",
    "content": "# -*- mode: ruby -*-\n# vi: set ft=ruby :\n\nVagrant.configure(\"2\") do |config|\n  # A Fedora 36 box that works with multiple hypervisors\n  # https://app.vagrantup.com/generic/boxes/fedora36\n  config.vm.box = \"generic/fedora36\"\n\n  config.vm.hostname = 'theturingway'\n\n  # Sync the project directory between the host and vagrant environment\n  config.vm.synced_folder \"./\", \"/vagrant\"\n\n  # Options for the VirtualBox provider\n  config.vm.provider \"virtualbox\" do |vb|\n    # Set a reasonable amount of virtual CPUs and memory\n    vb.cpus = 2\n    vb.memory = 2048\n  end\n\n  # Options for the libvirt provider\n  config.vm.provider \"libvirt\" do |lv, override|\n    # Set a reasonable amount of virtual CPUs and memory\n    lv.cpus = 2\n    lv.memory = 2048\n\n    # For Linux users with libvirt, NFS is used to sync directories\n    # We set this to use TCP and not UDP as this is safer\n    # TCP is the default for more modern NFS versions\n    override.vm.synced_folder \"./\", \"/vagrant\", nfs_udp: false\n  end\n\n  # Options for the Hyper-V provider\n  config.vm.provider \"hyperv\" do |hv|\n    # Set a reasonable amount of virtual CPUs and memory\n    hv.cpus = 2\n    hv.memory = 2048\n  end\n\n  # Script to install the build dependencies\n  $script = <<-'SCRIPT'\n  # Install pip\n  dnf install -y python3-pip\n  # Install build dependencies\n  sudo -u vagrant pip install --no-warn-script-location -r /vagrant/book/requirements.txt\n  SCRIPT\n\n  # Run the script using the shell provisioner\n  config.vm.provision \"shell\", inline: $script\nend\n"
  },
  {
    "path": "book/.gitignore",
    "content": "_build/\n\nwebsite/_site\nwebsite/_build\nwebsite/.sass-cache\n\n# Byte-compiled / optimized / DLL files\n__pycache__/\n*.py[cod]\n*$py.class\n\n# C extensions\n*.so\n\n# Distribution / packaging\n.Python\nbuild/\ndevelop-eggs/\ndist/\ndownloads/\neggs/\n.eggs/\nlib/\nlib64/\nparts/\nsdist/\nvar/\nwheels/\npip-wheel-metadata/\nshare/python-wheels/\n*.egg-info/\n.installed.cfg\n*.egg\nMANIFEST\n\n# PyInstaller\n#  Usually these files are written by a python script from a template\n#  before PyInstaller builds the exe, so as to inject date/other infos into it.\n*.manifest\n*.spec\n\n# Installer logs\npip-log.txt\npip-delete-this-directory.txt\n\n# Unit test / coverage reports\nhtmlcov/\n.tox/\n.nox/\n.coverage\n.coverage.*\n.cache\nnosetests.xml\ncoverage.xml\n*.cover\n.hypothesis/\n.pytest_cache/\n\n# Translations\n*.mo\n*.pot\n\n# Django stuff:\n*.log\nlocal_settings.py\ndb.sqlite3\n\n# Flask stuff:\ninstance/\n.webassets-cache\n\n# Scrapy stuff:\n.scrapy\n\n# Sphinx documentation\ndocs/_build/\n\n# PyBuilder\ntarget/\n\n# Jupyter Notebook\n.ipynb_checkpoints\n\n# IPython\nprofile_default/\nipython_config.py\n\n# pyenv\n.python-version\n\n# pipenv\n#   According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.\n#   However, in case of collaboration, if having platform-specific dependencies or dependencies\n#   having no cross-platform support, pipenv may install dependencies that don’t work, or not\n#   install all needed dependencies.\n#Pipfile.lock\n\n# celery beat schedule file\ncelerybeat-schedule\n\n# SageMath parsed files\n*.sage.py\n\n# Environments\n.env\n.venv\nenv/\nvenv/\nENV/\nenv.bak/\nvenv.bak/\n\n# Spyder project settings\n.spyderproject\n.spyproject\n\n# Rope project settings\n.ropeproject\n\n# mkdocs documentation\n/site\n\n# mypy\n.mypy_cache/\n.dmypy.json\ndmypy.json\n\n# Pyre type checker\n.pyre/\n"
  },
  {
    "path": "book/.words.lst",
    "content": "#==========\n# aspell checks typos in files\n# This .words.lst file was generated by aspell ignores many acronyms and names when running the following command from the root of the repository:\n# ```\n# for f in $(find -name \"*.md\"); do\n#     aspell check -x -p ./book/.words.lst -l en_GB -M -m $f\n# done\n# ```\n# WARNING: several misspellings are included in this file that may been used in HTML tags or links.\n#\n# We are not maintaining this file actively. See PR #1652 (https://github.com/the-turing-way/the-turing-way/pull/1652/) for detail.\n#\n# This comment may need to be removed from this file before calling aspell.\n#\n#==========\npersonal_ws-1.1 en 1028\nACM\nAE\nALv\nAPA\nARKs\nATI\nAbdoli\nAcion\nAcyclic\nAdina\nAditi\nAdvisor\nAfterwork\nAhern\nAinsworth\nAleksandra\nAlessandroni\nAlia\nAllam\nAllard\nAlonso\nAmal\nAndela\nAndrian\nAnika\nAnil\nAnonymisation\nAntelman\nArchivable\nArielle\nArmeni\nAsana\nAssunta\nAtchison\nAugustinas\nAune\nAuthorization\nBST\nBSc\nBaniqued\nBarba\nBarmby\nBatchelor\nBatool\nBazel\nBeccot\nBecelli\nBegbie\nBertinetto\nBibDesk\nBibTeX\nBilgin\nBinderHub\nBinderHubs\nBinderize\nBioinformatics\nBitBucket\nBladon\nBlana\nBlockquotes\nBoson\nBouwe\nBrainonSilicon\nBrinckman\nBrody\nButland\nCDDL\nCERN\nCERN's\nCEVALE\nCIPD\nCITEKEYs\nCMD\nCODEOWNERS\nCOVID\nCPPUnit\nCPUs\nCRIS\nCRON\nCSCCE\nCSSTidy\nCTest\nCUnit\nCafé\nCafés\nCamila\nCapitalizeMyTitle\nCarpentries\nCarpentryCon\nCem\nCenter\nChanuki\nCheckable\nCheckstyle\nChenevoy\nCheplygina\nChrys\nChue\nCirillo\nClaerbout\nCloudConvert\nCoC\nCoNGA\nCodeTriage\nCodiMD\nColomb\nCommonsAttribution\nCompendia\nConda\nCoreNLP\nCoronavirus\nCppTest\nCppcheck\nCunit\nCuration\nDAGs\nDCC\nDESIGNBETTERBUSINESS\nDMP\nDMPonline\nDMPs\nDOAJ\nDOI\nDOIs\nDanbee\nDarke\nDataCite\nDataLad\nDatalad\nDerienFe\nDev\nDigitalocean\nDimitra\nDivna\nDixey\nDockerfile\nDockerfile's\nDockerfiles\nDropBox\nDruskat\nDuPre\nDwarves\nECMA\nECMWF\nECRs\nEDA\nEEEEEE\nEET\nELNs\nESLint\nEdTech\nEditorConfig\nEglen\nEirini\nEndnote\nEndre\nEriksson\nEtherpad\nEvelina\nEventbrite\nExeter\nFAIRlady\nFAIRness\nFAIRsharing\nFacetime\nFebruray\nFennell\nFernández\nFerran\nFigshare\nFileName\nFindBugs\nFlorian\nFormatter\nFortran\nFrancesco\nFrandsen\nFraya\nFreiburg\nFromerth\nFurnass\nGBs\nGDPR\nGIFs\nGNUIndent\nGOFAIR\nGPL\nGPLv\nGSoD\nGabasova\nGadige\nGallantries\nGarside\nGau\nGb\nGentil\nGeohackweek\nGeorgiana\nGertjan\nGhosh\nGianni\nGif\nGilcher\nGilham\nGit's\nGitLab\nGitter\nGlerean\nGonzález\nGorgolewski\nGough\nGrammarCheck\nGrammarly\nGrayling\nGreatCode\nGrimaud\nGuay\nHH\nHPC\nHSS\nHackMD\nHackerNews\nHackmd\nHacktoberFest\nHadjitofi\nHadron\nHaines\nHajjem\nHalchenko\nHamelijnck\nHanke\nHarnad\nHartgerink\nHedgeDoc\nHeidiSeibold\nHellen\nHelpdesk\nHerterich\nHiddenREF\nHieu\nHiggs\nHigman\nHilmar\nHirst\nHitrova\nHoang\nHobley\nHoldgraf\nHomebrew\nHornos\nHulme\nIDEs\nIMBD\nIMDB\nIMG\nINs\nISA\nIST\nIllushka\nImgur\nIpsum\nIpsums\nIshan\nIsil\nJISC\nJIndent\nJSHint\nJSON\nJST\nJSlint\nJUnit\nJabRef\nJagiellonian\nJakaria\nJamil\nJanssen\nJavascript\nJemma\nJersakova\nJessy\nJetBrains\nJez\nJha\nJira\nJisti\nJitsi\nJodrell\nJordon\nJosé\nJulien\nJupyter\nJupyterHub\nJupyterHub's\nJupyterLab\nKDiff\nKadie\nKaggle\nKarner\nKarrenbach\nKaspar\nKesson\nKeyBindings\nKhasan\nKherroubi\nKiar\nKirstie\nKirstie's\nKlara\nKoler\nKousha\nKristijan\nKrunal\nKrystalli\nKubeSpawner\nKubernetes\nKunzmann\nKuzak\nLFS\nLGBTQ\nLGPL\nLGPLv\nLIGO\nLITA\nLaTeX\nLaTeX's\nLabeling\nLachlan\nLagesen\nLeng\nLenka\nLeung\nLiggins\nLinkedIn\nLintott\nLogilab\nLorem\nLouiseABowler\nLovell\nLuca\nLöning\nMCR\nMERCHANTABILITY\nMOOCs\nMPI\nMPL\nMRAN\nMRC\nMSc\nMacroecology\nMafalda\nMagid\nMahajan\nMailChimp\nMakefile\nMakefiles\nMalliaraki\nMalvika\nManyPixels\nMariam\nMarkDown\nMarkiewicz\nMarkowetz\nMarkus\nMarwick\nMaría\nMateusz\nMcCabe\nMcKiernan\nMckiernan\nMetcalfe\nMidha\nMietchen\nMiguez\nMiniconda\nMoldon\nMonthYYYY\nMoopen\nMurton\nMustafa\nMyST\nMyatt\nNIPY\nNNAII\nNONINFRINGEMENT\nNST\nNWO\nNacimento\nNanni\nNastase\nNatacha\nNeha\nNema\nNetlify\nNeve\nNico\nNicolás\nNikola\nNobella\nNomi\nNonCommercial\nNonCommercical\nNoor\nNotaBug\nNyberg\nNüst\nO'Reilly\nOA\nODbL\nOECD\nOER\nOERs\nOGL\nOLS\nORCID\nOSF\nOSI\nOSs\nOWASP\nObeng\nOlmez\nOpenAIRE\nOpenDreamKit\nOpenIFS\nOritz\nOwoicho\nPIs\nPMD\nPOC\nPPI\nPRs\nPURLs\nPabRod\nPanigrahi\nPaolo\nPawel\nPawlik\nPedregosa\nPeerJ\nPenfold\nPerlTidy\nPeterC\nPh\nPhony\nPierré\nPiwowar\nPlesser\nPlomp\nPomodoro\nPomodoros\nPooja\nPovh\nPraag\nPranav\nPreclinical\nPriyadarsini\nProvencher\nPurpleBooth\nPyCon\nPylint\nQQ\nRBAC\nREADME\nRSE\nRSEs\nRStudio\nRadka\nRajmund\nRangel\nRaniere\nReadioff\nRebase\nRebases\nRebasing\nReimann\nReina\nRelicensing\nRemi\nReplicability\nRepos\nResearchCompendium\nResearchData\nResearchFish\nReshama\nReverso\nRightsholder\nRisa\nRmarkdown\nRoMEO\nRodríguez\nRohilla\nRohit\nRosti\nRstats\nRubix\nRufibach\nRuyck\nSHA\nSHAs\nSSI\nSTF\nSadaf\nSahu\nSandmann\nSansone\nSarahAlidoost\nSaral\nSargoni\nSauze\nSciViews\nScolaro\nScriberia\nSedar\nSeibold\nSeresinhe\nSeyhun\nShaikh\nShankho\nSharan\nSharan's\nShareAlike\nShellIndent\nShenvi\nSia\nSian\nSiba\nSidenote\nSisk\nSlideShare\nSlido\nSmarak\nSnakeMake\nSochat\nSoliman\nSrishti\nStallman\nStodden\nStrickson\nSukys\nSumera\nSurveymonkey\nSánchez\nTaka\nTaka's\nTarek\nTashan\nTestFileSizes\nThurlby\nTinyLetter\nToC\nTomova\nTopicbox\nToro\nToussaint\nTransifex\nTrasifex\nTrello\nTuncel\nTup\nTupfile\nTuringWay\nTurndown\nTushar\nTutorialsPoint\nTypeform\nUC\nUX\nUeno\nUlus\nUniversité\nUnported\nUnsplash\nUppsala\nUri\nVE\nVM\nVMs\nVR\nVSCode\nVarlotta\nVarshney\nVerhoeven\nVeronika\nVilas\nVirtualBox\nVladimiro\nVreede\nVukovic\nWIP\nWORKDIR\nWaldman\nWason\nWebex\nWhatsApp\nWhipp\nWiebke\nWohlrabe\nWolmar\nWoodbridge\nXLS\nXiaoqing\nXu\nYAML\nYYYY\nYan\nYarik\nYash\nYehuda\nYehudi\nYini\nYoutube\nYu\nZapier\nZawacki\nZelaya\nZenodo\nZentrum\nZhang\nZormpa\nZypper\nableist\nacknowledgment\nacknowledgments\nacork\nactually's\nacyclic\naddmaterails\naddmaterial\nadvancedgr\nai\nakira\nal\nalessandroragano\nalexmorley\nanalytics\nanalyzing\nannakrystalli\nanonymisation\nanonymised\nanonymising\nanother's\napachevsall\napachevsbsd\napachevsgplv\napachevslgpl\naquired\narXiv\narewemeetingyet\narnold\nartifacts\nashatitus\naspirational\nauditable\nautomaticvar\nbackticks\nbacktrace\nbeccawilson\nbehaviors\nbehindthename\nbibtex\nbinderhub\nbinderized\nbiosciences\nblogpost\nbookdash\nbooleans\nbrowsable\nbrowserling\nbugfixes\ncapitalization\ncasestudy\ncatalog\ncategorization\ncategorize\ncc'ing\nccessibility\ncd\nceciledebezenac\ncenter\ncentered\ncentric\ncetera\nchardet\ncheatsheet\ncheckboxes\ncheckmark\nchoosealicense\nci\ncisgender\ncitability\ncitable\nciteable\ncoc\ncodebase\ncollab\ncollabcafe\ncolor\ncommerical\ncomms\ncompendia\nconda\ncontainerization\ncookiecutter\ncowork\ncoworking\ncpplint\ncrangelsmith\ncriminalisation\ncrossdisciplinary\ncrossref\ncsv\ncustomisable\ncustomisations\ncustomization\ncustomized\nda\ndaniguariso\ndatafiles\ndatapoints\ndataset\ndatasheets\nde\ndeBara\ndel\ndemeanor\ndesignators\ndestabilized\ndigitalisation\ndigitalised\ndiscoverability\ndiscoverable\ndistill\ndistractors\ndockerignore\ndoi\ndoxing\ndpkg\ndropdown\ndryland\neScience\nelectrophysiology\nelse's\nemphasize\nemptyfiles\nendo\neq\net\netiquettes\neusability\nexecutables\nexempli\nexperimentalist\nfaire\nfavor\nfavorable\nfavorite\nfigshare\nfilesystem\nfindability\nfindable\nfintech\nfunder\nfunders\nfunit\ngeneralisable\ngif\ngifs\ngithub\ngitter\ngiuliaok\nglumand\ngoogletest\ngorman\ngratia\ngray\ngroupthink\nhackathon\nhackathons\nhacktahon\nhoc\nhonor\nideation\nincentivises\ninclusivity\nindability\ninfographics\ninit\ninstantiation\ninstill\ninterdisciplinarity\nio\nirenekp\nitemizes\niteratively\njpg\njupyter\nkanban\nke\nkeyidea\nkgrieman\nkirstie\nkirstiejane\nknitr\nlabeled\nlabeling\nlaissez\nlearnings\nlearnmake\nleavanh\nlibre\nlicenced\nlicensor\nlifecycle\nlintr\nlinux\nlistserv\nlockdown\nlolcow\nmacOS\nmahal\nmaintainer's\nmakefile\nmakefiles\nmalvikasharan\nmanagmement\nmartinagvilas\nmartinez\nmartintoreilly\nmatplotlib\nmaximize\nmd\nmentee\nmentimeter\nmentorship\nmetastudy\nmicrocontainers\nminimize\nmins\nmjcasy\nmkuzak\nmodularised\nmonthYYYY\nmultifold\nmultiplatform\nmybinder\nnatively\nnd\nnerf\nneuroimaging\nneuroscientific\nneuroscientist\nneutralize\nnewsltter\nnewsltters\nnextflow\nnl\nnonconsensual\nnondata\nnotetaker\nnotetakers\nnteroperability\nnumpy\nodbl\nodc\nok\nonboarded\nonboarding\nontologies\norganization\norganizational\norganizations\norganize\norganized\norganizers\norganizing\nos\nownCloud\nowncloud\noxpeter\npandoc\nparallelizing\npatternrules\npaulowoicho\npaywalled\npddl\npdf\npfunit\nphenotyping\npherterich\nphony\nphpStylist\npng\npomodoro\npostBuild\npostprint\npracticed\npracticing\npre\nprecall\npreclinical\npreplanning\npreprint\npreprints\nprosandcons\npx\npy\npytest\nrOpenSci\nrainsworth\nrdm\nreadme\nrealize\nrecognize\nrecognized\nredistributions\nreidentification\nrenv\nreplicability\nreplicable\nrepo\nrepos\nrepro\nreproducibility\nreproducibly\nrepurpose\nresponders\nreusability\nreviewee\nroadmap\nroadmapping\nrosiehigman\nrp\nrr\nrunscript\nsallyob\nschemas\nscidata\nscikit\nscipy\nsearchability\nsectioninitials\nsensorimotor\nsethsh\nsettingup\nsgibson\nshellcheck\nskilling\nsli\nslurm\nsmasarone\nsnakemake\nsocio\nsoftwaretestingfundamentals\nspecialization\nspecialized\nspecializes\nspecificities\nsphinxcontrib\nsr\nstandardized\nstdout\nsubchapter\nsubchapter's\nsubchapters\nsubcomponents\nsubdirectories\nsubdirectory\nsubfolder\nsublicense\nsubshell\nsubsidized\nsubsteps\nsummarize\nsvUnit\nswalkoAI\nsynchronization\nsyntaxes\nsynthesizing\ntaj\ntakuover\ntd\ntechissue\ntestthat\ntex\nth\ntibble\ntimeanddate\ntimeframes\ntinyletter\ntinytest\ntoc\ntoolkits\ntrainings\ntransphobic\ntravis\ntriaging\ntsv\ntugceoruc\nturing\ntxt\nuk\nunidecode\nunittest\nunpaused\nunselected\nuntracked\nurls\nutilize\nvasilisstav\nvclock\nvcs\nvisualizing\nwebpage\nwebpages\nwellbeing\nwhatis\nwhitespace\nworkdir\nwtf\nxtas\nxvzf\nyaml\nyapf\nyaseminturkyilmaz\nyay\nyml\nyoutu\nzenodo\nÅkerström\n"
  },
  {
    "path": "book/Makefile",
    "content": ".DEFAULT_GOAL := help\n.PHONY: help\n\nhelp:\n\t@grep -E '^[a-zA-Z0-9_-]+:.*?## .*$$' $(MAKEFILE_LIST) \\\n\t| sed -n 's/^\\(.*\\): .*## \\(.*\\)/\\1\\t\\2/p' \\\n\t| column -t -s $$'\\t'\n\ndeps: ## Install build dependencies\n\tpython -m pip install --upgrade pip\n\tpip install -r ./requirements.txt\n\nupgrade: ## Upgrade python packages and update the requirements files\n\tpython -m pip install --upgrade pip\n\tpip install pip-tools\n\tpip-compile --upgrade\n\tpip-sync\n\nserve: ## Start a webserver serving the book locally\n\tcd website && jupyter-book start\n\nbook: ## Build the book and export as HTML\n\tcd website && jupyter-book build --html\n\t# Temporary hack to remove unused thebe JS\n\trm website/_build/html/*thebe*.js\n\nstrict: ## Build the book stopping on errors\n\tcd website && jupyter-book build --html --strict\n\t# Temporary hack to remove unused thebe JS\n\trm website/_build/html/*thebe*.js\n\nci: ## Build the book in a non-interactive environment (for CI)\n\tcd website && jupyter-book build --html --ci\n\t# Temporary hack to remove unused thebe JS\n\trm website/_build/html/*thebe*.js\n\nast: ## Build AST only\n\tcd website && jupyter-book build\n\nclean: ## Clean any build outputs and artifacts\n\tjupyter-book clean --all --yes ./website/_build\n"
  },
  {
    "path": "book/README.md",
    "content": "## The Turing Way Book\n\nThis is the README file for _The Turing Way_ book hosted online at [book.the-turing-way.org](https://book.the-turing-way.org).\nFor the README file of the main repository please [follow this link](../README.md).\n\nAll the text for each chapter of the `book` lives inside the [`website`](./website/) directory.\nAll figures associated to the chapters are stored in, and linked from, the [`figures`](./figures/) directory.\nEverything else is in the `website/` directory.\n\n\n### Configuration\n\nThe book's configuration is defined in [`website/myst.yml`](./website/myst.yml). The possible fields for this file are explained [in the MystMD documentation](https://mystmd.org/guide/frontmatter#in-a-myst-yml-file).\n\n### Building\n\nInstructions for how to build the book locally can be found in [_The Turing Way_'s Community Handbook](https://book.the-turing-way.org/community-handbook/local-build).\n\n## Bibliography\n\nThe collection of bibliography items from all the chapters exist in the `./website/references.bib` file.\nMore details can be read in the [CONTRIBUTING.md](https://github.com/the-turing-way/the-turing-way/blob/main/CONTRIBUTING.md#referencing-and-citing) file.\n\n## Content Templates\n\nTemplates for different types of content can be found in the [`templates`](./templates) directory.\nThis includes the following:\n\n* [`case-study-template`](templates/case-study-template/): a template for writing and/or revising case studies\n* [`chapter-template`](templates/chapter-template/): a template for writing new chapters or revising old ones\n"
  },
  {
    "path": "book/figures/logo/.picasa.ini",
    "content": "[logo.png]\nbackuphash=33410\n"
  },
  {
    "path": "book/figures/logo/site.webmanifest",
    "content": "{\"name\":\"\",\"short_name\":\"\",\"icons\":[{\"src\":\"/android-chrome-192x192.png\",\"sizes\":\"192x192\",\"type\":\"image/png\"},{\"src\":\"/android-chrome-512x512.png\",\"sizes\":\"512x512\",\"type\":\"image/png\"}],\"theme_color\":\"#ffffff\",\"background_color\":\"#ffffff\",\"display\":\"standalone\"}"
  },
  {
    "path": "book/requirements.in",
    "content": "jupyter-book>=2.1.2\n"
  },
  {
    "path": "book/requirements.txt",
    "content": "#\n# This file is autogenerated by pip-compile with Python 3.13\n# by the following command:\n#\n#    pip-compile\n#\nanyio==4.12.1\n    # via jupyter-server\nargon2-cffi==25.1.0\n    # via jupyter-server\nargon2-cffi-bindings==25.1.0\n    # via argon2-cffi\narrow==1.4.0\n    # via isoduration\nasttokens==3.0.1\n    # via stack-data\nattrs==25.4.0\n    # via\n    #   jsonschema\n    #   referencing\nbeautifulsoup4==4.14.3\n    # via nbconvert\nbleach[css]==6.3.0\n    # via nbconvert\ncffi==2.0.0\n    # via argon2-cffi-bindings\ncomm==0.2.3\n    # via ipykernel\ndebugpy==1.8.20\n    # via ipykernel\ndecorator==5.2.1\n    # via ipython\ndefusedxml==0.7.1\n    # via nbconvert\nexecuting==2.2.1\n    # via stack-data\nfastjsonschema==2.21.2\n    # via nbformat\nfqdn==1.5.1\n    # via jsonschema\nidna==3.11\n    # via\n    #   anyio\n    #   jsonschema\nipykernel==7.2.0\n    # via jupyter-book\nipython==9.10.0\n    # via ipykernel\nipython-pygments-lexers==1.1.1\n    # via ipython\nisoduration==20.11.0\n    # via jsonschema\njedi==0.19.2\n    # via ipython\njinja2==3.1.6\n    # via\n    #   jupyter-server\n    #   nbconvert\njsonpointer==3.0.0\n    # via jsonschema\njsonschema[format-nongpl]==4.26.0\n    # via\n    #   jupyter-events\n    #   nbformat\njsonschema-specifications==2025.9.1\n    # via jsonschema\njupyter-book==2.1.2\n    # via -r requirements.in\njupyter-client==8.8.0\n    # via\n    #   ipykernel\n    #   jupyter-server\n    #   nbclient\njupyter-core==5.9.1\n    # via\n    #   ipykernel\n    #   jupyter-book\n    #   jupyter-client\n    #   jupyter-server\n    #   nbclient\n    #   nbconvert\n    #   nbformat\njupyter-events==0.12.0\n    # via jupyter-server\njupyter-server==2.17.0\n    # via jupyter-book\njupyter-server-terminals==0.5.4\n    # via jupyter-server\njupyterlab-pygments==0.3.0\n    # via nbconvert\nlark==1.3.1\n    # via rfc3987-syntax\nmarkupsafe==3.0.3\n    # via\n    #   jinja2\n    #   nbconvert\nmatplotlib-inline==0.2.1\n    # via\n    #   ipykernel\n    #   ipython\nmistune==3.2.0\n    # via nbconvert\nnbclient==0.10.4\n    # via nbconvert\nnbconvert==7.17.0\n    # via jupyter-server\nnbformat==5.10.4\n    # via\n    #   jupyter-server\n    #   nbclient\n    #   nbconvert\nnest-asyncio==1.6.0\n    # via ipykernel\nnodeenv==1.10.0\n    # via jupyter-book\npackaging==26.0\n    # via\n    #   ipykernel\n    #   jupyter-events\n    #   jupyter-server\n    #   nbconvert\npandocfilters==1.5.1\n    # via nbconvert\nparso==0.8.6\n    # via jedi\npexpect==4.9.0\n    # via ipython\nplatformdirs==4.5.1\n    # via\n    #   jupyter-book\n    #   jupyter-core\nprometheus-client==0.24.1\n    # via jupyter-server\nprompt-toolkit==3.0.52\n    # via ipython\npsutil==7.2.2\n    # via ipykernel\nptyprocess==0.7.0\n    # via\n    #   pexpect\n    #   terminado\npure-eval==0.2.3\n    # via stack-data\npycparser==3.0\n    # via cffi\npygments==2.20.0\n    # via\n    #   ipython\n    #   ipython-pygments-lexers\n    #   nbconvert\npython-dateutil==2.9.0.post0\n    # via\n    #   arrow\n    #   jupyter-client\npython-json-logger==4.0.0\n    # via jupyter-events\npyyaml==6.0.3\n    # via jupyter-events\npyzmq==27.1.0\n    # via\n    #   ipykernel\n    #   jupyter-client\n    #   jupyter-server\nreferencing==0.37.0\n    # via\n    #   jsonschema\n    #   jsonschema-specifications\n    #   jupyter-events\nrfc3339-validator==0.1.4\n    # via\n    #   jsonschema\n    #   jupyter-events\nrfc3986-validator==0.1.1\n    # via\n    #   jsonschema\n    #   jupyter-events\nrfc3987-syntax==1.1.0\n    # via jsonschema\nrpds-py==0.30.0\n    # via\n    #   jsonschema\n    #   referencing\nsend2trash==2.1.0\n    # via jupyter-server\nsix==1.17.0\n    # via\n    #   python-dateutil\n    #   rfc3339-validator\nsoupsieve==2.8.3\n    # via beautifulsoup4\nstack-data==0.6.3\n    # via ipython\nterminado==0.18.1\n    # via\n    #   jupyter-server\n    #   jupyter-server-terminals\ntinycss2==1.4.0\n    # via bleach\ntornado==6.5.5\n    # via\n    #   ipykernel\n    #   jupyter-client\n    #   jupyter-server\n    #   terminado\ntraitlets==5.14.3\n    # via\n    #   ipykernel\n    #   ipython\n    #   jupyter-client\n    #   jupyter-core\n    #   jupyter-events\n    #   jupyter-server\n    #   matplotlib-inline\n    #   nbclient\n    #   nbconvert\n    #   nbformat\ntyping-extensions==4.15.0\n    # via beautifulsoup4\ntzdata==2025.3\n    # via arrow\nuri-template==1.3.0\n    # via jsonschema\nwcwidth==0.6.0\n    # via prompt-toolkit\nwebcolors==25.10.0\n    # via jsonschema\nwebencodings==0.5.1\n    # via\n    #   bleach\n    #   tinycss2\nwebsocket-client==1.9.0\n    # via jupyter-server\n"
  },
  {
    "path": "book/templates/book-stats.csv",
    "content": "reproducible-research; 17;      121     121     968\nreproducible-research; 17; 120\nproject-design; 12; 55\ncommunication; 14; 56\ncollaboration; 20; 79\nethical-research; 12; 30\ncommunity-handbook; 17; 72\nall guides; 92; 412\n"
  },
  {
    "path": "book/templates/case-study-template/README.md",
    "content": "# Welcome\n\nThank you for contributing to _The Turing Way_ book by writing a case study!\n\n_The Turing Way_ chapters are co-authored by people from different research backgrounds and domain expertise.\n We do not aim to create domain-specific resources but provide a central collection of best practices, tools and recommendations in data science that are transferable across different disciplines.\n Nevertheless, we recognise that to allow readers to gain an in-depth understanding of new topics we need to provide some examples and case studies that they can identify with.\nTherefore, community-contributed case studies are highly beneficial for our community members who would like to see some relatable examples where these skills are applied.\n\nTo standardise the book's content and maintain consistency throughout, we have created this template to guide you as you write your case study.\n\n## Before You Begin\n\n_The Turing Way_ is made up of Guides which span several chapters.\nFor every Guide, there is a `Case Studies` chapter that contains a collection of case studies that explore how key concepts from the Guide relate to specific subjects (such as a project, person, organisation, or phenomenon).\n\nStructurally, a Guide in _The Turing Way_ Github repository is a folder and your case study is a file in the `case-studies` sub-folder within it.\nAll Guides in _The Turing Way_ live in the `book/website` directory.\n\nFor example, if you wrote the case study about the [Statistical Methods Manuscript](https://book.the-turing-way.org/reproducible-research/case-studies/statistical-methods-manuscript.html) in the Guide for Reproducible Research, then the file structure could resemble the following:\n\n```\nbook/website\n│\n└───reproducible-research <---- (Folder for the Guide to Reproducible Research)\n│   │\n│   └───binderhub\n│   │\n│   └───case-studies <---- (folder containing subchapter for case studies the Guide to Reproducible Research)\n│   |   │   statistical-methods-manuscript.md <---- (Statistical Manuscripts Case Study)\n|   |   |   example-case-study.md\n|   |   |   ...\n|   |\n|   |   ...\n|   |   case-studies.md <---- (Landing page for Case Studies chapter)\n|   |   ...\n│   \n└───project-design <---- (Folder for the Guide for Project Design)\n    │   project-design.md\n    │   ...\n```\n\nMore case studies (such as `example-case-study-file.md`) for the Guide for Reproducible Research can be added in the same location as `statistical-methods-manuscript.md`.\nThis case study template will guide you in writing the content for your case study.\nWe encourage you to use it to structure and format your content.\n\n## Remember to..\n\n### Follow the style and consistency guidelines\n\nAs you write your chapter, keep _The Turing Way's_ [style](https://book.the-turing-way.org/community-handbook/style.html) and [consistency](https://book.the-turing-way.org/community-handbook/consistency.html) recommendations in mind.\nThis ensures that your new content is accessible, and fits the overall style, structure, and formatting of _The Turing Way_ book.\n\n### Name files/folders appropriately\n\nPlease follow _The Turing Way's_ conventions for naming files.\nWith proper file names, other contributors can easily identify the purpose of your files and add to or improve them if necessary. \n\n\n### Add your new files to the book's table of contents\n\nThe book-wide table of contents lives in the `myst.yml` [file](book/website/myst.yml).\nThis file structures _The Turing Way_ and defines the order in which chapters appear.\nYour chapter's files should be added to the `myst.yml` as appropriate.\n\nFor example, because the [Statistical Methods Manuscript](https://book.the-turing-way.org/reproducible-research/case-studies/statistical-methods-manuscript.html) case study was written for the Guide for Reproducible Research, it was added to the table of contents as follows:\n\n\n```\n- file: reproducible-research/reproducible-research\n  sections:\n  ...\n  - title: Case Studies\n    file: reproducible-research/case-studies\n    sections:\n    - title: A Statistical Methods Manuscript\n      file: reproducible-research/case-studies/statistical-methods-manuscript\n```\n\n### Reference external sources appropriately\n\nEnsure external sources are properly referenced and included in _The Turing Way's_ centralised bibtex file as recommended in the [style guide](https://deploy-preview-1459--book.the-turing-way.org/community-handbook/style/style-citing.html#ch-style-citing)\n\n### Update the book-wide glossary\n\n_The Turing Way_ maintains a book-wide glossary located in its [Afterword](https://book.the-turing-way.org/afterword/glossary.html).\nWhen writing your chapter, update the book-wide glossary with the key terms in your chapter that readers should remember.\nFor each term, cross-reference to the subchapter/section where you explained it.\n\n\n### Cross check your PR\n\nThe content of the templates are meant to guide and structure your writing.\nPlease remove all of the template's placeholders, tips, and suggestions from your chapter before you submit your PR for review.\n\nHappy Writing!\n"
  },
  {
    "path": "book/templates/case-study-template/case-study-template.md",
    "content": "(sectioninitials-filename)=\n# Case Study Title\n\n***Please remove all the Blockquotes (sentences that start with \">\")***\n\n> Each guide has a case studies chapter contains multiple case studies. \n> A case study should be a modular subchapter, but it can have more than one example.\n\n**By Author 1, Author 2, ...**\n\n> Try to keep your title short and concise.\n> However, make sure it adequately reflects what the purpose of the case study is.\n\n> You may use this space to tell readers who you are and what your role is.\n> While not essential, doing so will help readers connect and engage with the content of your case study.\n\n(sectioninitials-filename-overview)=\n## Overview\n\n> **Provide a high level overview of the subject of the case study.**\n> Briefly introduce and describe the project, person, organisation, or phenomenon that your case study is about.\n> If possible, describe the goals you set out to achieve in this case, highlighting any key player(s) and explaining what their roles were.\n> Be sure to include relevant additional information (such as links and publication DOIs) about the subject of the case study. \n\n\n> In addition to _what_ your case study is about, you should also explain _why_ you are writing this case study and _how_ it may benefit the readers.\n> When writing this section, think about why this topic is important to investigate and what your expected reader demographic is.\n> As much as possible, relate the importance of your topic to the key concepts and overall message expressed in the Guide your case study belongs to.\n> Some (non-exhaustive) concrete questions to consider include: \n> - Is the subject an unusual example of a research problem that requires more in-depth analysis?\n> - Does the subject reveal more insight about a previously hidden problem? Does it go against prevailing assumptions in your research area?\n> - Does the subject motivate a new research direction?\n> - How did some of the key concepts in the Guide support the work done in this case?\n> - Does the subject use key takeaways from _The Turing Way's_ recommendations in an interesting way?\n\n(sectioninitials-filename-elements)=\n## Elements of {Guide Name}\n\n> Title this section appropriately depending on the Guide your case study is for.\n> For example, if your case study is for the Guide for Collaboration, the title of this section should be `Elements of Collaboration`.\n> Similarly, if your case study is for the Guide for Project Design, then the title of this section should be `Elements of Project Design`.\n\n> **Highlight the main concepts from the Guide that are relevant to your case study.**\n> For example, if your case study is for the Guide for Reproducible Research, you may want to briefly emphasise how Version Control was (or was not) integral for making your work reproducible.\n\n> Ideally, each concept should be a chapter within the Guide your case study is for.\n> When you mention a concept, remember to cross reference to the chapter where it is explained using _The Turing Way's_ [cross-referencing guidelines](https://book.the-turing-way.org/community-handbook/style/style-crossref.html).\n\n> Use the rest of the section to take a deep dive into the individual concepts you introduced.\n\n(sectioninitials-filename-elements-concept1)=\n### Relevant Concept 1\n\n> Replace the `concept1` portion of the label at the top of the header with a word (or acronym) that describes the concept you are focusing on in this section.\n> If the key concept was Research Data Management, a good label could be `sectioninitials-filename-elements-rdm`. \n\n> Use this section to expatiate on the importance of the key concept in your case, explaining _how_ and _why_ it helped (or did not help).\n\n> To drive home your point, you may also leverage images, external resources, code blocks, or other items you deem fit.\n> Remember to refer to the [style guide](https://book.the-turing-way.org/community-handbook/style.html) for relevant recommendations as you write.\n\n> **NOTE**: If your case study relied on several concepts expressed in the Guide, be sure to explain each one in its own section\n\n(sectioninitials-filename-challenges)=\n## Challenges\n\n> **Use this section to discuss any challenges you faced while trying to use this Guide's recommendations in your case.**\n> When writing, think about and express what specific recommendations you struggled with and why you struggled with them.\n> What problems were you not able to solve? \n> How do you think it impacted the success of your case?\n> What would you have done differently?\n\n> If you overcame the challenges you highlighted (or learned how to overcome them), also describe the actions you took in detail.\n> Remember that your recommendations here will be one of the key takeaways readers take from reading through your case study.\n\n(sectioninitials-filename-reflections)=\n## Reflections\n\n> Use this section to express any new insights you gained and practiced in your case.\n> As much as possible, try to tie your learnings to the Guide's overall message.\n> For example, if you wrote your case study for the Guide for Reproducible Research, you may use this section to talk about anything new you learned about producing work that is reproducible.\n\n> To help with writing this section, we have curated some questions to get you thinking.\n> You can find the questions in the [reflection-questions.md](./reflection-questions.md) file.\n> Please note that these questions are not exhaustive or definitive.\n> You are encouraged to improve on them in a pull request.\n\n> End your case study by highlighting the aspect of this case that you are the most proud of, and why.\n> You may also wish to point your readers to other resources where they can learn more about your case or gain other relevant insights.\n\n## BEFORE YOU GO\n\n> - Use this template to create your case study.\n> - Refrain from writing very long content as readers may be unwilling to read them. Rather, make your case studies as modular possible. You may even make them a series if necessary.\n> - Have a look at the Style Guide and the Maintaining Consistency chapters to ensure that you have followed the relevant recommendations on\n>   - Avoiding HTML\n>   - Consecutive headers\n>   - Labels and cross referencing\n>   - Using images\n>   - Latin abbreviations\n>   - References and citations\n>   - Title casing\n>   - Matching headers with reference in table of content\n\n\n"
  },
  {
    "path": "book/templates/case-study-template/reflection-questions.md",
    "content": "# Reflection Questions\n\nIn this file, we have curated some reflection questions to give you ideas on what to to think about as you write your case study reflections.\n\nWe believe that it is important for readers to understand and appreciate your perspectives about the Guide (and its message) your case study is for.\nThus, these questions are designed to help you embed your perspectives in your case study.\n\n\nThe questions are categorised into the different Guides in _The Turing Way_.\nThey are not exhaustive or definitive, and we encourage you to improve on them in your Pull Requests.\nPlease read _The Turing Way's_ recommendations for contributing to project in the [Contributor Guidelines](/CONTRIBUTING.md).\n\n\n## Guide for Reproducible Research\n\n1. What does \"reproducibility\" mean to you?\n1. Why do you think that reproducibility in your domain is important?\n1. How or where did you learn about reproducibility?\n1. What do you see as the major challenges to doing reproducible research in your domain, and do you have any suggestions?\n1. What do you view as the major incentives for doing reproducible research?\n1. Are there any best practices that you'd recommend for researchers in your field?\n\n## Guide for Project Design\n\n## Guide for Communication\n\n## Guide for Collaboration\n\n## Guide for Ethical Research\n\n\n## Sources\n\n1. http://www.practicereproducibleresearch.org/\n\n"
  },
  {
    "path": "book/templates/chapter-template/README.md",
    "content": "# Welcome\n\nWell done on taking the first steps towards writing a chapter for _The Turing Way_  book!\n\nIn order to standardise the book's content and maintain consistency throughout, we have created this template to guide you as you write the content for your chapter.\n\n## Before You Begin\n\n_The Turing Way_ book is made up of Guides which span several chapters.\nThis means that when your chapter is added to the book, it will belong to one of its Guides.\n\nStructurally, a Guide in _The Turing Way_ Github repository is a folder and your chapter is a sub-folder within it.\nAll Guides in _The Turing Way_ live in the `book/website` directory.\n\nFor example, if you wrote the [Version Control](https://book.the-turing-way.org/reproducible-research/vcs.html) Chapter in the Guide to Reproducible Research the file structure will resemble the following:\n\n```\nbook\\website\n│\n└───reproducible-research <---- (folder for the Guide to Reproducible Research)\n│   │   reproducible-research.md ---- (Guide's Landing Page)\n│   │   vcs.md <---- (Landing page for the Version Control chapter)\n│   │\n│   └───vcs (chapter folder)\n│       │   vcs-workflow.md\n|       |   vcs-git.md\n|       |   vcs-git-commit.md\n|       |   ...\n|       |   vcs-personal-stories.md\n│       │   vcs-checklist.md\n│       │   vcs-resources.md\n│   \n└───project-design <---- (folder for the Guide for Project Design) \n    │   project-design.md\n    │   ...\n```\n\nThis new chapter template will guide you in creating content for all the files your chapter should contain.\nBelow, we explain what each file is and where they are located. \nWe encourage you to use them to structure your content.\n\n> **NOTE:** The order in which we introduce these files is the order they should appear in the table of contents.\n\n### `chapter-landing-page.md`:\n\nAt the top-level of the `chapter-template` folder, you will find the [`chapter-landing-page.md`](./chapter-landing-page.md) file where you can write content for your chapter's landing page.\n\nThe landing page is where your chapter begins, and where you should introduce and summarise the rest of your chapter's content.\nThe landing page should also inform readers why the chapter may be useful to them and what prior knowledge they should have to understand the chapter better.\n\nWhen adding your chapter to _The Turing Way_ book, your landing page should live directly in the folder named after the Guide your chapter belongs to.\n\n### `chapter-content.md`:\n\nInside the `chapter-content` folder, you will find the [`chapter-content.md`](./chapter-content/chapter-content.md) file where you can write about the individual topics that make up your chapter.\nThis can be referred to as subchapters.\n\nFor example, if you were writing a chapter on [Open Science](https://en.wikipedia.org/wiki/Open_science) with a focus on its different interpretations, this file is where you would individually write about the various schools of thought in Open Science (one of which could be The Infrastructure School of Thought, for example).\nFeel free to make as many copies of this file as necessary.\n\nThis file should be included in the sub-folder named after your chapter.\n\n### `chapter-personal-stories`:\n\nThe [`chapter-personal-stories.md`](./chapter-content/chapter-personal-stories.md) file, located in the `chapter-content` folder, is where you may include a short case study of an individual who practices your chapter's concepts in their work.\n\nMuch like a Guide-wide [case study](../case-study-template/case-study-template.md), a personal story is a space where the subject of the case study provides their perspectives on how the concepts in this chapter has affected their workflow.\n\n_**Including a personal story in your chapter is optional; However, readers will greatly benefit from a real world application of the key ideas your chapter introduces.**_\n\nStructure-wise, personal stories come right before a chapter's checklist and resources in the table of contents. \nIt should also be added to the chapter's sub-folder\n\n\n### `chapter-checklist.md`:\n\nYou will find the [`chapter-checklist.md`](./chapter-content/chapter-checklist.md) file in the `chapter-content` folder.\nThis file should contain action points you want your readers to take based on the chapter's content.\nIdeally, these action points should reinforce the key concepts of your chapter in a practical way.\n\nAdd this file to your chapter's sub-folder as well.\n\n### `chapter-resources.md`:\n\nThis [file](./chapter-content/chapter-resources.md) can be found in the `chapter-content` folder.\nUse `chapter-resources.md` to tell readers what topics to explore next and where to find more information about the concepts covered in your chapter.\n\n`chapter-resources.md` should also be located in the sub-folder named after your chapter.\n\n## Remember to..\n\n### Follow the style and consistency guidelines\n\nAs you write your chapter, keep _The Turing Way's_ [style](https://book.the-turing-way.org/community-handbook/style.html) and [consistency](https://book.the-turing-way.org/community-handbook/consistency.html) recommendations in mind.\nThis ensures that your new content is accessible, and fits the overall style, structure, and formatting of _The Turing Way_ book.\n\n### Name files/folders appropriately\n\nPlease follow _The Turing Way's_ conventions for naming files. \nThis ensures that your chapter's files are named in a way that allows other people to easily identify their purpose.\nThis way, other contributors will find it easier to add to or improve your work.\n\n- **Landing Page**: Name your landing page using a word that best describes your chapter's overarching concept.\nFor a chapter on Open-Science, the landing page could be named `open-science.md`.\n\n- **Chapter Folder**: The subfolder where your chapter's content goes should have the same name as the chapter's Landing Page, for example `open-science`.\n\n- **Chapter Content**: Every sub-topic in your chapter should have its own file.\nThese should be named by combining the landing page's name with a word that best describes the sub-topic.\nFor example, if a sub-topic of the Open Science chapter is about the Infrastructure School of Thought, then its file name could be `open-science-infrastructure.md`\n\n- **Chapter Checklist and Resources**: Like the files that make up the chapter's content, name your chapter's Checklist and Resources files by combining the Landing Page's name with a word that best describes the file.\nThis could be `open-science-checklist.md` or `open-science-resources.md` for Checklist and Resources Respectively.\n\n### Add your new files to the book's table of contents\n\nThe book-wide table of contents lives in the `myst.yml` [file](../../../book/website/myst.yml).\nThis file structures _The Turing Way_ and defines the order in which chapters appear.\nYour chapter's files should be added to the `myst.yml` as appropriate.\n\nFor example, the Version Control chapter in the Guide for Reproducible Research was added to the `myst.yml` file like this:\n\n```\n- reproducible-research/reproducible-research\n  sections:\n  ...\n  - title: Version Control\n    file: reproducible-research/vcs\n    sections:\n    - title: General Workflow\n      file: reproducible-research/vcs/vcs-workflow\n    - title: Getting Started with Git\n      file: reproducible-research/vcs/vcs-git\n    - title: Git Commit Command\n      file: reproducible-research/vcs/vcs-git-commit\n    - title: Retrieving and Comparing Versions\n```\n\n### Reference external sources appropriately\n\nEnsure external sources are properly referenced and included in _The Turing Way's_ centralised bibtex file as recommended in the [style guide](https://deploy-preview-1459--book.the-turing-way.org/community-handbook/style/style-citing.html#ch-style-citing)\n\n### Update the book-wide glossary\n\n_The Turing Way_ maintains a book-wide glossary located in its [Afterword](https://book.the-turing-way.org/afterword/glossary.html).\nWhen writing your chapter, update the book-wide glossary with the key terms in your chapter that readers should remember.\nFor each term, cross-reference to the subchapter/section where you explained it.\n\n\n### Cross check your Pull Requests (PR)\n\nThe content of the templates are meant to guide and structure your writing.\nPlease remove all of the template's placeholders, tips, and suggestions from your chapter before you submit your PR for review.\n\nHappy Writing!\n"
  },
  {
    "path": "book/templates/chapter-template/chapter-content/chapter-checklist.md",
    "content": "(sectioninitials-filename)=\n# Checklist\n\n> List out the action points you want the readers to take based on the key ideas in your chapter.\n> The action points can be categorised according to your subchapters (the key topics of your chapter), and may have sub-action points if necessary.\n> Alternatively, you can have a single checklist chronologically ordered to guide your readers to understanding or applying the skills discussed in your subchapter in a step-by-step manner.\n> Aim for three action points for each topic, however, you can have more than this threshold.\n\n(sectioninitials-filename-subchapter1)=\n## Subchapter/Topic 1\n\n- Action point 1\n- Action point 2\n- Action point 3\n\n(sectioninitials-filename-subchapter2)=\n## Subchapter/Topic 2\n\n- Action point 1\n- Action point 2\n- Action point 3\n\n(sectioninitials-filename-subchapter3)=\n## Subchapter/Topic 3\n\n- Action point 1\n- Action point 2\n- Action point 3\n\n<!-- IMPORTANT!\n\n- Use this template to create your chapter's checklist. This file should come after the main content of your chapter, but before the resources section.\n\nBEFORE YOU GO\n\n- Have a look at the Style Guide and the Maintaining Consistency chapters to ensure that you have followed the relevant recommendations on\n  - Avoiding HTML\n  - Consecutive headers\n  - Labels and cross referencing\n  - Using images\n  - Latin abbreviations\n  - References and citations\n  - Title casing\n  - Matching headers with reference in table of content\n\n-->\n"
  },
  {
    "path": "book/templates/chapter-template/chapter-content/chapter-content.md",
    "content": "<!-- \nIdentify the major themes/topics that make up your chapter. \nThese will be the subchapters of your chapter.\nWrite about each one in a different `chapter-content.md` file.\nMake as many copies of this file as you need for all your subchapters\n-->\n\n(sectioninitials-filename)=\n# Subchapter Title\n\n> **Write an introduction for your subchapter here**.\n> Your introduction should briefly introduce the topic of your subchapter and highlight its key ideas.\n> Even though your introduction should be short and focused, you should try to explain why and how the subchapter fits the overall context of the chapter and what the reader should expect to learn from it.\n\n<!-- \n> Each of the key ideas you talk about in the introduction should have a section of its own.\n> When you mention a key idea in your introduction, remember to cross reference it to the section of your subchapter where you explain it further.\n> This will be useful for people who may only want to read specific parts of your content.\n> See the [style guide](https://book.the-turing-way.org/community-handbook/style/style-crossref.html) for The Turing Way's recommendations on cross referencing.\n\n> In this template, we assume that our subchapter has three key ideas, your subchapter may have more or less than this. \n\n> It may be beneficial to run your content through a grammar checker (such as Grammarly) to catch grammatical mistakes.\n-->\n\n<!-- \nIn the label, replace `keyidea1` with a word that best describes the section or key idea you want to explain -->\n(sectioninitials-filename-keyidea1)=\n## Key Idea 1\n\n> **Talk about your key idea in detail**. Feel free to use images, code blocks, and admonitions to communicate your ideas.\n> You may break the section down into subsections if you wish, however, remember to add [labels](https://book.the-turing-way.org/community-handbook/style/style-crossref.html) to any additional headers you create to facilitate cross-referencing.\n\n> Remember to use the [style guide](https://book.the-turing-way.org/community-handbook/style.html) and Jupyter Book's [Cheat Sheet](https://jupyterbook.org/reference/cheatsheet.html) to guide your writing.\n> The [style guide](https://book.the-turing-way.org/community-handbook/style/style-citing.html) also contains _The Turing Way's_ recommendations for referencing and citation.\n\n> To include an image in your writing, use the MyST directive shown below. \n> Remember to add your image to the `figures` [folder](https://github.com/the-turing-way/the-turing-way/tree/main/book/website/figures) and use the correct path, else it will not be displayed.\n\n```{figure} ../../../figures/image-name.png\n---\nname: image-name\nalt: describe your image for readers who rely on screen readers\n---\nYour image caption here\n```\n\n> To include code blocks, simply enclose your code in three sets of backticks shown below.\n\n```python\ndef simple_function():\n    pass\n```\n\n> To include an admonition or to highlight a block of text that exists slightly apart from the narrative of your section, use the directive shown below. Jupyter Book's [documentation](https://jupyterbook.org/content/content-blocks.html#) has other useful examples.\n\n```{note}\nHere is a note!\n```\n\n<!-- \nIn the label, replace `keyidea2` with a word that best describes the section or key idea you want to explain -->\n(sectioninitials-filename-keyidea2)=\n## Key Idea 2\n\n> **Talk about your key idea in detail**. Feel free to use images, code blocks, and admonitions to communicate your ideas.\n> You may break the section down into subsections if you wish.\n> Remember to use the [style guide](https://book.the-turing-way.org/community-handbook/style.html) and Jupyter Book's [Cheat Sheet](https://jupyterbook.org/reference/cheatsheet.html) to guide your writing.\n> The [style guide](https://book.the-turing-way.org/community-handbook/style/style-citing.html) also contains _The Turing Way's_ recommendations for referencing and citation.\n\n<!-- \nIn the label, replace `keyidea3` with a word that best describes the section or key idea you want to explain -->\n(sectioninitials-filename-keyidea3)=\n## Key Idea 3\n\n> **Talk about your key idea in detail**. Feel free to use images, code blocks, and admonitions to communicate your ideas.\n> You may break the section down into subsections if you wish.\n> Remember to use the [style guide](https://book.the-turing-way.org/community-handbook/style.html) and Jupyter Book's [Cheat Sheet](https://jupyterbook.org/reference/cheatsheet.html) to guide your writing.\n> The [style guide](https://book.the-turing-way.org/community-handbook/style/style-citing.html) also contains _The Turing Way's_ recommendations for referencing and citation.\n\n(sectioninitials-filename-summary)=\n## Summary\n\n> **Add a short summary of this subchapter with key takeaways.**\n> You may also recommend and link to other chapters/subchapters you want your readers to explore after reading this subchapter.\n\n\n<!-- IMPORTANT!\n\n- Use this template to create your chapter's subchapters.\n- Refrain from writing very long subchapters as readers may be unwilling to read them. Rather, you should split long subchapters into smaller subchapters if necessary.\n\n\n\nBEFORE YOU GO\n\n- Have a look at the Style Guide and the Maintaining Consistency chapters to ensure that you have followed the relevant recommendations on\n  - Avoiding HTML\n  - Consecutive headers\n  - Labels and cross referencing\n  - Using images\n  - Latin abbreviations\n  - References and citations\n  - Title casing\n  - Matching headers with reference in table of content\n\n-->\n"
  },
  {
    "path": "book/templates/chapter-template/chapter-content/chapter-personal-stories.md",
    "content": "(sectioninitials-filename)=\n# Personal Stories\n\n***Please remove all the Blockquotes (sentences that start with \">\")***\n\n> A personal story is a case study about an individual who practices the main ideas from your chapter in their work.\n> Personal stories should give readers a first-hand perspective and insight about how they may go about introducing your chapter's concepts in their own work.\n\n> A personal story should be short, engaging, and have a clear call-to-action. \n> How you format it is up to you, however you may consider one of the following options:\n> - An interview with the subject - for reference, see the [personal story](https://book.the-turing-way.org/reproducible-research/vcs/vcs-personal-stories.html) in the Version Control chapter\n> - A blog-style article about the subject written from their perspective - for reference, see the [personal story](https://book.the-turing-way.org/reproducible-research/rdm/rdm-stories.html) in the Research Data Management Chapter.\n> - A blog-style article written about the subject written from your perspective - in this case, it may be beneficial to include direct quotes from the subject in your article where possible. \n\n## `Subject Name`: `Story Caption`\n\n> The title of the personal story should start with the name of the subject followed by a short caption that captures the overall message of the story.\n> For example, the [personal story](https://book.the-turing-way.org/reproducible-research/rdm/rdm-stories.html) in the Research Data Management chapter is aptly titled: `Susanna-Assunta Sansone: From FAIR Co-Author to FAIR Doer`\n\n> Regardless of how you choose to format the personal story, ensure that it contains the elements itemised in list below. \n> Use the items to structure your content but do not include them in your contribution. \n> Feel free to use images, external resources, or code blocks to tell a compelling story.\n> Above all, centre the personal story around how readers are expected to benefit from the subject's experiences.\n\n> ### Key Elements of a Personal Story\n> - Introduce the subject, their role, what they are working on/have worked on, and provide links to their online activities and profiles (if the subject consents).\n>   - An introduction will help readers connect and engage with the subject better\n> - Describe how the subject is practicing your chapter's concepts in their work.\n>   - The personal story should give the reader some background about what the subject is working on\n> - Explain how your chapter's concepts has impacted the subject's work.\n>   - Impact could be positive or negative. It is important that readers get a nuanced view of how your chapter's key ideas work in a real-world context.\n> - Describe any challenges the subject faced while practicing the chapter's key ideas\n> - Communicate any thoughts or reflections the subject has about your chapter's topic.\n>   - What did the subject learn from practicing the chapter's ideas in their project? What would they have done differently? What are they most proud of?\n\n\n## BEFORE YOU GO\n\n> - Use this template to create a personal story.\n> - Refrain from writing very long content as readers may be unwilling to read them. Rather, you should split long content into smaller subchapters if necessary.\n> - Have a look at the Style Guide and the Maintaining Consistency chapters to ensure that you have followed the relevant recommendations on\n>   - Avoiding HTML\n>   - Consecutive headers\n>   - Labels and cross referencing\n>   - Using images\n>   - Latin abbreviations\n>   - References and citations\n>   - Title casing\n>   - Matching headers with reference in table of content\n"
  },
  {
    "path": "book/templates/chapter-template/chapter-content/chapter-resources.md",
    "content": "(sectioninitials-filename)=\n# Resources\n\n> Use this subchapter to\n>  - tell readers what other chapters in _The Turing Way_ book they should read next\n>  - point readers towards external resources where they can learn more about the topic of your chapter\n\n(sectioninitials-filename-learn)=\n## What to Learn Next\n\n> **Recommend other chapters in _The Turing Way_ book that readers should read next as a \"level up\", and explain why.**\n> Please cross reference to those chapters so that reader can easily navigate to them.\n> If the target chapter does not have a label, add one.\n\n> You may skip this section if there are no chapters in _The Turing Way_ to link to.\n\n(sectioninitials-filename-reading)=\n## Further Reading\n\n> **Point users to external resources to learn more about your chapter's topic.** \n> For each resource, please provide a link and a reason why the reader should be interested in it.\n> Use a list for this section\n\n- [Resource 1](link_to_resource): _reason for recommendation_\n- [Resource 1](link_to_resource): _reason for recommendation_\n- [Resource 1](link_to_resource): _reason for recommendation_\n\n\n<!-- IMPORTANT!\n\n- Use this template to create your chapter's resources section. This is always the last part of your subchapter\n\nBEFORE YOU GO\n\n- Have a look at the Style Guide and the Maintaining Consistency chapters to ensure that you have followed the relevant recommendations on\n  - Avoiding HTML\n  - Consecutive headers\n  - Labels and cross referencing\n  - Latin abbreviations\n  - References and citations\n  - Title casing\n  - Matching headers with reference in table of content\n\n-->"
  },
  {
    "path": "book/templates/chapter-template/chapter-landing-page.md",
    "content": "(sectioninitials-filename)=\n# Chapter Title\n\n> Labels (above headers) should follow the cross-referencing conventions described in the [Style Guide](https://book.the-turing-way.org/community-handbook/style/style-crossref.html).\n> Modify them based on the Guide your chapter belongs to and the name you give the file.\n\n(sectioninitials-filename-prerequisites)=\n## Prerequisites\n\n>**Itemise other chapters in _The Turing Way_ or topics that readers should be familiar with to understand your chapter better.**\n> Ensure that you link to those chapters using the [Style Guide's](https://book.the-turing-way.org/community-handbook/style/style-crossref.html) cross referencing recommendations.\n> If the topics are only available on the web, appropriately link to them too.\n> Importance should either be `Helpful` or `Necessary`\n\n> For each prerequisite, you should also provide an indication of the skill level readers should have to understand your chapter better\n> Skill level can either be _beginner_, _intermediate_, or _advanced_.\n\n| Prerequisite | Importance | Skill Level | Notes |\n| -------------|----------|------|----|\n| {ref}`Chapter <chapter-label>` | Helpful/Necessary | Beginner/Intermediate/Advanced | Any useful notes the reader should know |\n\n\n(sectioninitials-filename-summary)=\n## Summary\n\n> **Write a brief overview of the content of your chapter.**\n> Summaries should be concise, but also introduce all the sub-topics that your chapter will talk about.\n> When you mention a sub-topic, link to the subchapter where you expand on the topic.\n> See the Summary in the Open Research [chapter](https://book.the-turing-way.org/reproducible-research/open.html) for inspiration.\n\n> Optionally, you can add an image that captures the gist of your chapter.\n> For reference, you may reuse our images hosted on Zenodo [here](https://zenodo.org/record/3332808) and [here](https://zenodo.org/record/3695300).\n> You may also use this collection of [royalty free images](https://www.manypixels.co/gallery/) hosted on ManyPixels.\n> Recommendations for using figures in _The Turing Way_ can be found in the [Style Guide](https://book.the-turing-way.org/community-handbook/style/style-figures.html).\n\n(sectioninitials-filename-motivation)=\n## Motivation and Background\n\n> **Explain why readers should pay attention to this chapter.**\n> For example, how can your chapter's content have a positive impact on your reader's data science project?\n> Think about the reader demographic that would be interested in your chapter and tailor this section appropriately.\n> Remember to cross-reference relevant subchapters using this directive: `{ref}Subchapter<sectioninitials-filename-subchaptername>`.\n\n<!-- IMPORTANT!\n\n- Use this template to create the landing page for your chapter\n\nBEFORE YOU GO\n\n- Have a look at the Style Guide and the Maintaining Consistency chapters to ensure that you have followed the relevant recommendations on\n  - Labels and cross referencing\n  - Using images\n  - Latin abbreviations\n  - References and citations\n\n-->\n\n"
  },
  {
    "path": "book/templates/count-chapters.sh",
    "content": "#!/bin/bash\n# run this script locally in the 'quarterly report' folder\n# Indicate the date and time for last stat generation\n\ncurrent_time=$(date +\"%Y-%m-%d %H:%M:%S.%3N\")\necho \"#Book stats for chapters and subchapters, \\\ngenerated on: $current_time\" > book-stats.md\n\n# add table header\necho \"guide name; number of chapters; number of subchapters\"  >> book-stats.md\necho \"guide name; number of chapters; number of subchapters\"\n\npath=\"../website/\"\n# Sum up chapters and subchapters\ntotal_chapters=0\ntotal_subchapters=0\n\n# list of guides\nguide_list=(reproducible-research project-design \\\ncommunication collaboration ethical-research \\\ncommunity-handbook)\n\n# loop over guide list\nfor guide in \"${guide_list[@]}\";do\n    # count chapters in each guide\n    chapters=$(find \"${path}${guide}\" -maxdepth 1 -type f | cut -d/ -f2 | sort | wc -l | awk '{print $1 - 1}')\n    # count subchapters in each guide\n    subchapters=$(find \"${path}${guide}\" -type f | cut -d/ -f2 | sort | wc -l| awk '{print $1 - 1}')\n    \n    echo \"${guide}; $chapters; $subchapters\"\n    echo \"${guide}; $chapters; $subchapters\" >> book-stats.csv\n\n    total_chapters=$((total_chapters + $chapters))\n    total_subchapters=$((total_subchapters + $subchapters))\ndone\n\n# Sum all chapters and subchapters from all guides\necho \"\\nall guides; $total_chapters; $total_subchapters\"\necho \"all guides; $total_chapters; $total_subchapters\" >>  book-stats.csv\n"
  },
  {
    "path": "book/website/LICENSE.md",
    "content": "# License for this book\n\nAll content in this book (located in the `book/website/` folder)\nis licensed under the [Creative Commons Attribution 4.0 International (CC BY 4.0)](https://creativecommons.org/licenses/by/4.0/) license.\nFor more details please see our [project-wide LICENSE.md file](../../LICENSE.md).\n"
  },
  {
    "path": "book/website/afterword/afterword.md",
    "content": "(aw)=\n# Afterword\n\nThe last part of _The Turing Way_ book is called **Afterword**.\nFollowing this design principle of standard books, we have so far included [](#aw-glossary), [](#aw-bibliography) and [](#contributors-record-highlights) of the book as the supplementary materials of _The Turing Way_.\n\nThe community collaboration and development aspects of the book has been written into the [Community Handbook](#ch) section of this book.\n\n```{figure} ../../figures/road-to-reproducibility.*\n---\nheight: 400px\nname: road-to-reproducibility\nalt: Three hands holding magnifying glasses and verifying 'road to reproducibility' of The Turing Way.\n---\nRoad to Reproducibility. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n"
  },
  {
    "path": "book/website/afterword/bibliography.md",
    "content": "(aw-bibliography)=\n# Bibliography\n\n*This file consist of a complete bibliography for this book sorted alphabetically*\n\n```{bibliography}\n```\n"
  },
  {
    "path": "book/website/afterword/collaborators.md",
    "content": "(aw-collaborators)=\n# Partners and Collaborators\n\n_The Turing Way_ works in collaboration and partnership with many communities and organisations.\nThe project also receives in-kind support through contributions from members who represent their communities, projects or organisations in The Turing way.\nThese contributions may take different forms, such as sharing of practices, co-creating documentation, designing workshops and presentations, co-hosting events, creating illustrations, providing mentorship, leading or contributing to sub-projects and co-developing other resources.\nSome of these contributions also include projects that build alongside or upon The Turing Way resources or collaborate with The Turing Way team members in various capacities.\nWe acknowledge each of these contributing members individually and list their profiles under “Collaborating organisations and projects”.\n\n## Collaborating Projects - Ongoing\n\n(aw-collaborators-practitioners-hub)=\n### *The Turing Way* Practitioners Hub - BridgeAI-funded Project\n\n[Official Webpage](https://www.turing.ac.uk/turing-way-practitioners-hub)\n\n#### Representatives\n\n- [Arielle Bennett](https://book.the-turing-way.org/afterword/contributors-record#arielle-bennett)\n- [Alexandra Araujo Alvarez](https://book.the-turing-way.org/afterword/contributors-record#alexandra-araujo-alvarez)\n\n(aw-collaborators-jupyterhub)=\n### [JupyterHub - The Turing Way DEI Project](https://chanzuckerberg.com/eoss/proposals/jupyterhub-community-strategic-lead/)\n\nTo broaden participation in the JupyterHub community, JupyterHub has collaborated with _The Turing Way_ to create for pathways and programs that provide onboarding and mentorship opportunities for their community members.\n\n#### Representative\n\n- [Kirstie Whitaker](https://book.the-turing-way.org/afterword/contributors-record#kirstie-whitaker)\n- [Arielle Bennett](https://book.the-turing-way.org/afterword/contributors-record#arielle-bennett)\n\n(aw-collaborators-dswb)=\n### [Data Science Without Borders](https://dswb.africa/open-science/)\n\nThe Wellcome Trust-funded Data Science Without Borders (DSWB) is committed to supporting the adoption and use of open science practices and approaches in their work.\nThe Turing Way is used as a primary reference for curating and sharing practices, as well as identifying gaps where resources can be developed by the DSWB members in collaboration with other interested practitioners.\nSee, {ref}`Data Science Without Border Pathway<pw-data-science-without-borders>` page for chapters curated for the community.\n\n#### Representative\n\n- [Precious Onyewuchi](https://osponow.com/team/precious-onyewuchi)\n- [Malvika Sharan](https://book.the-turing-way.org/afterword/contributors-record#kirstie-whitaker)\n\n## Community Partners\n\n(aw-collaborators-eds)=\n### [Environmental Data Science Book](https://edsbook.org/welcome.html)\n\nEnvironmental Data Science book or EDS book is a living, open and community-driven online resource to showcase and support the publication of data, research and open-source tools for collaborative, reproducible and transparent Environmental Data Science.\n\n#### Representative\n\n- [Alejandro Coca-Castro](https://book.the-turing-way.org/afterword/contributors-record#alejandro-coca), Research Fellow, Environment and Sustainability Grand Challenge Research Programme, The Alan Turing Institute\n\n(aw-collaborators-NHS-R)=\n### [NHS-R Way](https://nhsrway.nhsrcommunity.com/)\n\nThe NHS-R Community started in 2018 to promote the use of R in the NHS and the community has grown rapidly ever since. \nIt is a community that is broader than the NHS as members come from public sector organisations across the UK, including Local Authorities and Civil Service, as well as academics and voluntary sector people who have an interest in healthcare. \nWhilst R is a core language for support by the community, there is always support for data science tools more generally, particularly where they cross over with R.\n\nThe NHS-R builds on _The Turing Way_ guide model for the NHS-R community to promote the use of R in healthcare. \nContributors come from Local Authorities, Civil Service, the Public Sector, Academia, the Voluntary Sector, Charities and individuals with no organisational connection.\n\n#### Representative\n\n- [Zoë Turner](https://book.the-turing-way.org/afterword/contributors-record#zoe-turner), Senior Data Scientist, Strategy Unit\n\n(collaborators-ols)=\n### [OLS (Open Life Science)](https://openlifesci.org/)\n\nUnder the collaboration name OLS-4 for Turing, _The Turing Way_ collaborates with [OLS](https://openlifesci.org), a programme that helps individuals and stakeholders in research to become Open Science ambassadors.\nThis collaboration offers training and mentoring to interested members from Turing and The Turing Way communities to join the OLS programme individually or in teams.\nThey develop Open Science aspects in the projects that they either already have been working on or want to develop.\n\nOLS community members have been collaborating with *The Turing Way* since 2020.\n\n#### Representative\n\n- [Malvika Sharan](https://book.the-turing-way.org/afterword/contributors-record#malvika-sharan)\n\n(collaborators-delft)=\n### [Delft University of Technology - Faculty of Applied Sciences](https://www.tudelft.nl/en/faculty-of-applied-sciences)\n\nThe Faculty of Applied Sciences is the largest of the Delft University of Technology and focuses on finding innovative solutions to some of the problems faced by society.\nDevelopment of the fundamental knowledge needed to underpin technical developments that can be widely used throughout society.\nIn ensuring that this knowledge can be shared effectively with the wider society, the Faculty values the sharing of data and code and has a [Research Data Management policy](https://www.tudelft.nl/en/library/research-data-management/r/policies/tu-delft-faculty-policies/) in place since 2020.\nIn this effort, the contributions from the Faculty of Applied Sciences have mainly focused on the Reproducible Research Chapter of _The Turing Way_.\n\n#### Representative\n\n- Current - Lena Karvovskaya\n- Previously - [Esther Plomp](https://book.the-turing-way.org/afterword/contributors-record#esther-plomp)\n\n(collaborators-escience)=\n### [Netherlands eScience Center](https://www.esciencecenter.nl/)\n\nThe Netherlands eScience Center is the Dutch national hub for the development and application of domain overarching software and methods for the scientific community. Their main goal is to enable scientists with varying computing experiences to fully utilize the potential of the available e-infrastructure and allow them to achieve otherwise unreachable scientific breakthroughs. The Netherlands eScience Center is primarily funded by the National Research Council (NWO) and the National e-infrastructure Organization (SURF) of the Netherlands.\n\nThe Netherlands eScience Center maintains [its own guide](https://guide.esciencecenter.nl/) for reproducible software development. The focus of the eScience Centre guide has a big overlap with _The Turing Way_ and therefore it makes sense to avoid duplicating efforts. The eScience centre contributes to _The Turing Way_ in the areas which are relevant to the eScience guide. The eScience guide points to _The Turing Way_ in which information would otherwise be duplicated.\n\n#### Representative\n\n- [Carlos Martinez-Ortiz](https://book.the-turing-way.org/afterword/contributors-record#carlos-martinez-oritz), Community Manager - Software Sustainability, Netherlands eScience Center\n\n(collaborators-scilifelab)=\n### [SciLifeLab Data Centre](https://www.scilifelab.se/)\n\nSciLifeLab, a national resource offering unique technologies and expertise to life scientists in fields like biomedicine, ecology, and evolution in Sweden, seamlessly integrates with our community of researchers, fostering collaborations across traditional boundaries with industry, healthcare, public research organizations, and international partners.\nThe SciLifeLab Data Centre serves as a core division within SciLifeLab, tasked with overseeing IT and data management matters, catering to both SciLifeLab as a whole and the Data-Driven Life Science (DDLS) research program.\nWe are committed to ensuring that research outputs such as data and software are Findable, Accessible, Interoperable, and Reusable (FAIR), adhering to open science principles and best practices, and optimizing the value of these outputs for the scientific community.\n\n#### Representative\n\n- [Christopher Erdmann](https://book.the-turing-way.org/afterword/contributors-record#christopher-erdmann), Head of Open Science, SciLifeLab Data Centre\n\n(collaborators-faircookbook)=\n### [FAIR Cookbook](https://fairplus.github.io/the-fair-cookbook/content/home.html)\n\nFAIR Cookbook is an online resource that helps researchers and data managers professionals make their data Findable, Accessible, Interoperable and Reusable (FAIR).\nFAIRPlus Cookbook builds on _The Turing Way_ project and community models and provides chapters as \"recipes\" according to the FAIR elements, audience type, reading time, and level of difficulty.\n\n_The Turing Way_ team members and [project's editorial board members](https://fairplus.github.io/the-fair-cookbook/content/recipes/boilerplate/people.html), Susanna-Assunta Sansone and Philippe Rocca-Serra, collaborate to ensure interoperability between the two resources and exchange experiences as open source project developers.\nFAIR Cookbook [features relevant chapters from _The Turing Way_](https://fairplus.github.io/the-fair-cookbook/search.html?q=turing+way).\nSimilarly, _The Turing Way_ features the project and provides an impact story titled [From FAIR Co-Author to FAIR Doer](https://book.the-turing-way.org/reproducible-research/rdm/rdm-stories.html) by Susanna-Assunta Sansone (a co-lead of the FAIR Cookbook project).\nYou can find more details and background in the chapter [Leveraging the Turing Way Book](https://fairplus.github.io/the-fair-cookbook/content/recipes/introduction/the-turing-way.html?highlight=turing).\n\n#### Representative\n\n- [Susanna-Assunta Sansone](https://book.the-turing-way.org/afterword/contributors-record#susanna-assunta-sansone), University of Oxford, Academic Lead for Research Practice; Professor of Data Readiness\n\n## Collaborating Projects - Concluded\n\n### Professionalising Data Science Roles - Turing's Skills Policy Award\n\n[GitHub repo](https://github.com/alan-turing-institute/professionalising-data-science-roles)\n\n#### People\n\n- [Emma Karoune](https://book.the-turing-way.org/afterword/contributors-record#emma-karoune)\n- [Malvika Sharan](https://book.the-turing-way.org/afterword/contributors-record#malvika-sharan)\n- [Alexandra Araujo Alvarez](https://book.the-turing-way.org/afterword/contributors-record#alexandra-araujo-alvarez)\n\n### Pathways Python Package for Curated Access to Book Chapters\n\n- [GitHub repo in The Turing Way](https://github.com/the-turing-way/pathways)\n- [prototype repo in the Turing organisation](https://github.com/alan-turing-institute/bio-Turing-Way/)\n\n#### Developers\n\n- May Yong, Iain Stanson, Lydia France, Malvika Sharan: funded by AI for Science and Government in 2021-2022\n- Arya A., Johanna Bayer, Malvika Sharan: 2023 Google Summer of Code (GSoC)\n\n### Data Science Project Management for Project Leaders\n\n- [GitHub repo in the Turing organisation](https://github.com/alan-turing-institute/data-training-for-bioscience)\n- Materials are hosted under The Carpentries incubator\n    - lesson 1: [introduction to AI and Data Science](https://github.com/carpentries-incubator/managing-computational-projects)\n    - lesson 2: [open and reproducible practices](https://github.com/carpentries-incubator/data-science-ai-senior-researchers) featuring *The Turing Way* resources.\n\n#### Developers\n\n- Malvika Sharan, Lydia France, Federico Nanni: : funded by AI for Science and Government in 2021-2022\n- Julien Colomb (in-kind from TU Berlin) and Jo Havemamm from Access to Perspective (funded by the Turing's Health Research Programme): 2023\n\n### Cite.Software: Centalising Recommendation for Research Stakeholders\n\n[Pathway for Software Citation](https://book.the-turing-way.org/pathways/pathways-software-citation/)\n\n#### People\n\n- [Christopher Erdmann](https://book.the-turing-way.org/afterword/contributors-record#christopher-erdmann)\n- [Malvika Sharan](https://book.the-turing-way.org/afterword/contributors-record#malvika-sharan)\n\n### Recognising Research Infrastructure Roles (RIR)\n\n[Article in Journal of Trial & Error](https://journal.trialanderror.org/pub/manifesto-rewarding-recognizing/release/1)\n\n#### People\n\n- [Arielle Bennett](https://book.the-turing-way.org/afterword/contributors-record#arielle-bennett)\n- [Esther Plomp](https://book.the-turing-way.org/afterword/contributors-record#esther-plomp)\n- [Danny Garside](https://book.the-turing-way.org/afterword/contributors-record#danny-garside)\n- [Hao Ye](https://www.weecology.org/author/hao-ye/)\n"
  },
  {
    "path": "book/website/afterword/contributors/all-contributors.md",
    "content": "(contributors-record-all)=\n# All Contributors\n\n✨Using [all-contributors](https://allcontributors.org/) specification, _The Turing Way_ recognises all contributors, not just the ones who push code. ✨\n\n(contributors-record-contributors)=\n## Contributors\n\nThanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):\n\n<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->\n<!-- prettier-ignore-start -->\n<!-- markdownlint-disable -->\n<table>\n  <tbody>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Aakash-Raj-2001\"><img src=\"https://avatars.githubusercontent.com/u/79682170?v=4?s=100\" width=\"100px;\" alt=\"Aakash Raj\"/><br /><sub><b>Aakash Raj</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/aasiyahrashan\"><img src=\"https://avatars.githubusercontent.com/u/9165437?v=4?s=100\" width=\"100px;\" alt=\"Aasiyah Rashan\"/><br /><sub><b>Aasiyah Rashan</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/amefonaffia\"><img src=\"https://avatars.githubusercontent.com/u/20369026?v=4?s=100\" width=\"100px;\" alt=\"Abasi-amefon Affia\"/><br /><sub><b>Abasi-amefon Affia</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/AbcSxyZ\"><img src=\"https://avatars.githubusercontent.com/u/34010605?v=4?s=100\" width=\"100px;\" alt=\"AbcSxyZ\"/><br /><sub><b>AbcSxyZ</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://abelsiqueira.github.io\"><img src=\"https://avatars.githubusercontent.com/u/1068752?v=4?s=100\" width=\"100px;\" alt=\"Abel Siqueira\"/><br /><sub><b>Abel Siqueira</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aabelsiqueira\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://achintyarao.in\"><img src=\"https://avatars.githubusercontent.com/u/7623019?v=4?s=100\" width=\"100px;\" alt=\"Achintya Rao\"/><br /><sub><b>Achintya Rao</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ARaoOfPhysics\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ARaoOfPhysics\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.adina-wagner.com\"><img src=\"https://avatars1.githubusercontent.com/u/29738718?v=4?s=100\" width=\"100px;\" alt=\"Adina Wagner\"/><br /><sub><b>Adina Wagner</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.linkedin.com/in/aditi-dutta-22a299135/\"><img src=\"https://avatars.githubusercontent.com/u/45264620?v=4?s=100\" width=\"100px;\" alt=\"Aditi Dutta\"/><br /><sub><b>Aditi Dutta</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AbooktrackerGirl\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://warwick.ac.uk/aditishenvi\"><img src=\"https://avatars2.githubusercontent.com/u/39489147?v=4?s=100\" width=\"100px;\" alt=\"Aditi Shenvi\"/><br /><sub><b>Aditi Shenvi</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/afzal442\"><img src=\"https://avatars.githubusercontent.com/u/11625672?v=4?s=100\" width=\"100px;\" alt=\"Afzal Ansari\"/><br /><sub><b>Afzal Ansari</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aafzal442\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Ago3\"><img src=\"https://avatars.githubusercontent.com/u/30800478?v=4?s=100\" width=\"100px;\" alt=\"Ago3\"/><br /><sub><b>Ago3</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Hanaffi\"><img src=\"https://avatars.githubusercontent.com/u/35642947?v=4?s=100\" width=\"100px;\" alt=\"Ahmed Essam\"/><br /><sub><b>Ahmed Essam</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AHanaffi\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/AidaMehonic\"><img src=\"https://avatars.githubusercontent.com/u/45169136?v=4?s=100\" width=\"100px;\" alt=\"Aida Mehonic\"/><br /><sub><b>Aida Mehonic</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ahornos\"><img src=\"https://avatars0.githubusercontent.com/u/9551786?v=4?s=100\" width=\"100px;\" alt=\"Albert Hornos Vidal\"/><br /><sub><b>Albert Hornos Vidal</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aahornos\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aahornos\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/aldenc\"><img src=\"https://avatars.githubusercontent.com/u/20688591?v=4?s=100\" width=\"100px;\" alt=\"Alden Conner\"/><br /><sub><b>Alden Conner</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aaldenc\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Tools\">🔧</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/acocac\"><img src=\"https://avatars.githubusercontent.com/u/13321552?v=4?s=100\" width=\"100px;\" alt=\"Alejandro ©\"/><br /><sub><b>Alejandro ©</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=acocac\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aacocac\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/alwil\"><img src=\"https://avatars.githubusercontent.com/u/7210572?v=4?s=100\" width=\"100px;\" alt=\"Aleksandra Ewa Wilczynska\"/><br /><sub><b>Aleksandra Ewa Wilczynska</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aalwil\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/alekszaf\"><img src=\"https://avatars.githubusercontent.com/u/15204615?v=4?s=100\" width=\"100px;\" alt=\"Aleksandra Zaforemska\"/><br /><sub><b>Aleksandra Zaforemska</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://ornithos.github.io/\"><img src=\"https://avatars3.githubusercontent.com/u/8834882?v=4?s=100\" width=\"100px;\" alt=\"Alex Bird\"/><br /><sub><b>Alex Bird</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Tutorials\">✅</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aornithos\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://alexwlchan.net\"><img src=\"https://avatars0.githubusercontent.com/u/301220?v=4?s=100\" width=\"100px;\" alt=\"Alex Chan\"/><br /><sub><b>Alex Chan</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://informationcake.com\"><img src=\"https://avatars3.githubusercontent.com/u/16001543?v=4?s=100\" width=\"100px;\" alt=\"Alex Clarke\"/><br /><sub><b>Alex Clarke</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=informationcake\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://alexmorley.me\"><img src=\"https://avatars2.githubusercontent.com/u/13655521?v=4?s=100\" width=\"100px;\" alt=\"Alexander Morley\"/><br /><sub><b>Alexander Morley</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aalexmorley\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=alexmorley\" title=\"Tests\">⚠️</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/AlexandraAAJ\"><img src=\"https://avatars.githubusercontent.com/u/124181438?v=4?s=100\" width=\"100px;\" alt=\"Alexandra Araujo Alvarez\"/><br /><sub><b>Alexandra Araujo Alvarez</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org\" title=\"Examples\">💡</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=AlexandraAAJ\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AAlexandraAAJ\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.saral.it\"><img src=\"https://avatars1.githubusercontent.com/u/11707417?v=4?s=100\" width=\"100px;\" alt=\"Ali Seyhun Saral\"/><br /><sub><b>Ali Seyhun Saral</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=seyhunsaral\" title=\"Documentation\">📖</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.saral.it\"><img src=\"https://avatars.githubusercontent.com/u/82848414?v=4?s=100\" width=\"100px;\" alt=\"Ali Seyhun Saral\"/><br /><sub><b>Ali Seyhun Saral</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aaseyq\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/amasud08\"><img src=\"https://avatars.githubusercontent.com/u/93528449?v=4?s=100\" width=\"100px;\" alt=\"Ambreen Masud\"/><br /><sub><b>Ambreen Masud</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/kir0ul\"><img src=\"https://avatars3.githubusercontent.com/u/6053592?v=4?s=100\" width=\"100px;\" alt=\"Andrea Pierré\"/><br /><sub><b>Andrea Pierré</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Akir0ul\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://andreasancheztapia.netlify.app/\"><img src=\"https://avatars.githubusercontent.com/u/4183062?v=4?s=100\" width=\"100px;\" alt=\"Andrea Sánchez-Tapia (she/her)\"/><br /><sub><b>Andrea Sánchez-Tapia (she/her)</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AAndreaSanchezTapia\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AAndreaSanchezTapia\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/andreea-avramescu\"><img src=\"https://avatars.githubusercontent.com/u/33720256?v=4?s=100\" width=\"100px;\" alt=\"Andreea Avramescu\"/><br /><sub><b>Andreea Avramescu</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://inwaves.io\"><img src=\"https://avatars.githubusercontent.com/u/8530685?v=4?s=100\" width=\"100px;\" alt=\"Andrei Alexandru\"/><br /><sub><b>Andrei Alexandru</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ainwaves\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ainwaves\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://anicusan.github.io\"><img src=\"https://avatars.githubusercontent.com/u/20279119?v=4?s=100\" width=\"100px;\" alt=\"Andrei Leonard Nicusan\"/><br /><sub><b>Andrei Leonard Nicusan</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://scholar.google.co.uk/citations?user=o0cD2JgAAAAJ&hl=en\"><img src=\"https://avatars3.githubusercontent.com/u/26226804?v=4?s=100\" width=\"100px;\" alt=\"Andrew Stewart\"/><br /><sub><b>Andrew Stewart</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Tutorials\">✅</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.linkedin.com/in/andriannobella\"><img src=\"https://avatars0.githubusercontent.com/u/57834926?v=4?s=100\" width=\"100px;\" alt=\"Andrian Nobella\"/><br /><sub><b>Andrian Nobella</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.astro.rug.nl/~ramos\"><img src=\"https://avatars.githubusercontent.com/u/13357890?v=4?s=100\" width=\"100px;\" alt=\"Andrés Ramos\"/><br /><sub><b>Andrés Ramos</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://anjackson.net\"><img src=\"https://avatars.githubusercontent.com/u/87843?v=4?s=100\" width=\"100px;\" alt=\"Andy Jackson\"/><br /><sub><b>Andy Jackson</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aanjackson\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/zimolzak\"><img src=\"https://avatars.githubusercontent.com/u/2705315?v=4?s=100\" width=\"100px;\" alt=\"Andy Zimolzak\"/><br /><sub><b>Andy Zimolzak</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Azimolzak\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/AngelikaKerlin\"><img src=\"https://avatars.githubusercontent.com/u/115996571?v=4?s=100\" width=\"100px;\" alt=\"AngelikaKerlin\"/><br /><sub><b>AngelikaKerlin</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AAngelikaKerlin\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://varlotta.xyz\"><img src=\"https://avatars3.githubusercontent.com/u/5478922?v=4?s=100\" width=\"100px;\" alt=\"Angelo Varlotta\"/><br /><sub><b>Angelo Varlotta</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://oieltd.com\"><img src=\"https://avatars.githubusercontent.com/u/1248413?v=4?s=100\" width=\"100px;\" alt=\"Angus Hollands\"/><br /><sub><b>Angus Hollands</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aagoose77\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/aniketh-varma\"><img src=\"https://avatars.githubusercontent.com/u/55805574?v=4?s=100\" width=\"100px;\" alt=\"Aniketh Varma\"/><br /><sub><b>Aniketh Varma</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aaniketh-varma\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/AnkitaGarg95\"><img src=\"https://avatars.githubusercontent.com/u/70006784?v=4?s=100\" width=\"100px;\" alt=\"AnkitaGarg95\"/><br /><sub><b>AnkitaGarg95</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/amallon\"><img src=\"https://avatars.githubusercontent.com/u/35258603?v=4?s=100\" width=\"100px;\" alt=\"Ann-Marie Mallon\"/><br /><sub><b>Ann-Marie Mallon</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/annahadji\"><img src=\"https://avatars0.githubusercontent.com/u/14828356?v=4?s=100\" width=\"100px;\" alt=\"Anna Hadjitofi\"/><br /><sub><b>Anna Hadjitofi</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://book.the-turing-way.org\" title=\"Tutorials\">✅</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.annakrystalli.me/\"><img src=\"https://avatars1.githubusercontent.com/u/5583057?v=4?s=100\" width=\"100px;\" alt=\"Anna Krystalli\"/><br /><sub><b>Anna Krystalli</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://book.the-turing-way.org\" title=\"Examples\">💡</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aannakrystalli\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Tutorials\">✅</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ciupava\"><img src=\"https://avatars.githubusercontent.com/u/3450313?v=4?s=100\" width=\"100px;\" alt=\"Anna Zanchetta\"/><br /><sub><b>Anna Zanchetta</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://annabelelizabethwhipp.github.io/homepage\"><img src=\"https://avatars0.githubusercontent.com/u/32568227?v=4?s=100\" width=\"100px;\" alt=\"Annabel Elizabeth Whipp\"/><br /><sub><b>Annabel Elizabeth Whipp</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.mn.uio.no/geo/english/people/adm/annefou/\"><img src=\"https://avatars.githubusercontent.com/u/8168508?v=4?s=100\" width=\"100px;\" alt=\"Anne Fouilloux\"/><br /><sub><b>Anne Fouilloux</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.aleesteele.com\"><img src=\"https://avatars.githubusercontent.com/u/18509789?v=4?s=100\" width=\"100px;\" alt=\"Anne Lee Steele\"/><br /><sub><b>Anne Lee Steele</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aaleesteele\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aaleesteele\" title=\"Bug reports\">🐛</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=aleesteele\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a> <a href=\"https://book.the-turing-way.org\" title=\"Tutorials\">✅</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Videos\">📹</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/AnneliesPieterman-Bos\"><img src=\"https://avatars.githubusercontent.com/u/213759116?v=4?s=100\" width=\"100px;\" alt=\"AnneliesPieterman-Bos\"/><br /><sub><b>AnneliesPieterman-Bos</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AAnneliesPieterman-Bos\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Annetrude\"><img src=\"https://avatars.githubusercontent.com/u/195094341?v=4?s=100\" width=\"100px;\" alt=\"Annetrude de Mooij\"/><br /><sub><b>Annetrude de Mooij</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AAnnetrude\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/AoifeHughes\"><img src=\"https://avatars.githubusercontent.com/u/10923695?v=4?s=100\" width=\"100px;\" alt=\"Aoife\"/><br /><sub><b>Aoife</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AAoifeHughes\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://linkedin.com/in/arasselvi\"><img src=\"https://avatars.githubusercontent.com/u/55166614?v=4?s=100\" width=\"100px;\" alt=\"Aras Selvi\"/><br /><sub><b>Aras Selvi</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://arduin.io\"><img src=\"https://avatars.githubusercontent.com/u/75615911?v=4?s=100\" width=\"100px;\" alt=\"Arduin\"/><br /><sub><b>Arduin</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Arielle-Bennett\"><img src=\"https://avatars.githubusercontent.com/u/74651964?v=4?s=100\" width=\"100px;\" alt=\"Arielle-Bennett\"/><br /><sub><b>Arielle-Bennett</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AArielle-Bennett\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AArielle-Bennett\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.getmarkup.com\"><img src=\"https://avatars.githubusercontent.com/u/4941299?v=4?s=100\" width=\"100px;\" alt=\"Arron Lacey\"/><br /><sub><b>Arron Lacey</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aarronlacey\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/arya1302\"><img src=\"https://avatars.githubusercontent.com/u/73542599?v=4?s=100\" width=\"100px;\" alt=\"Arya A\"/><br /><sub><b>Arya A</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=arya1302\" title=\"Code\">💻</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aarya1302\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=arya1302\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aarya1302\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://book.the-turing-way.org\" title=\"User Testing\">📓</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=arya1302\" title=\"Tests\">⚠️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://aryanuwu.myportfolio.com/\"><img src=\"https://avatars.githubusercontent.com/u/26514224?v=4?s=100\" width=\"100px;\" alt=\"Aryan nath\"/><br /><sub><b>Aryan nath</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AAryannath\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://asmakacem.me/\"><img src=\"https://avatars.githubusercontent.com/u/73066984?v=4?s=100\" width=\"100px;\" alt=\"Asma Kacem\"/><br /><sub><b>Asma Kacem</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AAsmaKacem1\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/augustinas1\"><img src=\"https://avatars1.githubusercontent.com/u/10000223?v=4?s=100\" width=\"100px;\" alt=\"Augustinas Sukys\"/><br /><sub><b>Augustinas Sukys</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Avaga123\"><img src=\"https://avatars.githubusercontent.com/u/112536906?v=4?s=100\" width=\"100px;\" alt=\"Avaga123\"/><br /><sub><b>Avaga123</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://barbaravreede.com\"><img src=\"https://avatars2.githubusercontent.com/u/5747405?v=4?s=100\" width=\"100px;\" alt=\"Barbara Vreede\"/><br /><sub><b>Barbara Vreede</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://tzovar.as\"><img src=\"https://avatars.githubusercontent.com/u/674899?v=4?s=100\" width=\"100px;\" alt=\"Bastian Greshake Tzovaras\"/><br /><sub><b>Bastian Greshake Tzovaras</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Agedankenstuecke\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://medium.com/@batool664\"><img src=\"https://avatars1.githubusercontent.com/u/53487593?v=4?s=100\" width=\"100px;\" alt=\"Batool\"/><br /><sub><b>Batool</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ABatoolMM\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=BatoolMM\" title=\"Documentation\">📖</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://beckigreen.netlify.app\"><img src=\"https://avatars.githubusercontent.com/u/77735779?v=4?s=100\" width=\"100px;\" alt=\"Becki Green\"/><br /><sub><b>Becki Green</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/r-j-arnold\"><img src=\"https://avatars1.githubusercontent.com/u/20441134?v=4?s=100\" width=\"100px;\" alt=\"Becky Arnold\"/><br /><sub><b>Becky Arnold</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=r-j-arnold\" title=\"Code\">💻</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=r-j-arnold\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ar-j-arnold\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/benvanwerkhoven\"><img src=\"https://avatars.githubusercontent.com/u/2337546?v=4?s=100\" width=\"100px;\" alt=\"Ben van Werkhoven\"/><br /><sub><b>Ben van Werkhoven</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/BenjaminMummery\"><img src=\"https://avatars3.githubusercontent.com/u/46931690?v=4?s=100\" width=\"100px;\" alt=\"Benjamin Mummery\"/><br /><sub><b>Benjamin Mummery</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/AlfAWolf140\"><img src=\"https://avatars2.githubusercontent.com/u/29063219?v=4?s=100\" width=\"100px;\" alt=\"Beth Montague-Hellen\"/><br /><sub><b>Beth Montague-Hellen</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=AlfAWolf140\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/bbartholdy\"><img src=\"https://avatars.githubusercontent.com/u/47455812?v=4?s=100\" width=\"100px;\" alt=\"Bjørn Peare Bartholdy\"/><br /><sub><b>Bjørn Peare Bartholdy</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Abbartholdy\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/bouweandela\"><img src=\"https://avatars3.githubusercontent.com/u/5430937?v=4?s=100\" width=\"100px;\" alt=\"Bouwe Andela\"/><br /><sub><b>Bouwe Andela</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Abouweandela\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://brndnlee.me/\"><img src=\"https://avatars3.githubusercontent.com/u/39078797?v=4?s=100\" width=\"100px;\" alt=\"Brandon Lee\"/><br /><sub><b>Brandon Lee</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ablee1710\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/brechtjehuiskes\"><img src=\"https://avatars.githubusercontent.com/u/243357208?v=4?s=100\" width=\"100px;\" alt=\"Brechtje\"/><br /><sub><b>Brechtje</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Abrechtjehuiskes\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://brianoneil.netlify.app/\"><img src=\"https://avatars.githubusercontent.com/u/102704305?v=4?s=100\" width=\"100px;\" alt=\"Brian O'Neil\"/><br /><sub><b>Brian O'Neil</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ABrianAndrewOneil\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://bsipocz.github.io/\"><img src=\"https://avatars1.githubusercontent.com/u/6788290?v=4?s=100\" width=\"100px;\" alt=\"Brigitta Sipőcz\"/><br /><sub><b>Brigitta Sipőcz</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Absipocz\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Tools\">🔧</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Absipocz\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/bcamino\"><img src=\"https://avatars.githubusercontent.com/u/39554331?v=4?s=100\" width=\"100px;\" alt=\"Bruno Camino\"/><br /><sub><b>Bruno Camino</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/BuildingTech24\"><img src=\"https://avatars.githubusercontent.com/u/257283328?v=4?s=100\" width=\"100px;\" alt=\"BuildingTech24\"/><br /><sub><b>BuildingTech24</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ABuildingTech24\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/CDonesCU\"><img src=\"https://avatars.githubusercontent.com/u/169474876?v=4?s=100\" width=\"100px;\" alt=\"CDonesCU\"/><br /><sub><b>CDonesCU</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/callummole\"><img src=\"https://avatars1.githubusercontent.com/u/22677759?v=4?s=100\" width=\"100px;\" alt=\"Callum Mole\"/><br /><sub><b>Callum Mole</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://trotts.io\"><img src=\"https://avatars3.githubusercontent.com/u/9531671?v=4?s=100\" width=\"100px;\" alt=\"Cameron Trotter\"/><br /><sub><b>Cameron Trotter</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/crangelsmith\"><img src=\"https://avatars2.githubusercontent.com/u/11162074?v=4?s=100\" width=\"100px;\" alt=\"Camila Rangel Smith\"/><br /><sub><b>Camila Rangel Smith</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=crangelsmith\" title=\"Documentation\">📖</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/CariHV\"><img src=\"https://avatars.githubusercontent.com/u/82444709?v=4?s=100\" width=\"100px;\" alt=\"Cari Hyde-Vaamonde\"/><br /><sub><b>Cari Hyde-Vaamonde</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ACariHV\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/c-martinez\"><img src=\"https://avatars3.githubusercontent.com/u/7782231?v=4?s=100\" width=\"100px;\" alt=\"Carlos Martinez\"/><br /><sub><b>Carlos Martinez</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ac-martinez\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ac-martinez\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/vladoxNCL\"><img src=\"https://avatars0.githubusercontent.com/u/33488410?v=4?s=100\" width=\"100px;\" alt=\"Carlos Vladimiro González Zelaya\"/><br /><sub><b>Carlos Vladimiro González Zelaya</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/CarlosMFerr\"><img src=\"https://avatars.githubusercontent.com/u/111580443?v=4?s=100\" width=\"100px;\" alt=\"CarlosMFerr\"/><br /><sub><b>CarlosMFerr</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/cassgvp\"><img src=\"https://avatars2.githubusercontent.com/u/43407869?v=4?s=100\" width=\"100px;\" alt=\"Cassandra Gould van Praag\"/><br /><sub><b>Cassandra Gould van Praag</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=cassgvp\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Acassgvp\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/cecibaldoni\"><img src=\"https://avatars.githubusercontent.com/u/111133332?v=4?s=100\" width=\"100px;\" alt=\"Cecilia Baldoni\"/><br /><sub><b>Cecilia Baldoni</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Cedeli\"><img src=\"https://avatars.githubusercontent.com/u/96904745?v=4?s=100\" width=\"100px;\" alt=\"Ced\"/><br /><sub><b>Ced</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/CeilidhWelsh\"><img src=\"https://avatars.githubusercontent.com/u/71887891?v=4?s=100\" width=\"100px;\" alt=\"CeilidhWelsh\"/><br /><sub><b>CeilidhWelsh</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/cemulus\"><img src=\"https://avatars3.githubusercontent.com/u/55829938?v=4?s=100\" width=\"100px;\" alt=\"Cem Ulus\"/><br /><sub><b>Cem Ulus</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://cghlewis.com\"><img src=\"https://avatars.githubusercontent.com/u/33465957?v=4?s=100\" width=\"100px;\" alt=\"Cghlewis\"/><br /><sub><b>Cghlewis</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ACghlewis\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/chadsgilbert\"><img src=\"https://avatars1.githubusercontent.com/u/524598?v=4?s=100\" width=\"100px;\" alt=\"Chad Gilbert\"/><br /><sub><b>Chad Gilbert</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Achadsgilbert\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://chandlerklein.com\"><img src=\"https://avatars3.githubusercontent.com/u/18371945?v=4?s=100\" width=\"100px;\" alt=\"Chandler Klein\"/><br /><sub><b>Chandler Klein</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AChandlerKlein\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/illushka\"><img src=\"https://avatars1.githubusercontent.com/u/8143964?v=4?s=100\" width=\"100px;\" alt=\"Chanuki Illushka Seresinhe\"/><br /><sub><b>Chanuki Illushka Seresinhe</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=illushka\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ccoulombe\"><img src=\"https://avatars.githubusercontent.com/u/22602168?v=4?s=100\" width=\"100px;\" alt=\"Charles Coulombe\"/><br /><sub><b>Charles Coulombe</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/watson-c\"><img src=\"https://avatars3.githubusercontent.com/u/48691807?v=4?s=100\" width=\"100px;\" alt=\"Charlotte Watson\"/><br /><sub><b>Charlotte Watson</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://andreaczhang.github.io\"><img src=\"https://avatars.githubusercontent.com/u/32897643?v=4?s=100\" width=\"100px;\" alt=\"Chi Zhang\"/><br /><sub><b>Chi Zhang</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aandreaczhang\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://chjh.nl\"><img src=\"https://avatars.githubusercontent.com/u/2946344?v=4?s=100\" width=\"100px;\" alt=\"Chris Hartgerink\"/><br /><sub><b>Chris Hartgerink</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://chrisholdgraf.com\"><img src=\"https://avatars1.githubusercontent.com/u/1839645?v=4?s=100\" width=\"100px;\" alt=\"Chris Holdgraf\"/><br /><sub><b>Chris Holdgraf</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/effigies\"><img src=\"https://avatars0.githubusercontent.com/u/83442?v=4?s=100\" width=\"100px;\" alt=\"Chris Markiewicz\"/><br /><sub><b>Chris Markiewicz</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://ctomlinson.net\"><img src=\"https://avatars.githubusercontent.com/u/46465574?v=4?s=100\" width=\"100px;\" alt=\"Chris Tomlinson\"/><br /><sub><b>Chris Tomlinson</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Chrisisour\"><img src=\"https://avatars2.githubusercontent.com/u/49248075?v=4?s=100\" width=\"100px;\" alt=\"Christina Hitrova\"/><br /><sub><b>Christina Hitrova</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://chrisdburr.github.io\"><img src=\"https://avatars.githubusercontent.com/u/63010234?v=4?s=100\" width=\"100px;\" alt=\"Christopher Burr\"/><br /><sub><b>Christopher Burr</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://christopherlovell.co.uk\"><img src=\"https://avatars3.githubusercontent.com/u/4648092?v=4?s=100\" width=\"100px;\" alt=\"Christopher Lovell\"/><br /><sub><b>Christopher Lovell</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ClareLiggins\"><img src=\"https://avatars3.githubusercontent.com/u/47981871?v=4?s=100\" width=\"100px;\" alt=\"Clare Liggins\"/><br /><sub><b>Clare Liggins</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=ClareLiggins\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ClauFischer\"><img src=\"https://avatars.githubusercontent.com/u/104078689?v=4?s=100\" width=\"100px;\" alt=\"ClauFischer\"/><br /><sub><b>ClauFischer</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AClauFischer\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ClaudiaCAU\"><img src=\"https://avatars.githubusercontent.com/u/32701238?v=4?s=100\" width=\"100px;\" alt=\"ClaudiaCAU\"/><br /><sub><b>ClaudiaCAU</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AClaudiaCAU\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://users.aber.ac.uk/cos\"><img src=\"https://avatars3.githubusercontent.com/u/1053628?v=4?s=100\" width=\"100px;\" alt=\"Colin Sauze\"/><br /><sub><b>Colin Sauze</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://collinschwantes.github.io\"><img src=\"https://avatars.githubusercontent.com/u/6107885?v=4?s=100\" width=\"100px;\" alt=\"Collin Schwantes\"/><br /><sub><b>Collin Schwantes</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Acollinschwantes\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/DSrinivasKarthik\"><img src=\"https://avatars.githubusercontent.com/u/139240749?v=4?s=100\" width=\"100px;\" alt=\"D Srinivas Karthik\"/><br /><sub><b>D Srinivas Karthik</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ADSrinivasKarthik\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/DACNC\"><img src=\"https://avatars.githubusercontent.com/u/57093439?v=4?s=100\" width=\"100px;\" alt=\"DACNC\"/><br /><sub><b>DACNC</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/DDelbarre\"><img src=\"https://avatars.githubusercontent.com/u/108824056?v=4?s=100\" width=\"100px;\" alt=\"DDelbarre\"/><br /><sub><b>DDelbarre</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/DaisyParry\"><img src=\"https://avatars.githubusercontent.com/u/56261324?v=4?s=100\" width=\"100px;\" alt=\"DaisyParry\"/><br /><sub><b>DaisyParry</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ubdbra001\"><img src=\"https://avatars.githubusercontent.com/u/18421270?v=4?s=100\" width=\"100px;\" alt=\"Dan Brady\"/><br /><sub><b>Dan Brady</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aubdbra001\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://spot.colorado.edu/~daho1668/\"><img src=\"https://avatars3.githubusercontent.com/u/6867260?v=4?s=100\" width=\"100px;\" alt=\"Dan Hobley\"/><br /><sub><b>Dan Hobley</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=SiccarPoint\" title=\"Documentation\">📖</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/kerchner\"><img src=\"https://avatars.githubusercontent.com/u/3451175?v=4?s=100\" width=\"100px;\" alt=\"Dan Kerchner\"/><br /><sub><b>Dan Kerchner</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Akerchner\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://cv.shearer.org\"><img src=\"https://avatars.githubusercontent.com/u/3944577?v=4?s=100\" width=\"100px;\" alt=\"Dan Shearer\"/><br /><sub><b>Dan Shearer</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/taunsquared\"><img src=\"https://avatars1.githubusercontent.com/u/27739141?v=4?s=100\" width=\"100px;\" alt=\"Danbee Kim\"/><br /><sub><b>Danbee Kim</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=taunsquared\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/dlintott\"><img src=\"https://avatars2.githubusercontent.com/u/4700562?v=4?s=100\" width=\"100px;\" alt=\"Daniel Lintott\"/><br /><sub><b>Daniel Lintott</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Adlintott\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://orcid.org/0000-0001-9488-1870\"><img src=\"https://avatars3.githubusercontent.com/u/465923?v=4?s=100\" width=\"100px;\" alt=\"Daniel Mietchen\"/><br /><sub><b>Daniel Mietchen</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ADaniel-Mietchen\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://nordholmen.net\"><img src=\"https://avatars1.githubusercontent.com/u/1325054?v=4?s=100\" width=\"100px;\" alt=\"Daniel Nüst\"/><br /><sub><b>Daniel Nüst</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://dannygarside.co.uk\"><img src=\"https://avatars3.githubusercontent.com/u/3739866?v=4?s=100\" width=\"100px;\" alt=\"Danny Garside\"/><br /><sub><b>Danny Garside</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ada5nsy\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ada5nsy\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Tools\">🔧</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/dpdong19\"><img src=\"https://avatars.githubusercontent.com/u/54056456?v=4?s=100\" width=\"100px;\" alt=\"Danping\"/><br /><sub><b>Danping</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Adpdong19\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/foster999\"><img src=\"https://avatars0.githubusercontent.com/u/31405412?v=4?s=100\" width=\"100px;\" alt=\"David Foster\"/><br /><sub><b>David Foster</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Afoster999\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Afoster999\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://research.ncl.ac.uk/geospatial-systems/phdresearchers/profiles/davidgregg.html\"><img src=\"https://avatars.githubusercontent.com/u/45788793?v=4?s=100\" width=\"100px;\" alt=\"David Gregg\"/><br /><sub><b>David Gregg</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.flypig.co.uk\"><img src=\"https://avatars.githubusercontent.com/u/1446122?v=4?s=100\" width=\"100px;\" alt=\"David Llewellyn-Jones\"/><br /><sub><b>David Llewellyn-Jones</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Allewelld\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://dpshelio.github.io\"><img src=\"https://avatars.githubusercontent.com/u/963242?v=4?s=100\" width=\"100px;\" alt=\"David Pérez-Suárez\"/><br /><sub><b>David Pérez-Suárez</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.davidstansby.com\"><img src=\"https://avatars0.githubusercontent.com/u/6197628?v=4?s=100\" width=\"100px;\" alt=\"David Stansby\"/><br /><sub><b>David Stansby</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/DerienFe\"><img src=\"https://avatars3.githubusercontent.com/u/55786232?v=4?s=100\" width=\"100px;\" alt=\"DerienFe\"/><br /><sub><b>DerienFe</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.imperial.ac.uk/quantum-photovoltaics\"><img src=\"https://avatars1.githubusercontent.com/u/6095790?v=4?s=100\" width=\"100px;\" alt=\"Diego Alonso Alvarez\"/><br /><sub><b>Diego Alonso Alvarez</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Adalonsoa\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/DiegoOLopez\"><img src=\"https://avatars.githubusercontent.com/u/92211663?v=4?s=100\" width=\"100px;\" alt=\"Diego O Lopez\"/><br /><sub><b>Diego O Lopez</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://dblana.github.io/\"><img src=\"https://avatars0.githubusercontent.com/u/13907429?v=4?s=100\" width=\"100px;\" alt=\"Dimitra Blana\"/><br /><sub><b>Dimitra Blana</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Adblana\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/dineshkumar12004\"><img src=\"https://avatars.githubusercontent.com/u/67814205?v=4?s=100\" width=\"100px;\" alt=\"Dinesh kumar\"/><br /><sub><b>Dinesh kumar</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Adineshkumar12004\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.dorienhuijser.com\"><img src=\"https://avatars.githubusercontent.com/u/58177697?v=4?s=100\" width=\"100px;\" alt=\"Dorien Huijser\"/><br /><sub><b>Dorien Huijser</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/mitre88\"><img src=\"https://avatars.githubusercontent.com/u/30060514?v=4?s=100\" width=\"100px;\" alt=\"Dr Alex Mitre\"/><br /><sub><b>Dr Alex Mitre</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Amitre88\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://owainkenwayucl.github.io/\"><img src=\"https://avatars.githubusercontent.com/u/4256093?v=4?s=100\" width=\"100px;\" alt=\"Dr Owain Kenway\"/><br /><sub><b>Dr Owain Kenway</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://edchalstrey.com/\"><img src=\"https://avatars.githubusercontent.com/u/5486164?v=4?s=100\" width=\"100px;\" alt=\"Ed Chalstrey\"/><br /><sub><b>Ed Chalstrey</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aedwardchalstrey1\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.linkedin.com/in/edwin-ajong-51601a217/\"><img src=\"https://avatars.githubusercontent.com/u/80322163?v=4?s=100\" width=\"100px;\" alt=\"Edwin Ajong\"/><br /><sub><b>Edwin Ajong</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aeddybruv\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://emalliaraki.com\"><img src=\"https://avatars3.githubusercontent.com/u/36627260?v=4?s=100\" width=\"100px;\" alt=\"Eirini Malliaraki\"/><br /><sub><b>Eirini Malliaraki</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=rockita\" title=\"Documentation\">📖</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/eirini-zormpa\"><img src=\"https://avatars3.githubusercontent.com/u/30151074?v=4?s=100\" width=\"100px;\" alt=\"Eirini Zormpa\"/><br /><sub><b>Eirini Zormpa</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aeirini-zormpa\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aeirini-zormpa\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Elisarau\"><img src=\"https://avatars.githubusercontent.com/u/88763664?v=4?s=100\" width=\"100px;\" alt=\"Elisa Rauseo\"/><br /><sub><b>Elisa Rauseo</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Elisa-on-GitHub\"><img src=\"https://avatars.githubusercontent.com/u/78543806?v=4?s=100\" width=\"100px;\" alt=\"Elisa-on-GitHub\"/><br /><sub><b>Elisa-on-GitHub</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AElisa-on-GitHub\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://emdupre.me\"><img src=\"https://avatars3.githubusercontent.com/u/15017191?v=4?s=100\" width=\"100px;\" alt=\"Elizabeth DuPre\"/><br /><sub><b>Elizabeth DuPre</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aemdupre\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/EKaroune\"><img src=\"https://avatars2.githubusercontent.com/u/58147174?v=4?s=100\" width=\"100px;\" alt=\"Em K\"/><br /><sub><b>Em K</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AEKaroune\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/newsletter\" title=\"Blogposts\">📝</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AEKaroune\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ereynaud\"><img src=\"https://avatars.githubusercontent.com/u/12295393?v=4?s=100\" width=\"100px;\" alt=\"Emmanuel G. REYNAUD\"/><br /><sub><b>Emmanuel G. REYNAUD</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://emmyft.github.io\"><img src=\"https://avatars.githubusercontent.com/u/24935760?v=4?s=100\" width=\"100px;\" alt=\"Emmy Tsang\"/><br /><sub><b>Emmy Tsang</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.glerean.com\"><img src=\"https://avatars1.githubusercontent.com/u/8993301?v=4?s=100\" width=\"100px;\" alt=\"Enrico Glerean\"/><br /><sub><b>Enrico Glerean</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aeglerean\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/edaub\"><img src=\"https://avatars0.githubusercontent.com/u/45598892?v=4?s=100\" width=\"100px;\" alt=\"Eric Daub\"/><br /><sub><b>Eric Daub</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=edaub\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://erictleung.com\"><img src=\"https://avatars2.githubusercontent.com/u/2754821?v=4?s=100\" width=\"100px;\" alt=\"Eric Leung\"/><br /><sub><b>Eric Leung</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aerictleung\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.ericrscott.com\"><img src=\"https://avatars2.githubusercontent.com/u/25404783?v=4?s=100\" width=\"100px;\" alt=\"Eric R Scott\"/><br /><sub><b>Eric R Scott</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AAariq\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/EstherPlomp\"><img src=\"https://avatars1.githubusercontent.com/u/46314469?v=4?s=100\" width=\"100px;\" alt=\"Esther Plomp\"/><br /><sub><b>Esther Plomp</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AEstherPlomp\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AEstherPlomp\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a> <a href=\"https://github.com/the-turing-way/newsletter\" title=\"Blogposts\">📝</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://evelinag.com\"><img src=\"https://avatars2.githubusercontent.com/u/5541162?v=4?s=100\" width=\"100px;\" alt=\"Evelina Gabasova\"/><br /><sub><b>Evelina Gabasova</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aevelinag\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/fdiblen\"><img src=\"https://avatars.githubusercontent.com/u/144492?v=4?s=100\" width=\"100px;\" alt=\"Faruk D.\"/><br /><sub><b>Faruk D.</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://federiconanni.com/\"><img src=\"https://avatars2.githubusercontent.com/u/8415204?v=4?s=100\" width=\"100px;\" alt=\"Federico Nanni\"/><br /><sub><b>Federico Nanni</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Afedenanni\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Afedenanni\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.turing.ac.uk/people/doctoral-students/ferran-gonzalez-hernandez\"><img src=\"https://avatars0.githubusercontent.com/u/43019129?v=4?s=100\" width=\"100px;\" alt=\"Ferran Gonzalez Hernandez\"/><br /><sub><b>Ferran Gonzalez Hernandez</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://flavio2018.github.io\"><img src=\"https://avatars.githubusercontent.com/u/39437769?v=4?s=100\" width=\"100px;\" alt=\"Flavio Petruzzellis\"/><br /><sub><b>Flavio Petruzzellis</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aflavio2018\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://asquera.de\"><img src=\"https://avatars2.githubusercontent.com/u/47542?v=4?s=100\" width=\"100px;\" alt=\"Florian Gilcher\"/><br /><sub><b>Florian Gilcher</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Askade\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://francescooper.net\"><img src=\"https://avatars3.githubusercontent.com/u/14854230?v=4?s=100\" width=\"100px;\" alt=\"Frances Cooper\"/><br /><sub><b>Frances Cooper</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/FrancesMadden\"><img src=\"https://avatars3.githubusercontent.com/u/52208466?v=4?s=100\" width=\"100px;\" alt=\"Frances Madden\"/><br /><sub><b>Frances Madden</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/fwkoch\"><img src=\"https://avatars.githubusercontent.com/u/9453731?v=4?s=100\" width=\"100px;\" alt=\"Franklin Koch\"/><br /><sub><b>Franklin Koch</b></sub></a><br /><a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/FreekPols\"><img src=\"https://avatars.githubusercontent.com/u/55780866?v=4?s=100\" width=\"100px;\" alt=\"Freek Pols\"/><br /><sub><b>Freek Pols</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AFreekPols\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Froguin99\"><img src=\"https://avatars.githubusercontent.com/u/93538632?v=4?s=100\" width=\"100px;\" alt=\"Froguin99\"/><br /><sub><b>Froguin99</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/FrozenLines\"><img src=\"https://avatars.githubusercontent.com/u/103727912?v=4?s=100\" width=\"100px;\" alt=\"FrozenLines\"/><br /><sub><b>FrozenLines</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AFrozenLines\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.linkedin.com/in/fuad-reza-pahlevi-531283160/\"><img src=\"https://avatars1.githubusercontent.com/u/25898509?v=4?s=100\" width=\"100px;\" alt=\"Fuad Reza Pahlevi\"/><br /><sub><b>Fuad Reza Pahlevi</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/GabinWK\"><img src=\"https://avatars.githubusercontent.com/u/104582708?v=4?s=100\" width=\"100px;\" alt=\"GabinWK\"/><br /><sub><b>GabinWK</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AGabinWK\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/gandrewgabriel\"><img src=\"https://avatars.githubusercontent.com/u/52380254?v=4?s=100\" width=\"100px;\" alt=\"George Gabriel\"/><br /><sub><b>George Gabriel</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=gandrewgabriel\" title=\"Code\">💻</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=gandrewgabriel\" title=\"Tests\">⚠️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/GeorgiaHCA\"><img src=\"https://avatars1.githubusercontent.com/u/46889966?v=4?s=100\" width=\"100px;\" alt=\"Georgia\"/><br /><sub><b>Georgia</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/GeorgiaA\"><img src=\"https://avatars2.githubusercontent.com/u/33513781?v=4?s=100\" width=\"100px;\" alt=\"Georgia Atkinson\"/><br /><sub><b>Georgia Atkinson</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/georgiatomova\"><img src=\"https://avatars3.githubusercontent.com/u/17258191?v=4?s=100\" width=\"100px;\" alt=\"Georgia Tomova\"/><br /><sub><b>Georgia Tomova</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/GeorgianaElena\"><img src=\"https://avatars0.githubusercontent.com/u/7579677?v=4?s=100\" width=\"100px;\" alt=\"Georgiana Elena\"/><br /><sub><b>Georgiana Elena</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AGeorgianaElena\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://gertjan.dev\"><img src=\"https://avatars2.githubusercontent.com/u/3286696?v=4?s=100\" width=\"100px;\" alt=\"Gertjan van den Burg\"/><br /><sub><b>Gertjan van den Burg</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=GjjvdBurg\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/giannidsp\"><img src=\"https://avatars1.githubusercontent.com/u/40976911?v=4?s=100\" width=\"100px;\" alt=\"Gianni Scolaro\"/><br /><sub><b>Gianni Scolaro</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Agiannidsp\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://bit.ly/gigi-kenneth\"><img src=\"https://avatars.githubusercontent.com/u/52600214?v=4?s=100\" width=\"100px;\" alt=\"Gigi Kenneth\"/><br /><sub><b>Gigi Kenneth</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.linkedin.com/in/giulia-crocioni/\"><img src=\"https://avatars.githubusercontent.com/u/55382553?v=4?s=100\" width=\"100px;\" alt=\"Giulia Crocioni\"/><br /><sub><b>Giulia Crocioni</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Agcroci2\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://goodnewssandy.netlify.app/\"><img src=\"https://avatars.githubusercontent.com/u/54219127?v=4?s=100\" width=\"100px;\" alt=\"Goodnews Sandy\"/><br /><sub><b>Goodnews Sandy</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asandygudie\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Asandygudie\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://labrary.online\"><img src=\"https://avatars0.githubusercontent.com/u/237254?v=4?s=100\" width=\"100px;\" alt=\"Graham Lee\"/><br /><sub><b>Graham Lee</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aiamleeg\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aiamleeg\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.caporasolab.us\"><img src=\"https://avatars.githubusercontent.com/u/192372?v=4?s=100\" width=\"100px;\" alt=\"Greg Caporaso\"/><br /><sub><b>Greg Caporaso</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Agregcaporaso\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://gkiar.github.io\"><img src=\"https://avatars3.githubusercontent.com/u/4883288?v=4?s=100\" width=\"100px;\" alt=\"Greg Kiar\"/><br /><sub><b>Greg Kiar</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=gkiar\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Agkiar\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.fil.ion.ucl.ac.uk/team/spm-team/\"><img src=\"https://avatars.githubusercontent.com/u/5950855?v=4?s=100\" width=\"100px;\" alt=\"Guillaume Flandin\"/><br /><sub><b>Guillaume Flandin</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/gustavobecelli\"><img src=\"https://avatars3.githubusercontent.com/u/39573195?v=4?s=100\" width=\"100px;\" alt=\"Gustavo Becelli do Nacimento\"/><br /><sub><b>Gustavo Becelli do Nacimento</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://haoye.us\"><img src=\"https://avatars.githubusercontent.com/u/5835366?v=4?s=100\" width=\"100px;\" alt=\"Hao Ye\"/><br /><sub><b>Hao Ye</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aha0ye\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/harrietrs\"><img src=\"https://avatars.githubusercontent.com/u/28767009?v=4?s=100\" width=\"100px;\" alt=\"Harriet Sands\"/><br /><sub><b>Harriet Sands</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aharrietrs\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://twitter.com/HeidiBaya\"><img src=\"https://avatars1.githubusercontent.com/u/14146757?v=4?s=100\" width=\"100px;\" alt=\"Heidi Seibold\"/><br /><sub><b>Heidi Seibold</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/afuetterer\"><img src=\"https://avatars.githubusercontent.com/u/35225576?v=4?s=100\" width=\"100px;\" alt=\"Heinz-Alexander Fuetterer\"/><br /><sub><b>Heinz-Alexander Fuetterer</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aafuetterer\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.hoang.co.uk/hieu\"><img src=\"https://avatars1.githubusercontent.com/u/691732?v=4?s=100\" width=\"100px;\" alt=\"Hieu Hoang\"/><br /><sub><b>Hieu Hoang</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/humbertodebat\"><img src=\"https://avatars.githubusercontent.com/u/55153399?v=4?s=100\" width=\"100px;\" alt=\"Humberto Debat\"/><br /><sub><b>Humberto Debat</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Iain-S\"><img src=\"https://avatars.githubusercontent.com/u/25081046?v=4?s=100\" width=\"100px;\" alt=\"Iain\"/><br /><sub><b>Iain</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AIain-S\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=Iain-S\" title=\"Code\">💻</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://ianhinder.net\"><img src=\"https://avatars3.githubusercontent.com/u/213274?v=4?s=100\" width=\"100px;\" alt=\"Ian Hinder\"/><br /><sub><b>Ian Hinder</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=ianhinder\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://bandism.net/\"><img src=\"https://avatars.githubusercontent.com/u/22633385?v=4?s=100\" width=\"100px;\" alt=\"Ikko Ashimine\"/><br /><sub><b>Ikko Ashimine</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aeltociear\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://aspdenlab.weebly.com/isabel-birds.html\"><img src=\"https://avatars.githubusercontent.com/u/44876111?v=4?s=100\" width=\"100px;\" alt=\"IsabelBirds\"/><br /><sub><b>IsabelBirds</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/IshanG97\"><img src=\"https://avatars.githubusercontent.com/u/32465586?v=4?s=100\" width=\"100px;\" alt=\"IshanG97\"/><br /><sub><b>IshanG97</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=IshanG97\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://twitter.com/complexbrains\"><img src=\"https://avatars1.githubusercontent.com/u/45263281?v=4?s=100\" width=\"100px;\" alt=\"Isil Bilgin\"/><br /><sub><b>Isil Bilgin</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Acomplexbrains\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Ismael-KG\"><img src=\"https://avatars0.githubusercontent.com/u/64027166?v=4?s=100\" width=\"100px;\" alt=\"Ismael-KG\"/><br /><sub><b>Ismael-KG</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AIsmael-KG\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/newsletter\" title=\"Blogposts\">📝</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://sites.google.com/view/drjkasmireresearch/home\"><img src=\"https://avatars2.githubusercontent.com/u/1334163?v=4?s=100\" width=\"100px;\" alt=\"JKasmire\"/><br /><sub><b>JKasmire</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AJKasmire\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/JZhou-ScottLogic\"><img src=\"https://avatars.githubusercontent.com/u/205162886?v=4?s=100\" width=\"100px;\" alt=\"JZhou-ScottLogic\"/><br /><sub><b>JZhou-ScottLogic</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.jabezsamson.in/\"><img src=\"https://avatars.githubusercontent.com/u/233149054?v=4?s=100\" width=\"100px;\" alt=\"Jabez Samson\"/><br /><sub><b>Jabez Samson</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jabezsamsondev-prog\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/scjjb\"><img src=\"https://avatars.githubusercontent.com/u/77981425?v=4?s=100\" width=\"100px;\" alt=\"Jack Breen\"/><br /><sub><b>Jack Breen</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/jspickering\"><img src=\"https://avatars3.githubusercontent.com/u/28339195?v=4?s=100\" width=\"100px;\" alt=\"Jade Pickering\"/><br /><sub><b>Jade Pickering</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jspickering\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ajspickering\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/JadeHotchkiss\"><img src=\"https://avatars.githubusercontent.com/u/25898078?v=4?s=100\" width=\"100px;\" alt=\"JadeHotchkiss\"/><br /><sub><b>JadeHotchkiss</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AJadeHotchkiss\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://cradledincaricature.com/\"><img src=\"https://avatars.githubusercontent.com/u/4965300?v=4?s=100\" width=\"100px;\" alt=\"James Baker\"/><br /><sub><b>James Baker</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.linkedin.com/in/james-kent-24666468/\"><img src=\"https://avatars0.githubusercontent.com/u/12564882?v=4?s=100\" width=\"100px;\" alt=\"James Kent\"/><br /><sub><b>James Kent</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ajdkent\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.jamesmyatt.co.uk/\"><img src=\"https://avatars1.githubusercontent.com/u/1047337?v=4?s=100\" width=\"100px;\" alt=\"James Myatt\"/><br /><sub><b>James Myatt</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jamesmyatt\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/jemrobinson\"><img src=\"https://avatars2.githubusercontent.com/u/3502751?v=4?s=100\" width=\"100px;\" alt=\"James Robinson\"/><br /><sub><b>James Robinson</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jemrobinson\" title=\"Code\">💻</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://linkedin.com/in/jatonline\"><img src=\"https://avatars.githubusercontent.com/u/48878399?v=4?s=100\" width=\"100px;\" alt=\"James Thomas\"/><br /><sub><b>James Thomas</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ajatonline\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://jamiejquinn.com\"><img src=\"https://avatars.githubusercontent.com/u/8229296?v=4?s=100\" width=\"100px;\" alt=\"Jamie J Quinn\"/><br /><sub><b>Jamie J Quinn</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.jannetta.com\"><img src=\"https://avatars.githubusercontent.com/u/6432530?v=4?s=100\" width=\"100px;\" alt=\"Jannetta Steyn\"/><br /><sub><b>Jannetta Steyn</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ajsteyn\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/JaroCamphuijsen\"><img src=\"https://avatars.githubusercontent.com/u/12695232?v=4?s=100\" width=\"100px;\" alt=\"Jaro Camphuijsen\"/><br /><sub><b>Jaro Camphuijsen</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/jmgate\"><img src=\"https://avatars3.githubusercontent.com/u/20327215?v=4?s=100\" width=\"100px;\" alt=\"Jason Gates\"/><br /><sub><b>Jason Gates</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jmgate\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ajmgate\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/jmoldon\"><img src=\"https://avatars2.githubusercontent.com/u/1053066?v=4?s=100\" width=\"100px;\" alt=\"Javier Moldon\"/><br /><sub><b>Javier Moldon</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jmoldon\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/IIITM-Jay\"><img src=\"https://avatars2.githubusercontent.com/u/65283880?v=4?s=100\" width=\"100px;\" alt=\"Jay Dev Jha\"/><br /><sub><b>Jay Dev Jha</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AIIITM-Jay\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://jending.com\"><img src=\"https://avatars.githubusercontent.com/u/5104098?v=4?s=100\" width=\"100px;\" alt=\"Jennifer Ding\"/><br /><sub><b>Jennifer Ding</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Adingaaling\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Adingaaling\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ubikcan\"><img src=\"https://avatars.githubusercontent.com/u/23242626?v=4?s=100\" width=\"100px;\" alt=\"Jeremy Crampton\"/><br /><sub><b>Jeremy Crampton</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aubikcan\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://twitter.com/jermdemo\"><img src=\"https://avatars3.githubusercontent.com/u/147991?v=4?s=100\" width=\"100px;\" alt=\"Jeremy Leipzig\"/><br /><sub><b>Jeremy Leipzig</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aleipzig\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://jerrydevos.com\"><img src=\"https://avatars.githubusercontent.com/u/22919620?v=4?s=100\" width=\"100px;\" alt=\"Jerry de Vos\"/><br /><sub><b>Jerry de Vos</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/JFormoso\"><img src=\"https://avatars.githubusercontent.com/u/32418102?v=4?s=100\" width=\"100px;\" alt=\"Jesica Formoso\"/><br /><sub><b>Jesica Formoso</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AJFormoso\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/JessicaS11\"><img src=\"https://avatars.githubusercontent.com/u/11756442?v=4?s=100\" width=\"100px;\" alt=\"Jessica\"/><br /><sub><b>Jessica</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/jessyprovencher\"><img src=\"https://avatars2.githubusercontent.com/u/70674444?v=4?s=100\" width=\"100px;\" alt=\"Jessy Provencher\"/><br /><sub><b>Jessy Provencher</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://erambler.co.uk/\"><img src=\"https://avatars3.githubusercontent.com/u/457628?v=4?s=100\" width=\"100px;\" alt=\"Jez Cope\"/><br /><sub><b>Jez Cope</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jezcope\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ajezcope\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/JiaruiWang-Jill\"><img src=\"https://avatars.githubusercontent.com/u/41178872?v=4?s=100\" width=\"100px;\" alt=\"Jill Wang\"/><br /><sub><b>Jill Wang</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AJiaruiWang-Jill\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://inconsistentrecords.co.uk\"><img src=\"https://avatars.githubusercontent.com/u/731727?v=4?s=100\" width=\"100px;\" alt=\"Jim Circadian\"/><br /><sub><b>Jim Circadian</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/JimMadge\"><img src=\"https://avatars2.githubusercontent.com/u/23616154?v=4?s=100\" width=\"100px;\" alt=\"Jim Madge\"/><br /><sub><b>Jim Madge</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=JimMadge\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AJimMadge\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=JimMadge\" title=\"Code\">💻</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AJimMadge\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/JoannaLeng\"><img src=\"https://avatars1.githubusercontent.com/u/23033397?v=4?s=100\" width=\"100px;\" alt=\"Joanna Leng\"/><br /><sub><b>Joanna Leng</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.jearly.co.uk\"><img src=\"https://avatars2.githubusercontent.com/u/7620667?v=4?s=100\" width=\"100px;\" alt=\"Joe Early\"/><br /><sub><b>Joe Early</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/joe-fennell\"><img src=\"https://avatars3.githubusercontent.com/u/25105262?v=4?s=100\" width=\"100px;\" alt=\"Joe Fennell\"/><br /><sub><b>Joe Fennell</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=joe-fennell\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/likeajumprope\"><img src=\"https://avatars.githubusercontent.com/u/23728822?v=4?s=100\" width=\"100px;\" alt=\"Johanna Bayer\"/><br /><sub><b>Johanna Bayer</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Alikeajumprope\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/JohnnyRobs19\"><img src=\"https://avatars.githubusercontent.com/u/145652841?v=4?s=100\" width=\"100px;\" alt=\"Jonathan Siew\"/><br /><sub><b>Jonathan Siew</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/jurra\"><img src=\"https://avatars.githubusercontent.com/u/18581201?v=4?s=100\" width=\"100px;\" alt=\"Jose Urra \"/><br /><sub><b>Jose Urra </b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/jbteves\"><img src=\"https://avatars3.githubusercontent.com/u/26722533?v=4?s=100\" width=\"100px;\" alt=\"Joshua Teves\"/><br /><sub><b>Joshua Teves</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.madrimasd.org/blogs/bioinformatica\"><img src=\"https://avatars1.githubusercontent.com/u/2072150?v=4?s=100\" width=\"100px;\" alt=\"José María Fernández\"/><br /><sub><b>José María Fernández</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ajmfernandez\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://guiomarniso.com\"><img src=\"https://avatars.githubusercontent.com/u/4451818?v=4?s=100\" width=\"100px;\" alt=\"Julia Guiomar Niso Galán\"/><br /><sub><b>Julia Guiomar Niso Galán</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aguiomar\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/juliancervos\"><img src=\"https://avatars.githubusercontent.com/u/25617825?v=4?s=100\" width=\"100px;\" alt=\"Julian Lopez Gordillo\"/><br /><sub><b>Julian Lopez Gordillo</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ajuliancervos\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://orcid.org/0000-0002-3127-5520\"><img src=\"https://avatars2.githubusercontent.com/u/1876667?v=4?s=100\" width=\"100px;\" alt=\"Julien Colomb\"/><br /><sub><b>Julien Colomb</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ajcolomb\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/K-C-Martin\"><img src=\"https://avatars.githubusercontent.com/u/57388565?v=4?s=100\" width=\"100px;\" alt=\"K-C-Martin\"/><br /><sub><b>K-C-Martin</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AK-C-Martin\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.westerling.nu\"><img src=\"https://avatars.githubusercontent.com/u/7298727?v=4?s=100\" width=\"100px;\" alt=\"Kalle Westerling\"/><br /><sub><b>Kalle Westerling</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Akallewesterling\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Akallewesterling\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/KarolineLeiberg\"><img src=\"https://avatars.githubusercontent.com/u/57093276?v=4?s=100\" width=\"100px;\" alt=\"KarolineLeiberg\"/><br /><sub><b>KarolineLeiberg</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://katehertweck.com\"><img src=\"https://avatars.githubusercontent.com/u/1678233?v=4?s=100\" width=\"100px;\" alt=\"Kate Hertweck\"/><br /><sub><b>Kate Hertweck</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/kafitzgerald\"><img src=\"https://avatars.githubusercontent.com/u/7872563?v=4?s=100\" width=\"100px;\" alt=\"Katelyn FitzGerald\"/><br /><sub><b>Katelyn FitzGerald</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/kdixey\"><img src=\"https://avatars2.githubusercontent.com/u/59925972?v=4?s=100\" width=\"100px;\" alt=\"Katherine Dixey\"/><br /><sub><b>Katherine Dixey</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://katrionagoldmann.github.io\"><img src=\"https://avatars.githubusercontent.com/u/25952322?v=4?s=100\" width=\"100px;\" alt=\"Katriona Goldmann\"/><br /><sub><b>Katriona Goldmann</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AKatrionaGoldmann\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/klbarnes20\"><img src=\"https://avatars.githubusercontent.com/u/64787509?v=4?s=100\" width=\"100px;\" alt=\"Kelly Barnes\"/><br /><sub><b>Kelly Barnes</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aklbarnes20\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Kelly-dot\"><img src=\"https://avatars0.githubusercontent.com/u/59481756?v=4?s=100\" width=\"100px;\" alt=\"Kelly-dot\"/><br /><sub><b>Kelly-dot</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/kessonovitch\"><img src=\"https://avatars0.githubusercontent.com/u/23242159?v=4?s=100\" width=\"100px;\" alt=\"Kesson Magid\"/><br /><sub><b>Kesson Magid</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://kkmann.github.io/\"><img src=\"https://avatars2.githubusercontent.com/u/2482236?v=4?s=100\" width=\"100px;\" alt=\"Kevin Kunzmann\"/><br /><sub><b>Kevin Kunzmann</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=kkmann\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Akkmann\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/KimDeRuyck\"><img src=\"https://avatars1.githubusercontent.com/u/26715049?v=4?s=100\" width=\"100px;\" alt=\"Kim De Ruyck\"/><br /><sub><b>Kim De Ruyck</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AKimDeRuyck\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/kderuyck\"><img src=\"https://avatars3.githubusercontent.com/u/74196557?v=4?s=100\" width=\"100px;\" alt=\"Kim De Ruyck\"/><br /><sub><b>Kim De Ruyck</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://whitakerlab.github.io\"><img src=\"https://avatars1.githubusercontent.com/u/3626306?v=4?s=100\" width=\"100px;\" alt=\"Kirstie Whitaker\"/><br /><sub><b>Kirstie Whitaker</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=KirstieJane\" title=\"Documentation\">📖</a> <a href=\"https://book.the-turing-way.org\" title=\"Design\">🎨</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://book.the-turing-way.org\" title=\"Funding Finding\">🔍</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AKirstieJane\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Kj263\"><img src=\"https://avatars.githubusercontent.com/u/114452573?v=4?s=100\" width=\"100px;\" alt=\"Kjirsten Fastabend\"/><br /><sub><b>Kjirsten Fastabend</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/nkosaku\"><img src=\"https://avatars.githubusercontent.com/u/64463851?v=4?s=100\" width=\"100px;\" alt=\"Kosaku Nakano\"/><br /><sub><b>Kosaku Nakano</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/KristijanArmeni\"><img src=\"https://avatars3.githubusercontent.com/u/14061041?v=4?s=100\" width=\"100px;\" alt=\"Kristijan Armeni\"/><br /><sub><b>Kristijan Armeni</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AKristijanArmeni\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://krrank.live\"><img src=\"https://avatars0.githubusercontent.com/u/44499991?v=4?s=100\" width=\"100px;\" alt=\"Krunal Rank\"/><br /><sub><b>Krunal Rank</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AKRHero03\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/masonlr\"><img src=\"https://avatars2.githubusercontent.com/u/5828176?v=4?s=100\" width=\"100px;\" alt=\"Lachlan Mason\"/><br /><sub><b>Lachlan Mason</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=masonlr\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=masonlr\" title=\"Code\">💻</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://lacion.rbind.io\"><img src=\"https://avatars3.githubusercontent.com/u/17729900?v=4?s=100\" width=\"100px;\" alt=\"Laura Acion\"/><br /><sub><b>Laura Acion</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/LauraCarter\"><img src=\"https://avatars3.githubusercontent.com/u/16853500?v=4?s=100\" width=\"100px;\" alt=\"Laura Carter\"/><br /><sub><b>Laura Carter</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ALauraCarter\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ALauraCarter\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Girl-in-Geo\"><img src=\"https://avatars.githubusercontent.com/u/47306402?v=4?s=100\" width=\"100px;\" alt=\"Laura Mugeha\"/><br /><sub><b>Laura Mugeha</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AGirl-in-Geo\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Karvovskaya\"><img src=\"https://avatars3.githubusercontent.com/u/44666630?v=4?s=100\" width=\"100px;\" alt=\"Lenka\"/><br /><sub><b>Lenka</b></sub></a><br /><a href=\"https://github.com/the-turing-way/newsletter\" title=\"Blogposts\">📝</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://csd.utexas.edu/research/hamilton-lab\"><img src=\"https://avatars2.githubusercontent.com/u/3268583?v=4?s=100\" width=\"100px;\" alt=\"Liberty Hamilton\"/><br /><sub><b>Liberty Hamilton</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Alibertyh\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://research.colling.net.nz\"><img src=\"https://avatars.githubusercontent.com/u/21215217?v=4?s=100\" width=\"100px;\" alt=\"Lincoln Colling\"/><br /><sub><b>Lincoln Colling</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Lion-admin\"><img src=\"https://avatars.githubusercontent.com/u/72327875?v=4?s=100\" width=\"100px;\" alt=\"Lion-admin\"/><br /><sub><b>Lion-admin</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ALion-admin\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/LizHareDogs\"><img src=\"https://avatars.githubusercontent.com/u/53099600?v=4?s=100\" width=\"100px;\" alt=\"LizHareDogs\"/><br /><sub><b>LizHareDogs</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ALizHareDogs\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/LouiseABowler\"><img src=\"https://avatars1.githubusercontent.com/u/25640708?v=4?s=100\" width=\"100px;\" alt=\"Louise Bowler\"/><br /><sub><b>Louise Bowler</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=LouiseABowler\" title=\"Code\">💻</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=LouiseABowler\" title=\"Documentation\">📖</a> <a href=\"https://book.the-turing-way.org\" title=\"Examples\">💡</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ALouiseABowler\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Lovkush-A\"><img src=\"https://avatars.githubusercontent.com/u/25344832?v=4?s=100\" width=\"100px;\" alt=\"Lovkush\"/><br /><sub><b>Lovkush</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ALovkush-A\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.robots.ox.ac.uk/~luca\"><img src=\"https://avatars3.githubusercontent.com/u/3330489?v=4?s=100\" width=\"100px;\" alt=\"Luca Bertinetto\"/><br /><sub><b>Luca Bertinetto</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/lucyjstephenson\"><img src=\"https://avatars.githubusercontent.com/u/112892956?v=4?s=100\" width=\"100px;\" alt=\"Lucy Stephenson\"/><br /><sub><b>Lucy Stephenson</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Examples\">💡</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Alucyjstephenson\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Alucyjstephenson\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/GGn0\"><img src=\"https://avatars.githubusercontent.com/u/44038661?v=4?s=100\" width=\"100px;\" alt=\"Luigi Scalzone\"/><br /><sub><b>Luigi Scalzone</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/la-sts\"><img src=\"https://avatars.githubusercontent.com/u/34314067?v=4?s=100\" width=\"100px;\" alt=\"Luis Santos\"/><br /><sub><b>Luis Santos</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ala-sts\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/luisacutillo78\"><img src=\"https://avatars.githubusercontent.com/u/13733038?v=4?s=100\" width=\"100px;\" alt=\"Luisa\"/><br /><sub><b>Luisa</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/luisaforozco\"><img src=\"https://avatars.githubusercontent.com/u/99738896?v=4?s=100\" width=\"100px;\" alt=\"Luisa Orozco\"/><br /><sub><b>Luisa Orozco</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.lukeconibear.com/\"><img src=\"https://avatars.githubusercontent.com/u/19871268?v=4?s=100\" width=\"100px;\" alt=\"Luke Conibear\"/><br /><sub><b>Luke Conibear</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Alukeconibear\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/perluna\"><img src=\"https://avatars.githubusercontent.com/u/47083632?v=4?s=100\" width=\"100px;\" alt=\"Luna\"/><br /><sub><b>Luna</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://laboratoria.la\"><img src=\"https://avatars0.githubusercontent.com/u/15850514?v=4?s=100\" width=\"100px;\" alt=\"Lupe CaMay\"/><br /><sub><b>Lupe CaMay</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aluucamay\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/luukfroling\"><img src=\"https://avatars.githubusercontent.com/u/31106485?v=4?s=100\" width=\"100px;\" alt=\"Luuk Fröling\"/><br /><sub><b>Luuk Fröling</b></sub></a><br /><a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/LydiaFrance\"><img src=\"https://avatars.githubusercontent.com/u/85945427?v=4?s=100\" width=\"100px;\" alt=\"Lydia France\"/><br /><sub><b>Lydia France</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=LydiaFrance\" title=\"Code\">💻</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/LelleDi\"><img src=\"https://avatars.githubusercontent.com/u/108274982?v=4?s=100\" width=\"100px;\" alt=\"LélléD\"/><br /><sub><b>LélléD</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ALelleDi\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/MLeston2022\"><img src=\"https://avatars.githubusercontent.com/u/114400532?v=4?s=100\" width=\"100px;\" alt=\"MLeston2022\"/><br /><sub><b>MLeston2022</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Rainiefantasy\"><img src=\"https://avatars.githubusercontent.com/u/43926907?v=4?s=100\" width=\"100px;\" alt=\"Mahwish M\"/><br /><sub><b>Mahwish M</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/malvikasharan\"><img src=\"https://avatars0.githubusercontent.com/u/5370471?v=4?s=100\" width=\"100px;\" alt=\"Malvika Sharan\"/><br /><sub><b>Malvika Sharan</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=malvikasharan\" title=\"Documentation\">📖</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Project Management\">📆</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Amalvikasharan\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Videos\">📹</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/manuGil\"><img src=\"https://avatars.githubusercontent.com/u/8195424?v=4?s=100\" width=\"100px;\" alt=\"Manuel Garcia\"/><br /><sub><b>Manuel Garcia</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://marcosellys.com\"><img src=\"https://avatars.githubusercontent.com/u/6751242?v=4?s=100\" width=\"100px;\" alt=\"Marcos Ellys Rocha Honorato\"/><br /><sub><b>Marcos Ellys Rocha Honorato</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AMarcosEllys\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/MariaEriksson\"><img src=\"https://avatars1.githubusercontent.com/u/43676485?v=4?s=100\" width=\"100px;\" alt=\"Maria Eriksson\"/><br /><sub><b>Maria Eriksson</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AMariaEriksson\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/mariadelmarq\"><img src=\"https://avatars.githubusercontent.com/u/12743476?v=4?s=100\" width=\"100px;\" alt=\"Maria del Mar Quiroga\"/><br /><sub><b>Maria del Mar Quiroga</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Amariadelmarq\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Mariam-ke\"><img src=\"https://avatars3.githubusercontent.com/u/39956740?v=4?s=100\" width=\"100px;\" alt=\"Mariam-ke\"/><br /><sub><b>Mariam-ke</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AMariam-ke\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/marianaiv\"><img src=\"https://avatars.githubusercontent.com/u/53548707?v=4?s=100\" width=\"100px;\" alt=\"Mariana V.\"/><br /><sub><b>Mariana V.</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Amarianaiv\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/MarionBWeinzierl\"><img src=\"https://avatars.githubusercontent.com/u/56403724?v=4?s=100\" width=\"100px;\" alt=\"Marion\"/><br /><sub><b>Marion</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AMarionBWeinzierl\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.turing.ac.uk/people/researchers/mariona-coll-ardanuy\"><img src=\"https://avatars.githubusercontent.com/u/46483603?v=4?s=100\" width=\"100px;\" alt=\"Mariona\"/><br /><sub><b>Mariona</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.imperial.ac.uk/ict/rcs\"><img src=\"https://avatars3.githubusercontent.com/u/1724545?v=4?s=100\" width=\"100px;\" alt=\"Mark Woodbridge\"/><br /><sub><b>Mark Woodbridge</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://mhauru.org\"><img src=\"https://avatars.githubusercontent.com/u/5229876?v=4?s=100\" width=\"100px;\" alt=\"Markus Hauru\"/><br /><sub><b>Markus Hauru</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Amhauru\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.linkedin.com/in/mloning/\"><img src=\"https://avatars3.githubusercontent.com/u/21020482?v=4?s=100\" width=\"100px;\" alt=\"Markus Löning\"/><br /><sub><b>Markus Löning</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Amloning\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Marta-MM\"><img src=\"https://avatars2.githubusercontent.com/u/67780317?v=4?s=100\" width=\"100px;\" alt=\"Marta-MM\"/><br /><sub><b>Marta-MM</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AMarta-MM\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AMarta-MM\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/martinjeanphd\"><img src=\"https://avatars.githubusercontent.com/u/44728169?v=4?s=100\" width=\"100px;\" alt=\"Martin Jean\"/><br /><sub><b>Martin Jean</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Amartinjeanphd\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/martintoreilly\"><img src=\"https://avatars3.githubusercontent.com/u/21147592?v=4?s=100\" width=\"100px;\" alt=\"Martin O'Reilly\"/><br /><sub><b>Martin O'Reilly</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Tools\">🔧</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://martinagvilas.github.io\"><img src=\"https://avatars2.githubusercontent.com/u/37339384?v=4?s=100\" width=\"100px;\" alt=\"Martina G. Vilas\"/><br /><sub><b>Martina G. Vilas</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=martinagvilas\" title=\"Tests\">⚠️</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Videos\">📹</a> <a href=\"https://book.the-turing-way.org\" title=\"Tutorials\">✅</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://gmbernardoharrington.netlify.app/\"><img src=\"https://avatars.githubusercontent.com/u/26403410?v=4?s=100\" width=\"100px;\" alt=\"Mateus Harrington\"/><br /><sub><b>Mateus Harrington</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AH-Mateus\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/mkuzak\"><img src=\"https://avatars2.githubusercontent.com/u/208443?v=4?s=100\" width=\"100px;\" alt=\"Mateusz Kuzak\"/><br /><sub><b>Mateusz Kuzak</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Amkuzak\" title=\"Bug reports\">🐛</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Amkuzak\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://ml-evs.science\"><img src=\"https://avatars2.githubusercontent.com/u/7916000?v=4?s=100\" width=\"100px;\" alt=\"Matthew Evans\"/><br /><sub><b>Matthew Evans</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aml-evs\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://mbjoseph.github.io\"><img src=\"https://avatars3.githubusercontent.com/u/2664564?v=4?s=100\" width=\"100px;\" alt=\"Max Joseph\"/><br /><sub><b>Max Joseph</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ambjoseph\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://mosorio.dev\"><img src=\"https://avatars.githubusercontent.com/u/2365990?v=4?s=100\" width=\"100px;\" alt=\"Maximiliano Osorio\"/><br /><sub><b>Maximiliano Osorio</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://mayaandersongonzalez.hcommons.org\"><img src=\"https://avatars.githubusercontent.com/u/56874297?v=4?s=100\" width=\"100px;\" alt=\"Maya Anderson-González\"/><br /><sub><b>Maya Anderson-González</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/msundukova\"><img src=\"https://avatars.githubusercontent.com/u/34685833?v=4?s=100\" width=\"100px;\" alt=\"Mayya Sundukova\"/><br /><sub><b>Mayya Sundukova</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/melibleq\"><img src=\"https://avatars.githubusercontent.com/u/16723182?v=4?s=100\" width=\"100px;\" alt=\"Melissa Black\"/><br /><sub><b>Melissa Black</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Amelibleq\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://melissawm.github.io\"><img src=\"https://avatars.githubusercontent.com/u/3949932?v=4?s=100\" width=\"100px;\" alt=\"Melissa Weber Mendonça\"/><br /><sub><b>Melissa Weber Mendonça</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.mrc-bsu.cam.ac.uk/people/in-alphabetical-order/a-to-g/michael-grayling/\"><img src=\"https://avatars2.githubusercontent.com/u/4548867?v=4?s=100\" width=\"100px;\" alt=\"Michael Grayling\"/><br /><sub><b>Michael Grayling</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=mjg211\" title=\"Documentation\">📖</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://mikey24-7.xyz\"><img src=\"https://avatars.githubusercontent.com/u/93191705?v=4?s=100\" width=\"100px;\" alt=\"Michael Umeokoli\"/><br /><sub><b>Michael Umeokoli</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Amikey247\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/m-rivera\"><img src=\"https://avatars1.githubusercontent.com/u/22956181?v=4?s=100\" width=\"100px;\" alt=\"Miguel Rivera\"/><br /><sub><b>Miguel Rivera</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Am-rivera\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://nolski.rocks\"><img src=\"https://avatars.githubusercontent.com/u/2600677?v=4?s=100\" width=\"100px;\" alt=\"Mike Nolan\"/><br /><sub><b>Mike Nolan</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://twitter.com/mishkanemes\"><img src=\"https://avatars.githubusercontent.com/u/39628884?v=4?s=100\" width=\"100px;\" alt=\"Mishka Nemes\"/><br /><sub><b>Mishka Nemes</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Amishkanemes\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/MoritzMaxeiner\"><img src=\"https://avatars.githubusercontent.com/u/497073?v=4?s=100\" width=\"100px;\" alt=\"Moritz Maxeiner\"/><br /><sub><b>Moritz Maxeiner</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AMoritzMaxeiner\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://radifar.github.io\"><img src=\"https://avatars.githubusercontent.com/u/11450417?v=4?s=100\" width=\"100px;\" alt=\"Muhammad Radifar\"/><br /><sub><b>Muhammad Radifar</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aradifar\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/dsmukilan\"><img src=\"https://avatars.githubusercontent.com/u/11191375?v=4?s=100\" width=\"100px;\" alt=\"Mukilan\"/><br /><sub><b>Mukilan</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.linkedin.com/in/aniltuncel/\"><img src=\"https://avatars2.githubusercontent.com/u/7026020?v=4?s=100\" width=\"100px;\" alt=\"Mustafa Anil Tuncel\"/><br /><sub><b>Mustafa Anil Tuncel</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aanilbey\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/nadiasoliman\"><img src=\"https://avatars0.githubusercontent.com/u/41086364?v=4?s=100\" width=\"100px;\" alt=\"Nadia Soliman\"/><br /><sub><b>Nadia Soliman</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=nadiasoliman\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Nagabharan1\"><img src=\"https://avatars.githubusercontent.com/u/72192695?v=4?s=100\" width=\"100px;\" alt=\"Nagabharan1\"/><br /><sub><b>Nagabharan1</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ANagabharan1\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://npscience.github.io\"><img src=\"https://avatars2.githubusercontent.com/u/9406530?v=4?s=100\" width=\"100px;\" alt=\"Naomi Penfold\"/><br /><sub><b>Naomi Penfold</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Anpscience\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://mednche.github.io\"><img src=\"https://avatars0.githubusercontent.com/u/24226111?v=4?s=100\" width=\"100px;\" alt=\"Natacha Chenevoy\"/><br /><sub><b>Natacha Chenevoy</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/NatalieThurlby\"><img src=\"https://avatars1.githubusercontent.com/u/17617308?v=4?s=100\" width=\"100px;\" alt=\"Natalie Thurlby\"/><br /><sub><b>Natalie Thurlby</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=NatalieThurlby\" title=\"Code\">💻</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=NatalieThurlby\" title=\"Tests\">⚠️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/nathanbegbie\"><img src=\"https://avatars0.githubusercontent.com/u/7100966?v=4?s=100\" width=\"100px;\" alt=\"Nathan Begbie\"/><br /><sub><b>Nathan Begbie</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Anathanbegbie\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/nehamoopen\"><img src=\"https://avatars3.githubusercontent.com/u/37183829?v=4?s=100\" width=\"100px;\" alt=\"Neha Moopen\"/><br /><sub><b>Neha Moopen</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Anehamoopen\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.software.ac.uk\"><img src=\"https://avatars1.githubusercontent.com/u/1507151?v=4?s=100\" width=\"100px;\" alt=\"Neil Chue Hong\"/><br /><sub><b>Neil Chue Hong</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/nbarlowATI\"><img src=\"https://avatars3.githubusercontent.com/u/33832774?v=4?s=100\" width=\"100px;\" alt=\"Nick Barlow\"/><br /><sub><b>Nick Barlow</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AnbarlowATI\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/NZR\"><img src=\"https://avatars3.githubusercontent.com/u/2925086?v=4?s=100\" width=\"100px;\" alt=\"Nico\"/><br /><sub><b>Nico</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://orcid.org/0000-0002-6595-0969\"><img src=\"https://avatars0.githubusercontent.com/u/43151303?v=4?s=100\" width=\"100px;\" alt=\"Nicolás Alessandroni\"/><br /><sub><b>Nicolás Alessandroni</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ninadicara\"><img src=\"https://avatars.githubusercontent.com/u/44364127?v=4?s=100\" width=\"100px;\" alt=\"Nina\"/><br /><sub><b>Nina</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aninadicara\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/nlharris\"><img src=\"https://avatars3.githubusercontent.com/u/348704?v=4?s=100\" width=\"100px;\" alt=\"Nomi Harris\"/><br /><sub><b>Nomi Harris</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Anlharris\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/NoorhanAbbas\"><img src=\"https://avatars.githubusercontent.com/u/84336434?v=4?s=100\" width=\"100px;\" alt=\"NoorhanAbbas\"/><br /><sub><b>NoorhanAbbas</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/NotActuallyACat\"><img src=\"https://avatars.githubusercontent.com/u/69468081?v=4?s=100\" width=\"100px;\" alt=\"NotActuallyACat\"/><br /><sub><b>NotActuallyACat</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/obisargoni\"><img src=\"https://avatars0.githubusercontent.com/u/33906525?v=4?s=100\" width=\"100px;\" alt=\"Obi Thompson Sargoni\"/><br /><sub><b>Obi Thompson Sargoni</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://datalets.ch\"><img src=\"https://avatars.githubusercontent.com/u/31819?v=4?s=100\" width=\"100px;\" alt=\"Oleg Lavrovsky\"/><br /><sub><b>Oleg Lavrovsky</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/OliJimbo\"><img src=\"https://avatars2.githubusercontent.com/u/16899600?v=4?s=100\" width=\"100px;\" alt=\"Oliver Clark\"/><br /><sub><b>Oliver Clark</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=OliJimbo\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/oforrest\"><img src=\"https://avatars2.githubusercontent.com/u/49275282?v=4?s=100\" width=\"100px;\" alt=\"Oliver Forrest\"/><br /><sub><b>Oliver Forrest</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=oforrest\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aoforrest\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/defaultobject\"><img src=\"https://avatars2.githubusercontent.com/u/1484941?v=4?s=100\" width=\"100px;\" alt=\"Oliver Hamelijnck\"/><br /><sub><b>Oliver Hamelijnck</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ots22\"><img src=\"https://avatars1.githubusercontent.com/u/5434836?v=4?s=100\" width=\"100px;\" alt=\"Oliver Strickson\"/><br /><sub><b>Oliver Strickson</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=ots22\" title=\"Documentation\">📖</a> <a href=\"https://book.the-turing-way.org\" title=\"Tutorials\">✅</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.oeg-upm.net/index.php/en/teachers/11-ocorcho/index.html\"><img src=\"https://avatars.githubusercontent.com/u/1067341?v=4?s=100\" width=\"100px;\" alt=\"Oscar Corcho\"/><br /><sub><b>Oscar Corcho</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aocorcho\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/OscartGiles\"><img src=\"https://avatars0.githubusercontent.com/u/12784013?v=4?s=100\" width=\"100px;\" alt=\"Oscar Giles\"/><br /><sub><b>Oscar Giles</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=OscartGiles\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://pabrod.github.io/\"><img src=\"https://avatars0.githubusercontent.com/u/7677614?v=4?s=100\" width=\"100px;\" alt=\"Pablo Rodríguez-Sánchez\"/><br /><sub><b>Pablo Rodríguez-Sánchez</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://patricia-loto.netlify.app/\"><img src=\"https://avatars.githubusercontent.com/u/39300655?v=4?s=100\" width=\"100px;\" alt=\"Patricia A. Loto\"/><br /><sub><b>Patricia A. Loto</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3APatriLoto\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/pherterich\"><img src=\"https://avatars0.githubusercontent.com/u/8457675?v=4?s=100\" width=\"100px;\" alt=\"Patricia Herterich\"/><br /><sub><b>Patricia Herterich</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=pherterich\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Apherterich\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://egpbos.nl\"><img src=\"https://avatars.githubusercontent.com/u/6146598?v=4?s=100\" width=\"100px;\" alt=\"Patrick Bos\"/><br /><sub><b>Patrick Bos</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aegpbos\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://xcorr.net\"><img src=\"https://avatars.githubusercontent.com/u/3516539?v=4?s=100\" width=\"100px;\" alt=\"Patrick Mineault\"/><br /><sub><b>Patrick Mineault</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Apatrickmineault\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/paulbaniqued\"><img src=\"https://avatars2.githubusercontent.com/u/47854500?v=4?s=100\" width=\"100px;\" alt=\"Paul Dominick Baniqued\"/><br /><sub><b>Paul Dominick Baniqued</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.linkedin.com/in/paulowoicho/\"><img src=\"https://avatars3.githubusercontent.com/u/28223751?v=4?s=100\" width=\"100px;\" alt=\"Paul Owoicho\"/><br /><sub><b>Paul Owoicho</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Apaulowoicho\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Apaulowoicho\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=paulowoicho\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.ncl.ac.uk/computing/people/profile/paulwatson.html#background\"><img src=\"https://avatars.githubusercontent.com/u/7299312?v=4?s=100\" width=\"100px;\" alt=\"Paul Watson\"/><br /><sub><b>Paul Watson</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/orchid00\"><img src=\"https://avatars3.githubusercontent.com/u/9795785?v=4?s=100\" width=\"100px;\" alt=\"Paula Andrea Martinez\"/><br /><sub><b>Paula Andrea Martinez</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aorchid00\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://ppintosilva.com\"><img src=\"https://avatars1.githubusercontent.com/u/11331882?v=4?s=100\" width=\"100px;\" alt=\"Pedro Pinto da Silva\"/><br /><sub><b>Pedro Pinto da Silva</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/PeterC-ATI\"><img src=\"https://avatars1.githubusercontent.com/u/55786296?v=4?s=100\" width=\"100px;\" alt=\"PeterC-ATI\"/><br /><sub><b>PeterC-ATI</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://philipdarke.com\"><img src=\"https://avatars2.githubusercontent.com/u/43066442?v=4?s=100\" width=\"100px;\" alt=\"Philip Darke\"/><br /><sub><b>Philip Darke</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://greptilian.com\"><img src=\"https://avatars.githubusercontent.com/u/21006?v=4?s=100\" width=\"100px;\" alt=\"Philip Durbin\"/><br /><sub><b>Philip Durbin</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/pc494\"><img src=\"https://avatars.githubusercontent.com/u/32455330?v=4?s=100\" width=\"100px;\" alt=\"Phillip Crout\"/><br /><sub><b>Phillip Crout</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Apc494\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Phome95\"><img src=\"https://avatars.githubusercontent.com/u/100789966?v=4?s=100\" width=\"100px;\" alt=\"Phome95\"/><br /><sub><b>Phome95</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://p.ier.re\"><img src=\"https://avatars1.githubusercontent.com/u/1866496?v=4?s=100\" width=\"100px;\" alt=\"Pierre Grimaud\"/><br /><sub><b>Pierre Grimaud</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Apgrimaud\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/pgadige\"><img src=\"https://avatars2.githubusercontent.com/u/8632025?v=4?s=100\" width=\"100px;\" alt=\"Pooja Gadige\"/><br /><sub><b>Pooja Gadige</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=pgadige\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Apgadige\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/peranti\"><img src=\"https://avatars.githubusercontent.com/u/9472741?v=4?s=100\" width=\"100px;\" alt=\"Pradeep Eranti\"/><br /><sub><b>Pradeep Eranti</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aperanti\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://pranavmahajan25.github.io/\"><img src=\"https://avatars0.githubusercontent.com/u/33349653?v=4?s=100\" width=\"100px;\" alt=\"Pranav Mahajan\"/><br /><sub><b>Pranav Mahajan</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Preshh0\"><img src=\"https://avatars.githubusercontent.com/u/42142405?v=4?s=100\" width=\"100px;\" alt=\"Precious Onyewuchi\"/><br /><sub><b>Precious Onyewuchi</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3APreshh0\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3APreshh0\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/priya-gitTest\"><img src=\"https://avatars.githubusercontent.com/u/21082240?v=4?s=100\" width=\"100px;\" alt=\"Priyanka O\"/><br /><sub><b>Priyanka O</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://git.io/priyanshu\"><img src=\"https://avatars.githubusercontent.com/u/64051212?v=4?s=100\" width=\"100px;\" alt=\"Priyanshu Agarwal\"/><br /><sub><b>Priyanshu Agarwal</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Apriyanshuone6\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/przemekdolata96\"><img src=\"https://avatars3.githubusercontent.com/u/26312462?v=4?s=100\" width=\"100px;\" alt=\"Przemek Dolata\"/><br /><sub><b>Przemek Dolata</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/RabeaMue\"><img src=\"https://avatars.githubusercontent.com/u/42644523?v=4?s=100\" width=\"100px;\" alt=\"Rabea Müller\"/><br /><sub><b>Rabea Müller</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ARabeaMue\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://rainsworth.github.io\"><img src=\"https://avatars3.githubusercontent.com/u/10600877?v=4?s=100\" width=\"100px;\" alt=\"Rachael Ainsworth\"/><br /><sub><b>Rachael Ainsworth</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=rainsworth\" title=\"Documentation\">📖</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Arainsworth\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://linkedin.com/in/rstickland-phd\"><img src=\"https://avatars.githubusercontent.com/u/50215726?v=4?s=100\" width=\"100px;\" alt=\"Rachael Stickland\"/><br /><sub><b>Rachael Stickland</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ARayStick\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/radka-j\"><img src=\"https://avatars2.githubusercontent.com/u/29207091?v=4?s=100\" width=\"100px;\" alt=\"Radka Jersakova\"/><br /><sub><b>Radka Jersakova</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aradka-j\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://bast.fr\"><img src=\"https://avatars.githubusercontent.com/u/5120679?v=4?s=100\" width=\"100px;\" alt=\"Radovan Bast\"/><br /><sub><b>Radovan Bast</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Abast\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.linkedin.com/in/rafaelaqueirozg/\"><img src=\"https://avatars.githubusercontent.com/u/42815135?v=4?s=100\" width=\"100px;\" alt=\"Rafaela Queiroz\"/><br /><sub><b>Rafaela Queiroz</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/bantya\"><img src=\"https://avatars.githubusercontent.com/u/16685565?v=4?s=100\" width=\"100px;\" alt=\"Rahul Thakare\"/><br /><sub><b>Rahul Thakare</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://rgaiacs.com\"><img src=\"https://avatars0.githubusercontent.com/u/1506457?v=4?s=100\" width=\"100px;\" alt=\"Raniere Silva\"/><br /><sub><b>Raniere Silva</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Argaiacs\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/rapw3k\"><img src=\"https://avatars.githubusercontent.com/u/557493?v=4?s=100\" width=\"100px;\" alt=\"Raul Palma\"/><br /><sub><b>Raul Palma</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/camachoreina\"><img src=\"https://avatars0.githubusercontent.com/u/12454015?v=4?s=100\" width=\"100px;\" alt=\"Reina Camacho Toro\"/><br /><sub><b>Reina Camacho Toro</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/radersma\"><img src=\"https://avatars.githubusercontent.com/u/28388211?v=4?s=100\" width=\"100px;\" alt=\"Reinder Radersma\"/><br /><sub><b>Reinder Radersma</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aradersma\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://remi-gau.github.io/\"><img src=\"https://avatars3.githubusercontent.com/u/6961185?v=4?s=100\" width=\"100px;\" alt=\"Remi Gau\"/><br /><sub><b>Remi Gau</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ARemi-Gau\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/bakhshir\"><img src=\"https://avatars.githubusercontent.com/u/16703268?v=4?s=100\" width=\"100px;\" alt=\"Rena Bakhshi\"/><br /><sub><b>Rena Bakhshi</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Abakhshir\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.c-economics.com\"><img src=\"https://avatars.githubusercontent.com/u/10668732?v=4?s=100\" width=\"100px;\" alt=\"Rendell de Kort\"/><br /><sub><b>Rendell de Kort</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://huixinng.com\"><img src=\"https://avatars.githubusercontent.com/u/16829271?v=4?s=100\" width=\"100px;\" alt=\"Renee (Hui Xin) Ng\"/><br /><sub><b>Renee (Hui Xin) Ng</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Anghuixin\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://reshamas.github.io\"><img src=\"https://avatars0.githubusercontent.com/u/2507232?v=4?s=100\" width=\"100px;\" alt=\"Reshama Shaikh\"/><br /><sub><b>Reshama Shaikh</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Areshamas\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://rhian.rbind.io\"><img src=\"https://avatars.githubusercontent.com/u/7017740?v=4?s=100\" width=\"100px;\" alt=\"Rhian Davies\"/><br /><sub><b>Rhian Davies</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AStatsRhian\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://richarddushime.netlify.app/\"><img src=\"https://avatars.githubusercontent.com/u/45734838?v=4?s=100\" width=\"100px;\" alt=\"Richard Dushime\"/><br /><sub><b>Richard Dushime</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/rjjgilham\"><img src=\"https://avatars0.githubusercontent.com/u/18323072?v=4?s=100\" width=\"100px;\" alt=\"Richard Gilham\"/><br /><sub><b>Richard Gilham</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=rjjgilham\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://richardjacton.github.io/\"><img src=\"https://avatars.githubusercontent.com/u/6893043?v=4?s=100\" width=\"100px;\" alt=\"Richard James Acton\"/><br /><sub><b>Richard James Acton</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ARichardJActon\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://rplant.netlify.app\"><img src=\"https://avatars.githubusercontent.com/u/11060480?v=4?s=100\" width=\"100px;\" alt=\"Richard Plant\"/><br /><sub><b>Richard Plant</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://realrichi3.github.io\"><img src=\"https://avatars.githubusercontent.com/u/76791916?v=4?s=100\" width=\"100px;\" alt=\"Richie\"/><br /><sub><b>Richie</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/risaueno\"><img src=\"https://avatars0.githubusercontent.com/u/22602921?v=4?s=100\" width=\"100px;\" alt=\"Risa Ueno\"/><br /><sub><b>Risa Ueno</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/rlanzafame\"><img src=\"https://avatars.githubusercontent.com/u/22560680?v=4?s=100\" width=\"100px;\" alt=\"Robert Lanzafame\"/><br /><sub><b>Robert Lanzafame</b></sub></a><br /><a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/RobPrecious\"><img src=\"https://avatars.githubusercontent.com/u/9133187?v=4?s=100\" width=\"100px;\" alt=\"Robert Precious\"/><br /><sub><b>Robert Precious</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/longr\"><img src=\"https://avatars0.githubusercontent.com/u/3597743?v=4?s=100\" width=\"100px;\" alt=\"Robin Long\"/><br /><sub><b>Robin Long</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=longr\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://rohitmidha23.github.io\"><img src=\"https://avatars1.githubusercontent.com/u/38888530?v=4?s=100\" width=\"100px;\" alt=\"Rohit Midha\"/><br /><sub><b>Rohit Midha</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=RohitMidha23\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/romeroclaudino\"><img src=\"https://avatars1.githubusercontent.com/u/6520331?v=4?s=100\" width=\"100px;\" alt=\"Romero Silva\"/><br /><sub><b>Romero Silva</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/rosesisk\"><img src=\"https://avatars2.githubusercontent.com/u/52324551?v=4?s=100\" width=\"100px;\" alt=\"Rose Sisk\"/><br /><sub><b>Rose Sisk</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/rosiehigman\"><img src=\"https://avatars2.githubusercontent.com/u/15738325?v=4?s=100\" width=\"100px;\" alt=\"Rosie Higman\"/><br /><sub><b>Rosie Higman</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Arosiehigman\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/RostiReadioff\"><img src=\"https://avatars1.githubusercontent.com/u/45424690?v=4?s=100\" width=\"100px;\" alt=\"Rosti Readioff\"/><br /><sub><b>Rosti Readioff</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=RostiReadioff\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://row1.ca\"><img src=\"https://avatars.githubusercontent.com/u/913249?v=4?s=100\" width=\"100px;\" alt=\"Rowan Cockett\"/><br /><sub><b>Rowan Cockett</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Arowanc1\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://jupyterbook.org\" title=\"Packaging/porting to new platform\">📦</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.maths.tcd.ie/~rcampion/\"><img src=\"https://avatars.githubusercontent.com/u/79585079?v=4?s=100\" width=\"100px;\" alt=\"Ruaidhrí Campion\"/><br /><sub><b>Ruaidhrí Campion</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Acampioru\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/SYU-NING\"><img src=\"https://avatars.githubusercontent.com/u/71600183?v=4?s=100\" width=\"100px;\" alt=\"SYU-NING\"/><br /><sub><b>SYU-NING</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/SachaHq\"><img src=\"https://avatars.githubusercontent.com/u/58265506?v=4?s=100\" width=\"100px;\" alt=\"Sacha Hodencq\"/><br /><sub><b>Sacha Hodencq</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://sadielbartholomew.github.io\"><img src=\"https://avatars.githubusercontent.com/u/30274190?v=4?s=100\" width=\"100px;\" alt=\"Sadie L. Bartholomew\"/><br /><sub><b>Sadie L. Bartholomew</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Asadielbartholomew\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/nikhil26vaddadi\"><img src=\"https://avatars.githubusercontent.com/u/29629242?v=4?s=100\" width=\"100px;\" alt=\"Sai Nikhil Vaddadi\"/><br /><sub><b>Sai Nikhil Vaddadi</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Anikhil26vaddadi\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/SamGuay\"><img src=\"https://avatars1.githubusercontent.com/u/30598330?v=4?s=100\" width=\"100px;\" alt=\"Samuel Guay\"/><br /><sub><b>Samuel Guay</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://snastase.github.io/\"><img src=\"https://avatars2.githubusercontent.com/u/3496566?v=4?s=100\" width=\"100px;\" alt=\"Samuel Nastase\"/><br /><sub><b>Samuel Nastase</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asnastase\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.svrijn.nl\"><img src=\"https://avatars.githubusercontent.com/u/8833517?v=4?s=100\" width=\"100px;\" alt=\"Sander\"/><br /><sub><b>Sander</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asjvrijn\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://sksahu.net\"><img src=\"https://avatars1.githubusercontent.com/u/23085664?v=4?s=100\" width=\"100px;\" alt=\"Sangram K Sahu\"/><br /><sub><b>Sangram K Sahu</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/sarasrking\"><img src=\"https://avatars.githubusercontent.com/u/48195568?v=4?s=100\" width=\"100px;\" alt=\"Sara King\"/><br /><sub><b>Sara King</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asarasrking\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/SaraVilla\"><img src=\"https://avatars.githubusercontent.com/u/43204602?v=4?s=100\" width=\"100px;\" alt=\"Sara Villa\"/><br /><sub><b>Sara Villa</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ASaraVilla\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/sgibson91\"><img src=\"https://avatars2.githubusercontent.com/u/44771837?v=4?s=100\" width=\"100px;\" alt=\"Sarah Gibson\"/><br /><sub><b>Sarah Gibson</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=sgibson91\" title=\"Code\">💻</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=sgibson91\" title=\"Documentation\">📖</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Tools\">🔧</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Asgibson91\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Tutorials\">✅</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Videos\">📹</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://dmponline.dcc.ac.uk\"><img src=\"https://avatars.githubusercontent.com/u/6169940?v=4?s=100\" width=\"100px;\" alt=\"Sarah Jones\"/><br /><sub><b>Sarah Jones</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/SarahMiller137\"><img src=\"https://avatars.githubusercontent.com/u/9994261?v=4?s=100\" width=\"100px;\" alt=\"Sarah Miller\"/><br /><sub><b>Sarah Miller</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Biostew\"><img src=\"https://avatars3.githubusercontent.com/u/17767752?v=4?s=100\" width=\"100px;\" alt=\"Sarah Stewart\"/><br /><sub><b>Sarah Stewart</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=BioStew\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/rootsandberries\"><img src=\"https://avatars.githubusercontent.com/u/11933741?v=4?s=100\" width=\"100px;\" alt=\"Sarah Young\"/><br /><sub><b>Sarah Young</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Arootsandberries\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://nl.linkedin.com/in/fakhereh-sarah-alidoost-11a24a89\"><img src=\"https://avatars3.githubusercontent.com/u/55081872?v=4?s=100\" width=\"100px;\" alt=\"SarahAlidoost\"/><br /><sub><b>SarahAlidoost</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://saranjeetkaur.github.io/About-Me/\"><img src=\"https://avatars.githubusercontent.com/u/28556616?v=4?s=100\" width=\"100px;\" alt=\"Saranjeet Kaur\"/><br /><sub><b>Saranjeet Kaur</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ASaranjeetKaur\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/hughesthe1st\"><img src=\"https://avatars.githubusercontent.com/u/6203251?v=4?s=100\" width=\"100px;\" alt=\"Sean Hughes\"/><br /><sub><b>Sean Hughes</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ahughesthe1st\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://spier.hu\"><img src=\"https://avatars.githubusercontent.com/u/163029?v=4?s=100\" width=\"100px;\" alt=\"Sebastian Spier\"/><br /><sub><b>Sebastian Spier</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aspier\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.turing.ac.uk/people/doctoral-students/sedar-olmez\"><img src=\"https://avatars3.githubusercontent.com/u/10035934?v=4?s=100\" width=\"100px;\" alt=\"Sedar Olmez\"/><br /><sub><b>Sedar Olmez</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Sergih28\"><img src=\"https://avatars.githubusercontent.com/u/16263046?v=4?s=100\" width=\"100px;\" alt=\"Sergi\"/><br /><sub><b>Sergi</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ASergih28\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://shanidsajjatuz.is-a.dev\"><img src=\"https://avatars.githubusercontent.com/u/155494150?v=4?s=100\" width=\"100px;\" alt=\"Shanid Sajjatuz Islam\"/><br /><sub><b>Shanid Sajjatuz Islam</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://growupboron.github.io\"><img src=\"https://avatars3.githubusercontent.com/u/41593068?v=4?s=100\" width=\"100px;\" alt=\"Shankho Boron Ghosh\"/><br /><sub><b>Shankho Boron Ghosh</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Agrowupboron\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/s-shivanand\"><img src=\"https://avatars.githubusercontent.com/u/107891112?v=4?s=100\" width=\"100px;\" alt=\"Sharana Shivanand\"/><br /><sub><b>Sharana Shivanand</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3As-shivanand\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/shashank-k-y\"><img src=\"https://avatars.githubusercontent.com/u/74789167?v=4?s=100\" width=\"100px;\" alt=\"Shashank\"/><br /><sub><b>Shashank</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ashashank-k-y\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/srtee\"><img src=\"https://avatars.githubusercontent.com/u/60586092?v=4?s=100\" width=\"100px;\" alt=\"Shern Tee\"/><br /><sub><b>Shern Tee</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/shreyadimri\"><img src=\"https://avatars.githubusercontent.com/u/58469708?v=4?s=100\" width=\"100px;\" alt=\"Shreya Dimri\"/><br /><sub><b>Shreya Dimri</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ashreyadimri\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/sianbladon\"><img src=\"https://avatars0.githubusercontent.com/u/60200458?v=4?s=100\" width=\"100px;\" alt=\"Sian Bladon\"/><br /><sub><b>Sian Bladon</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/SianC\"><img src=\"https://avatars.githubusercontent.com/u/52662865?v=4?s=100\" width=\"100px;\" alt=\"SianC\"/><br /><sub><b>SianC</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ASianC\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://sibasmarak.blogspot.com \"><img src=\"https://avatars0.githubusercontent.com/u/49467053?v=4?s=100\" width=\"100px;\" alt=\"Siba Smarak Panigrahi\"/><br /><sub><b>Siba Smarak Panigrahi</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asibasmarak\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/BeastyBlacksmith\"><img src=\"https://avatars.githubusercontent.com/u/18145188?v=4?s=100\" width=\"100px;\" alt=\"Simon Christ\"/><br /><sub><b>Simon Christ</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ABeastyBlacksmith\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://simonduerr.eu\"><img src=\"https://avatars.githubusercontent.com/u/16979577?v=4?s=100\" width=\"100px;\" alt=\"Simon Duerr\"/><br /><sub><b>Simon Duerr</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aduerrsimon\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aduerrsimon\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://theabstract.github.io/\"><img src=\"https://avatars.githubusercontent.com/u/56311555?v=4?s=100\" width=\"100px;\" alt=\"Siphiwe\"/><br /><sub><b>Siphiwe</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ATheAbstract\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ATheAbstract\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.solon-karapanagiotis.com/\"><img src=\"https://avatars2.githubusercontent.com/u/7536922?v=4?s=100\" width=\"100px;\" alt=\"Solon\"/><br /><sub><b>Solon</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/BrainonSilicon\"><img src=\"https://avatars1.githubusercontent.com/u/42813259?v=4?s=100\" width=\"100px;\" alt=\"Sophia Batchelor\"/><br /><sub><b>Sophia Batchelor</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ABrainonSilicon\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=BrainonSilicon\" title=\"Tests\">⚠️</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ABrainonSilicon\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/aranas\"><img src=\"https://avatars.githubusercontent.com/u/6906140?v=4?s=100\" width=\"100px;\" alt=\"Sophie Arana\"/><br /><sub><b>Sophie Arana</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aaranas\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aaranas\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/sophiejean\"><img src=\"https://avatars.githubusercontent.com/u/100791169?v=4?s=100\" width=\"100px;\" alt=\"Sophie J Mann\"/><br /><sub><b>Sophie J Mann</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/RVFlowers\"><img src=\"https://avatars.githubusercontent.com/u/44363442?v=4?s=100\" width=\"100px;\" alt=\"Sophie T\"/><br /><sub><b>Sophie T</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3ARVFlowers\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/sparkler0323\"><img src=\"https://avatars2.githubusercontent.com/u/18514015?v=4?s=100\" width=\"100px;\" alt=\"Sparkler\"/><br /><sub><b>Sparkler</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://srishti-nema.github.io/\"><img src=\"https://avatars1.githubusercontent.com/u/42498900?v=4?s=100\" width=\"100px;\" alt=\"Srishti Nema\"/><br /><sub><b>Srishti Nema</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asrishti-nema\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://stefanjanssen.nl\"><img src=\"https://avatars1.githubusercontent.com/u/6250246?v=4?s=100\" width=\"100px;\" alt=\"Stefan Janssen\"/><br /><sub><b>Stefan Janssen</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://sradicwebster.me/\"><img src=\"https://avatars.githubusercontent.com/u/56719930?v=4?s=100\" width=\"100px;\" alt=\"Stefan Radic Webster\"/><br /><sub><b>Stefan Radic Webster</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asradicwebster\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/sverhoeven\"><img src=\"https://avatars1.githubusercontent.com/u/1713488?v=4?s=100\" width=\"100px;\" alt=\"Stefan Verhoeven\"/><br /><sub><b>Stefan Verhoeven</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/stweil\"><img src=\"https://avatars.githubusercontent.com/u/6734573?v=4?s=100\" width=\"100px;\" alt=\"Stefan Weil\"/><br /><sub><b>Stefan Weil</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Astweil\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/StefanW0\"><img src=\"https://avatars.githubusercontent.com/u/183834624?v=4?s=100\" width=\"100px;\" alt=\"Stefan Wouters\"/><br /><sub><b>Stefan Wouters</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3AStefanW0\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://mentat.za.net\"><img src=\"https://avatars.githubusercontent.com/u/45071?v=4?s=100\" width=\"100px;\" alt=\"Stefan van der Walt\"/><br /><sub><b>Stefan van der Walt</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Astefanv\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Astefanv\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://sdruskat.net\"><img src=\"https://avatars0.githubusercontent.com/u/3007126?v=4?s=100\" width=\"100px;\" alt=\"Stephan Druskat\"/><br /><sub><b>Stephan Druskat</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=sdruskat\" title=\"Documentation\">📖</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://damtp.cam.ac.uk/user/eglen\"><img src=\"https://avatars1.githubusercontent.com/u/1095067?v=4?s=100\" width=\"100px;\" alt=\"Stephen Eglen\"/><br /><sub><b>Stephen Eglen</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Asje30\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/HyunKN\"><img src=\"https://avatars.githubusercontent.com/u/152015418?v=4?s=100\" width=\"100px;\" alt=\"Sugu\"/><br /><sub><b>Sugu</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Sylfrena\"><img src=\"https://avatars2.githubusercontent.com/u/35404119?v=4?s=100\" width=\"100px;\" alt=\"Sumera Priyadarsini\"/><br /><sub><b>Sumera Priyadarsini</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ASylfrena\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://susana465.github.io/\"><img src=\"https://avatars.githubusercontent.com/u/73224467?v=4?s=100\" width=\"100px;\" alt=\"Susana Roman Garcia\"/><br /><sub><b>Susana Roman Garcia</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://sansonegroup.eng.ox.ac.uk/\"><img src=\"https://avatars3.githubusercontent.com/u/525719?v=4?s=100\" width=\"100px;\" alt=\"Susanna-Assunta Sansone\"/><br /><sub><b>Susanna-Assunta Sansone</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=SusannaSansone\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/svenvanderburg\"><img src=\"https://avatars.githubusercontent.com/u/9945255?v=4?s=100\" width=\"100px;\" alt=\"Sven van der Burg\"/><br /><sub><b>Sven van der Burg</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/SydneyAmbrose\"><img src=\"https://avatars.githubusercontent.com/u/144704015?v=4?s=100\" width=\"100px;\" alt=\"SydneyAmbrose\"/><br /><sub><b>SydneyAmbrose</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.bitsandchips.me\"><img src=\"https://avatars3.githubusercontent.com/u/23552331?v=4?s=100\" width=\"100px;\" alt=\"Tania Allard\"/><br /><sub><b>Tania Allard</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Atrallard\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.tudelft.nl/open-science\"><img src=\"https://avatars.githubusercontent.com/u/107634879?v=4?s=100\" width=\"100px;\" alt=\"Tanya Yankelevich\"/><br /><sub><b>Tanya Yankelevich</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.tarekallamjr.com\"><img src=\"https://avatars1.githubusercontent.com/u/8843728?v=4?s=100\" width=\"100px;\" alt=\"Tarek Allam\"/><br /><sub><b>Tarek Allam</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=tallamjr\" title=\"Documentation\">📖</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/davehedgehog\"><img src=\"https://avatars0.githubusercontent.com/u/57715289?v=4?s=100\" width=\"100px;\" alt=\"Tess Gough\"/><br /><sub><b>Tess Gough</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.linkedin.com/pub/thomas-sandmann/21/61b/410/\"><img src=\"https://avatars0.githubusercontent.com/u/10490984?v=4?s=100\" width=\"100px;\" alt=\"Thomas Sandmann\"/><br /><sub><b>Thomas Sandmann</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ThyavdBerg\"><img src=\"https://avatars.githubusercontent.com/u/77287134?v=4?s=100\" width=\"100px;\" alt=\"Thya van den Berg\"/><br /><sub><b>Thya van den Berg</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/lubianat\"><img src=\"https://avatars.githubusercontent.com/u/7917951?v=4?s=100\" width=\"100px;\" alt=\"Tiago Lubiana\"/><br /><sub><b>Tiago Lubiana</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/TiernanOSullivan\"><img src=\"https://avatars.githubusercontent.com/u/172599503?v=4?s=100\" width=\"100px;\" alt=\"Tiernan O'Sullivan\"/><br /><sub><b>Tiernan O'Sullivan</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ATiernanOSullivan\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/betatim\"><img src=\"https://avatars1.githubusercontent.com/u/1448859?v=4?s=100\" width=\"100px;\" alt=\"Tim Head\"/><br /><sub><b>Tim Head</b></sub></a><br /><a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/timyers\"><img src=\"https://avatars.githubusercontent.com/u/48717893?v=4?s=100\" width=\"100px;\" alt=\"Tim Myers\"/><br /><sub><b>Tim Myers</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Atimyers\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/teapowell\"><img src=\"https://avatars1.githubusercontent.com/u/35264355?v=4?s=100\" width=\"100px;\" alt=\"Tim Powell\"/><br /><sub><b>Tim Powell</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/tonyyzy\"><img src=\"https://avatars3.githubusercontent.com/u/38984697?v=4?s=100\" width=\"100px;\" alt=\"Tony Yang\"/><br /><sub><b>Tony Yang</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=tonyyzy\" title=\"Documentation\">📖</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Trish-hub\"><img src=\"https://avatars.githubusercontent.com/u/78088054?v=4?s=100\" width=\"100px;\" alt=\"Trish\"/><br /><sub><b>Trish</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/TueloNtlotlang\"><img src=\"https://avatars.githubusercontent.com/u/72657722?v=4?s=100\" width=\"100px;\" alt=\"TueloNtlotlang\"/><br /><sub><b>TueloNtlotlang</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ATueloNtlotlang\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/CapTen101\"><img src=\"https://avatars0.githubusercontent.com/u/45699327?v=4?s=100\" width=\"100px;\" alt=\"Tushar Rohilla\"/><br /><sub><b>Tushar Rohilla</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3ACapTen101\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/TylerGHawthorne\"><img src=\"https://avatars.githubusercontent.com/u/218156932?v=4?s=100\" width=\"100px;\" alt=\"TylerGHawthorne\"/><br /><sub><b>TylerGHawthorne</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://vamsiindugu.vercel.app/\"><img src=\"https://avatars.githubusercontent.com/u/150576424?v=4?s=100\" width=\"100px;\" alt=\"Vamsi Indugu\"/><br /><sub><b>Vamsi Indugu</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org\" title=\"Design\">🎨</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://gitlab.gwdg.de/users/hanna.varachkina/contributed\"><img src=\"https://avatars.githubusercontent.com/u/22443239?v=4?s=100\" width=\"100px;\" alt=\"Varachkina\"/><br /><sub><b>Varachkina</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AVarachkina\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/VatsalNagelia\"><img src=\"https://avatars.githubusercontent.com/u/52467754?v=4?s=100\" width=\"100px;\" alt=\"VatsalNagelia\"/><br /><sub><b>VatsalNagelia</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.veronikach.com\"><img src=\"https://avatars2.githubusercontent.com/u/10584818?v=4?s=100\" width=\"100px;\" alt=\"Veronika Cheplygina\"/><br /><sub><b>Veronika Cheplygina</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.linkedin.com/in/victoria-smith-754602104/\"><img src=\"https://avatars.githubusercontent.com/u/72864814?v=4?s=100\" width=\"100px;\" alt=\"Vicky Smith\"/><br /><sub><b>Vicky Smith</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/blue-moon22\"><img src=\"https://avatars1.githubusercontent.com/u/15203325?v=4?s=100\" width=\"100px;\" alt=\"Victoria\"/><br /><sub><b>Victoria</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/vdda\"><img src=\"https://avatars1.githubusercontent.com/u/642451?v=4?s=100\" width=\"100px;\" alt=\"Victoria Dominguez del Angel\"/><br /><sub><b>Victoria Dominguez del Angel</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Avdda\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/WinnyNekesa\"><img src=\"https://avatars.githubusercontent.com/u/110591866?v=4?s=100\" width=\"100px;\" alt=\"WNekesa\"/><br /><sub><b>WNekesa</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://warrickball.github.io\"><img src=\"https://avatars.githubusercontent.com/u/20858744?v=4?s=100\" width=\"100px;\" alt=\"Warrick Ball\"/><br /><sub><b>Warrick Ball</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://wiebketoussaint.com\"><img src=\"https://avatars3.githubusercontent.com/u/11086407?v=4?s=100\" width=\"100px;\" alt=\"Wiebke Toussaint\"/><br /><sub><b>Wiebke Toussaint</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Awiebket\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/wjchulme\"><img src=\"https://avatars1.githubusercontent.com/u/25637345?v=4?s=100\" width=\"100px;\" alt=\"Will Hulme\"/><br /><sub><b>Will Hulme</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=wjchulme\" title=\"Documentation\">📖</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/wna-se\"><img src=\"https://avatars3.githubusercontent.com/u/1221165?v=4?s=100\" width=\"100px;\" alt=\"Wolmar Nyberg Åkerström\"/><br /><sub><b>Wolmar Nyberg Åkerström</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Awna-se\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/xchen101\"><img src=\"https://avatars.githubusercontent.com/u/3393596?v=4?s=100\" width=\"100px;\" alt=\"Xiaoli Chen\"/><br /><sub><b>Xiaoli Chen</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/xc308\"><img src=\"https://avatars1.githubusercontent.com/u/55785985?v=4?s=100\" width=\"100px;\" alt=\"Xiaoqing Chen\"/><br /><sub><b>Xiaoqing Chen</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://yabellini.netlify.com/\"><img src=\"https://avatars.githubusercontent.com/u/2473676?v=4?s=100\" width=\"100px;\" alt=\"Yanina Bellini Saibene\"/><br /><sub><b>Yanina Bellini Saibene</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ayabellini\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.twinreality.blog\"><img src=\"https://avatars0.githubusercontent.com/u/44135465?v=4?s=100\" width=\"100px;\" alt=\"Yash Varshney\"/><br /><sub><b>Yash Varshney</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AYash-Varshney\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/minnieho1115\"><img src=\"https://avatars1.githubusercontent.com/u/35134464?v=4?s=100\" width=\"100px;\" alt=\"Yini\"/><br /><sub><b>Yini</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://yo-yehudi.com\"><img src=\"https://avatars0.githubusercontent.com/u/9271438?v=4?s=100\" width=\"100px;\" alt=\"Yo Yehudi\"/><br /><sub><b>Yo Yehudi</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=yochannah\" title=\"Documentation\">📖</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ayochannah\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ufangYang\"><img src=\"https://avatars3.githubusercontent.com/u/33165978?v=4?s=100\" width=\"100px;\" alt=\"Yu-Fang Yang\"/><br /><sub><b>Yu-Fang Yang</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3AufangYang\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/Zeena-Shawa\"><img src=\"https://avatars.githubusercontent.com/u/72321461?v=4?s=100\" width=\"100px;\" alt=\"Zeena-Shawa\"/><br /><sub><b>Zeena-Shawa</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ZoeIngr\"><img src=\"https://avatars.githubusercontent.com/u/80701413?v=4?s=100\" width=\"100px;\" alt=\"ZoeIngr\"/><br /><sub><b>ZoeIngr</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/abrown41\"><img src=\"https://avatars.githubusercontent.com/u/10060170?v=4?s=100\" width=\"100px;\" alt=\"abrown41\"/><br /><sub><b>abrown41</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/acork25\"><img src=\"https://avatars0.githubusercontent.com/u/55786005?v=4?s=100\" width=\"100px;\" alt=\"acork25\"/><br /><sub><b>acork25</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/acrall\"><img src=\"https://avatars.githubusercontent.com/u/17599316?v=4?s=100\" width=\"100px;\" alt=\"acrall\"/><br /><sub><b>acrall</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aacrall\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ahkrook\"><img src=\"https://avatars.githubusercontent.com/u/167080825?v=4?s=100\" width=\"100px;\" alt=\"ahkrook\"/><br /><sub><b>ahkrook</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/akira-endo\"><img src=\"https://avatars3.githubusercontent.com/u/26547770?v=4?s=100\" width=\"100px;\" alt=\"akira-endo\"/><br /><sub><b>akira-endo</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/alessandroragano\"><img src=\"https://avatars3.githubusercontent.com/u/44505487?v=4?s=100\" width=\"100px;\" alt=\"alessandroragano\"/><br /><sub><b>alessandroragano</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/alihumayun\"><img src=\"https://avatars.githubusercontent.com/u/78482064?v=4?s=100\" width=\"100px;\" alt=\"alihumayun\"/><br /><sub><b>alihumayun</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aalihumayun\" title=\"Bug reports\">🐛</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aalihumayun\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/andreabecsek\"><img src=\"https://avatars.githubusercontent.com/u/50207436?v=4?s=100\" width=\"100px;\" alt=\"andreabecsek\"/><br /><sub><b>andreabecsek</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/andrealuppi\"><img src=\"https://avatars.githubusercontent.com/u/50251039?v=4?s=100\" width=\"100px;\" alt=\"andrealuppi\"/><br /><sub><b>andrealuppi</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/annarae13\"><img src=\"https://avatars.githubusercontent.com/u/53874820?v=4?s=100\" width=\"100px;\" alt=\"annarae13\"/><br /><sub><b>annarae13</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.lse.ac.uk/media-and-communications/people/research-staff/asha-titus\"><img src=\"https://avatars3.githubusercontent.com/u/32542663?v=4?s=100\" width=\"100px;\" alt=\"ashatitus\"/><br /><sub><b>ashatitus</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aashatitus\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/asoaresca\"><img src=\"https://avatars.githubusercontent.com/u/143703780?v=4?s=100\" width=\"100px;\" alt=\"asoaresca\"/><br /><sub><b>asoaresca</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://www.drrebeccawilson.co.uk\"><img src=\"https://avatars0.githubusercontent.com/u/5114032?v=4?s=100\" width=\"100px;\" alt=\"beccawilson\"/><br /><sub><b>beccawilson</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#accessibility-working-group\" title=\"Accessibility\">♿️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://benkrikler.github.io\"><img src=\"https://avatars.githubusercontent.com/u/4083697?v=4?s=100\" width=\"100px;\" alt=\"benkrikler\"/><br /><sub><b>benkrikler</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/brynnelliott\"><img src=\"https://avatars.githubusercontent.com/u/104380698?v=4?s=100\" width=\"100px;\" alt=\"brynnelliott\"/><br /><sub><b>brynnelliott</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Abrynnelliott\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/caroldutra3\"><img src=\"https://avatars.githubusercontent.com/u/86290575?v=4?s=100\" width=\"100px;\" alt=\"caroldutra3\"/><br /><sub><b>caroldutra3</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Acaroldutra3\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ceciledebezenac\"><img src=\"https://avatars2.githubusercontent.com/u/49871974?v=4?s=100\" width=\"100px;\" alt=\"ceciledebezenac\"/><br /><sub><b>ceciledebezenac</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/claudia-belardi\"><img src=\"https://avatars.githubusercontent.com/u/62244233?v=4?s=100\" width=\"100px;\" alt=\"claudia-belardi\"/><br /><sub><b>claudia-belardi</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Aclaudia-belardi\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/daniguariso\"><img src=\"https://avatars3.githubusercontent.com/u/40636435?v=4?s=100\" width=\"100px;\" alt=\"daniguariso\"/><br /><sub><b>daniguariso</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/denisebianco\"><img src=\"https://avatars.githubusercontent.com/u/151555588?v=4?s=100\" width=\"100px;\" alt=\"denisebianco\"/><br /><sub><b>denisebianco</b></sub></a><br /><a href=\"https://docs.google.com/spreadsheets/d/1WsIAUKgdIRRfd3h09ee2gc7sVmV2u1gEEh3L6u6L1MQ/edit?gid=577525947#gid=577525947,\" title=\"Event Organizing\">📋</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/dumei00\"><img src=\"https://avatars.githubusercontent.com/u/94013453?v=4?s=100\" width=\"100px;\" alt=\"dumei00\"/><br /><sub><b>dumei00</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/f-rower\"><img src=\"https://avatars.githubusercontent.com/u/29379394?v=4?s=100\" width=\"100px;\" alt=\"f-rower\"/><br /><sub><b>f-rower</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=f-rower\" title=\"Code\">💻</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=f-rower\" title=\"Documentation\">📖</a> <a href=\"https://book.the-turing-way.org\" title=\"Design\">🎨</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Promotion\">📣</a> <a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=f-rower\" title=\"Tests\">⚠️</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/fhreidsma\"><img src=\"https://avatars.githubusercontent.com/u/80468267?v=4?s=100\" width=\"100px;\" alt=\"fhreidsma\"/><br /><sub><b>fhreidsma</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Afhreidsma\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/ghuangcazza\"><img src=\"https://avatars.githubusercontent.com/u/72579332?v=4?s=100\" width=\"100px;\" alt=\"ghuangcazza\"/><br /><sub><b>ghuangcazza</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/giuliaok\"><img src=\"https://avatars1.githubusercontent.com/u/33548935?v=4?s=100\" width=\"100px;\" alt=\"giuliaok\"/><br /><sub><b>giuliaok</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/giuliatomba\"><img src=\"https://avatars.githubusercontent.com/u/56237678?v=4?s=100\" width=\"100px;\" alt=\"giuliatomba\"/><br /><sub><b>giuliatomba</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Agiuliatomba\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/glumand\"><img src=\"https://avatars3.githubusercontent.com/u/55833875?v=4?s=100\" width=\"100px;\" alt=\"glumand\"/><br /><sub><b>glumand</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/grczh\"><img src=\"https://avatars.githubusercontent.com/u/92826273?v=4?s=100\" width=\"100px;\" alt=\"grczh\"/><br /><sub><b>grczh</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/griff-rees\"><img src=\"https://avatars.githubusercontent.com/u/60181741?v=4?s=100\" width=\"100px;\" alt=\"griff-rees\"/><br /><sub><b>griff-rees</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Agriff-rees\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/gulesaman\"><img src=\"https://avatars.githubusercontent.com/u/60602896?v=4?s=100\" width=\"100px;\" alt=\"gulesaman\"/><br /><sub><b>gulesaman</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/harisood\"><img src=\"https://avatars.githubusercontent.com/u/67151373?v=4?s=100\" width=\"100px;\" alt=\"harisood\"/><br /><sub><b>harisood</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aharisood\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/hlnicholls\"><img src=\"https://avatars.githubusercontent.com/u/53306752?v=4?s=100\" width=\"100px;\" alt=\"hlnicholls\"/><br /><sub><b>hlnicholls</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Ahlnicholls\" title=\"Reviewed Pull Requests\">👀</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/iramosp\"><img src=\"https://avatars.githubusercontent.com/u/8619939?v=4?s=100\" width=\"100px;\" alt=\"iramosp\"/><br /><sub><b>iramosp</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Airamosp\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/irenekp\"><img src=\"https://avatars2.githubusercontent.com/u/53008913?v=4?s=100\" width=\"100px;\" alt=\"irenekp\"/><br /><sub><b>irenekp</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/jessieontherun\"><img src=\"https://avatars.githubusercontent.com/u/56831617?v=4?s=100\" width=\"100px;\" alt=\"jessieontherun\"/><br /><sub><b>jessieontherun</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=jessieontherun\" title=\"Documentation\">📖</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/jewelyk\"><img src=\"https://avatars.githubusercontent.com/u/66874197?v=4?s=100\" width=\"100px;\" alt=\"jewelyk\"/><br /><sub><b>jewelyk</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ajewelyk\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/JonnyHorsley\"><img src=\"https://avatars.githubusercontent.com/u/57093278?v=4?s=100\" width=\"100px;\" alt=\"jonnyhorsley\"/><br /><sub><b>jonnyhorsley</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"http://julieta.aranc.io\"><img src=\"https://avatars.githubusercontent.com/u/33497609?v=4?s=100\" width=\"100px;\" alt=\"juli arancio\"/><br /><sub><b>juli arancio</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/keneuoe\"><img src=\"https://avatars.githubusercontent.com/u/32788068?v=4?s=100\" width=\"100px;\" alt=\"keneuoe\"/><br /><sub><b>keneuoe</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/kgrieman\"><img src=\"https://avatars0.githubusercontent.com/u/55785990?v=4?s=100\" width=\"100px;\" alt=\"kgrieman\"/><br /><sub><b>kgrieman</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/kkaryono\"><img src=\"https://avatars.githubusercontent.com/u/68295052?v=4?s=100\" width=\"100px;\" alt=\"kkaryono\"/><br /><sub><b>kkaryono</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/l-gorman\"><img src=\"https://avatars2.githubusercontent.com/u/55786252?v=4?s=100\" width=\"100px;\" alt=\"l-gorman\"/><br /><sub><b>l-gorman</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/lakillo\"><img src=\"https://avatars.githubusercontent.com/u/81825476?v=4?s=100\" width=\"100px;\" alt=\"lakillo\"/><br /><sub><b>lakillo</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/leavanh\"><img src=\"https://avatars2.githubusercontent.com/u/50297755?v=4?s=100\" width=\"100px;\" alt=\"leavanh\"/><br /><sub><b>leavanh</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aleavanh\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/lottycoupat\"><img src=\"https://avatars.githubusercontent.com/u/82104604?v=4?s=100\" width=\"100px;\" alt=\"lottycoupat\"/><br /><sub><b>lottycoupat</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Alottycoupat\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/lukehare\"><img src=\"https://avatars.githubusercontent.com/u/44277986?v=4?s=100\" width=\"100px;\" alt=\"lukehare\"/><br /><sub><b>lukehare</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/lwalma\"><img src=\"https://avatars.githubusercontent.com/u/100857620?v=4?s=100\" width=\"100px;\" alt=\"lwalma\"/><br /><sub><b>lwalma</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/mahmoud-elsherif\"><img src=\"https://avatars.githubusercontent.com/u/44072961?v=4?s=100\" width=\"100px;\" alt=\"mahmoud-elsherif\"/><br /><sub><b>mahmoud-elsherif</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/mcnanton\"><img src=\"https://avatars.githubusercontent.com/u/42379883?v=4?s=100\" width=\"100px;\" alt=\"mcnanton\"/><br /><sub><b>mcnanton</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Amcnanton\" title=\"Bug reports\">🐛</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/meliimming\"><img src=\"https://avatars.githubusercontent.com/u/129850001?v=4?s=100\" width=\"100px;\" alt=\"meliimming\"/><br /><sub><b>meliimming</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Ameliimming\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/mengyucui123\"><img src=\"https://avatars.githubusercontent.com/u/124688773?v=4?s=100\" width=\"100px;\" alt=\"mengyucui123\"/><br /><sub><b>mengyucui123</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/merlijn-de-smit\"><img src=\"https://avatars.githubusercontent.com/u/110983126?v=4?s=100\" width=\"100px;\" alt=\"merlijn-de-smit\"/><br /><sub><b>merlijn-de-smit</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Amerlijn-de-smit\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/mingyuzhuu\"><img src=\"https://avatars.githubusercontent.com/u/57093217?v=4?s=100\" width=\"100px;\" alt=\"mingyuzhuu\"/><br /><sub><b>mingyuzhuu</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/mjcasy\"><img src=\"https://avatars1.githubusercontent.com/u/44202821?v=4?s=100\" width=\"100px;\" alt=\"mjcasy\"/><br /><sub><b>mjcasy</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/mkhslaa\"><img src=\"https://avatars.githubusercontent.com/u/4571759?v=4?s=100\" width=\"100px;\" alt=\"mkhslaa\"/><br /><sub><b>mkhslaa</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/msanter01\"><img src=\"https://avatars0.githubusercontent.com/u/39199660?v=4?s=100\" width=\"100px;\" alt=\"msanter01\"/><br /><sub><b>msanter01</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/myyong\"><img src=\"https://avatars.githubusercontent.com/u/5417696?v=4?s=100\" width=\"100px;\" alt=\"myyong\"/><br /><sub><b>myyong</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/commits?author=myyong\" title=\"Code\">💻</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/nnorouzi913\"><img src=\"https://avatars.githubusercontent.com/u/239992651?v=4?s=100\" width=\"100px;\" alt=\"nnorouzi913\"/><br /><sub><b>nnorouzi913</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Annorouzi913\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/oxpeter\"><img src=\"https://avatars3.githubusercontent.com/u/6393360?v=4?s=100\" width=\"100px;\" alt=\"oxpeter\"/><br /><sub><b>oxpeter</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Aoxpeter\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/pascalflohr\"><img src=\"https://avatars.githubusercontent.com/u/43570914?v=4?s=100\" width=\"100px;\" alt=\"pascalflohr\"/><br /><sub><b>pascalflohr</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Apascalflohr\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.penonek.com/\"><img src=\"https://avatars.githubusercontent.com/u/13352427?v=4?s=100\" width=\"100px;\" alt=\"penyuan\"/><br /><sub><b>penyuan</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/peterrhysstrong\"><img src=\"https://avatars.githubusercontent.com/u/43751009?v=4?s=100\" width=\"100px;\" alt=\"peterrhysstrong\"/><br /><sub><b>peterrhysstrong</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/rabbits99\"><img src=\"https://avatars1.githubusercontent.com/u/72690233?v=4?s=100\" width=\"100px;\" alt=\"rabbits99\"/><br /><sub><b>rabbits99</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/rachelzwalker\"><img src=\"https://avatars.githubusercontent.com/u/100789985?v=4?s=100\" width=\"100px;\" alt=\"rachelzwalker\"/><br /><sub><b>rachelzwalker</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/raptorchief\"><img src=\"https://avatars.githubusercontent.com/u/55805992?v=4?s=100\" width=\"100px;\" alt=\"raptorchief\"/><br /><sub><b>raptorchief</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Araptorchief\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://orcid.org/0000-0003-2745-1963\"><img src=\"https://avatars.githubusercontent.com/u/33315062?v=4?s=100\" width=\"100px;\" alt=\"rickdkk\"/><br /><sub><b>rickdkk</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/robbykha\"><img src=\"https://avatars.githubusercontent.com/u/131724231?v=4?s=100\" width=\"100px;\" alt=\"robbykha\"/><br /><sub><b>robbykha</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/russellmartin321\"><img src=\"https://avatars.githubusercontent.com/u/104580892?v=4?s=100\" width=\"100px;\" alt=\"russellmartin321\"/><br /><sub><b>russellmartin321</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Arussellmartin321\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/sallyob123\"><img src=\"https://avatars2.githubusercontent.com/u/55785959?v=4?s=100\" width=\"100px;\" alt=\"sallyob123\"/><br /><sub><b>sallyob123</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/sethsh7\"><img src=\"https://avatars0.githubusercontent.com/u/53264282?v=4?s=100\" width=\"100px;\" alt=\"sethsh7\"/><br /><sub><b>sethsh7</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://www.linkedin.com/in/susanwg/\"><img src=\"https://avatars.githubusercontent.com/u/53834942?v=4?s=100\" width=\"100px;\" alt=\"sgichuki\"/><br /><sub><b>sgichuki</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asgichuki\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/sliaqat3\"><img src=\"https://avatars2.githubusercontent.com/u/56300607?v=4?s=100\" width=\"100px;\" alt=\"sliaqat3\"/><br /><sub><b>sliaqat3</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Asliaqat3\" title=\"Reviewed Pull Requests\">👀</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/saramasa22\"><img src=\"https://avatars3.githubusercontent.com/u/55786246?v=4?s=100\" width=\"100px;\" alt=\"smasarone\"/><br /><sub><b>smasarone</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/snehashish-ghosh98\"><img src=\"https://avatars.githubusercontent.com/u/106345869?v=4?s=100\" width=\"100px;\" alt=\"snehashish-ghosh98\"/><br /><sub><b>snehashish-ghosh98</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Asnehashish-ghosh98\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/sreenithyaa\"><img src=\"https://avatars.githubusercontent.com/u/64282208?v=4?s=100\" width=\"100px;\" alt=\"sreenithyaa\"/><br /><sub><b>sreenithyaa</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Asreenithyaa\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/srtmohan\"><img src=\"https://avatars.githubusercontent.com/u/114400355?v=4?s=100\" width=\"100px;\" alt=\"srtmohan\"/><br /><sub><b>srtmohan</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/swalkoAI\"><img src=\"https://avatars2.githubusercontent.com/u/55786131?v=4?s=100\" width=\"100px;\" alt=\"swalkoAI\"/><br /><sub><b>swalkoAI</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/takuover\"><img src=\"https://avatars2.githubusercontent.com/u/52206060?v=4?s=100\" width=\"100px;\" alt=\"takuover\"/><br /><sub><b>takuover</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/timothy22000\"><img src=\"https://avatars.githubusercontent.com/u/9934371?v=4?s=100\" width=\"100px;\" alt=\"timothy22000\"/><br /><sub><b>timothy22000</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#translation-and-localisation-working-group\" title=\"Translation\">🌍</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Infrastructure (Hosting, Build-Tools, etc)\">🚇</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/tongyu0924\"><img src=\"https://avatars.githubusercontent.com/u/119610311?v=4?s=100\" width=\"100px;\" alt=\"tongyu\"/><br /><sub><b>tongyu</b></sub></a><br /><a href=\"https://book.the-turing-way.org/afterword/subprojects.html#subprojects-infra-wg\" title=\"Maintenance\">🚧</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/tpronk\"><img src=\"https://avatars.githubusercontent.com/u/8987504?v=4?s=100\" width=\"100px;\" alt=\"tpronk\"/><br /><sub><b>tpronk</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Atpronk\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/tugceoruc\"><img src=\"https://avatars0.githubusercontent.com/u/20405276?v=4?s=100\" width=\"100px;\" alt=\"tugceoruc\"/><br /><sub><b>tugceoruc</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/vasilisstav\"><img src=\"https://avatars0.githubusercontent.com/u/55793023?v=4?s=100\" width=\"100px;\" alt=\"vasilisstav\"/><br /><sub><b>vasilisstav</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/vcpope\"><img src=\"https://avatars.githubusercontent.com/u/62377353?v=4?s=100\" width=\"100px;\" alt=\"vcpope\"/><br /><sub><b>vcpope</b></sub></a><br /><a href=\"https://github.com/the-turing-way/conferences\" title=\"Talks\">📢</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/veerasai06\"><img src=\"https://avatars.githubusercontent.com/u/229084338?v=4?s=100\" width=\"100px;\" alt=\"veerasai06\"/><br /><sub><b>veerasai06</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/vhellon\"><img src=\"https://avatars.githubusercontent.com/u/93144591?v=4?s=100\" width=\"100px;\" alt=\"vhellon\"/><br /><sub><b>vhellon</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+reviewed-by%3Avhellon\" title=\"Reviewed Pull Requests\">👀</a> <a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a> <a href=\"https://github.com/orgs/the-turing-way/discussions\" title=\"Answering Questions\">💬</a> <a href=\"https://book.the-turing-way.org\" title=\"Examples\">💡</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Avhellon\" title=\"Bug reports\">🐛</a></td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/vrajesh-daga\"><img src=\"https://avatars.githubusercontent.com/u/201659831?v=4?s=100\" width=\"100px;\" alt=\"vrajesh-daga\"/><br /><sub><b>vrajesh-daga</b></sub></a><br /><a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=author%3Avrajesh-daga\" title=\"Bug reports\">🐛</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/yaochengchen\"><img src=\"https://avatars.githubusercontent.com/u/51320658?v=4?s=100\" width=\"100px;\" alt=\"yaochengchen\"/><br /><sub><b>yaochengchen</b></sub></a><br /><a href=\"https://book.the-turing-way.org\" title=\"Content\">🖋</a></td>\n      <td align=\"center\" valign=\"top\" width=\"16.66%\"><a href=\"https://github.com/yaseminturkyilmaz\"><img src=\"https://avatars3.githubusercontent.com/u/45484225?v=4?s=100\" width=\"100px;\" alt=\"yaseminturkyilmaz\"/><br /><sub><b>yaseminturkyilmaz</b></sub></a><br /><a href=\"https://github.com/the-turing-way/newsletter\" title=\"Blogposts\">📝</a> <a href=\"https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3Aidea-for-discussion\" title=\"Ideas, Planning, & Feedback\">🤔</a></td>\n    </tr>\n  </tbody>\n</table>\n\n<!-- markdownlint-restore -->\n<!-- prettier-ignore-end -->\n\n<!-- ALL-CONTRIBUTORS-LIST:END -->\n"
  },
  {
    "path": "book/website/afterword/contributors/profiles.md",
    "content": "(contributors-record-individual)=\n# Individual Contributors\n\nIndividual contributors are welcome to provide their details for [this section](#contributors-record-highlights).\nOrganisational support and collaborations are listed in [](#aw-collaborators).\n\n(contributors-record-highlights)=\n## Personal Highlights from The Turing Way Contributors\n\nPlease use this section to highlight your personal experiences in The Turing Way project and community.\nYou can also describe the impact The Turing Way may have on you or your team members such as in promoting reproducible, ethical, collaborative and inclusive research practices.\n\nThis record can be used in your personal or professional portfolio (profile, CV, resume) by describing features you have enhanced, goals you have accomplished, skills you gained, opportunities you receive, personal connections you make, individuals you support and values you create through your involvement in The Turing Way.\n\n:::{hint}\nThere is more information about how to add to this record in [the acknowledgement chapter](#ch-acknowledgement-record-individual)\n:::\n\n:::{hint}\nThe community handbook [explains how to use the profile directive to add a profile](#ch-style-roles-profile), and how to reference a profile.\n:::\n\n<!--\nHere is a template for you to use when adding your profile.\nThe fields are optional, so leave any out that don't apply.\n\n:::{profile} Your Name\n---\nroles: >\n    semi-colon separated list;\n    of your roles;\n    in the community\ngithub: <GitHub id without leading @>\norcid: <orcid>\nmastodon: <Mastodon id without leading @, like person@mastodon.social>\ntwitter: <Twitter id without leading @>\nwebsite: <website url>\nbio: |\n    A short Biography about yourself.\n    You can write a new sentence of each line.\n\n    Leaving a blank line will start a new paragraph.\n    You can use MyST *Markdown* _formatting_ here.\nhighlights: |\n    A few highlights about your experiences in The Turing Way\nmore: |\n    Some further information about yourself\nquote: |\n    A personal quote\n---\n:::\n-->\n\n## Founder\n\nThe project was founded in 2019 by Kirstie Whitaker at The Alan Turing Institute.\n\n:::{profile} Kirstie Whitaker\n---\nroles: |\n    Steering Committee Member (Chair);\n    Project Delivery Team member, Project Lead Investigator (2019-Present);\n    Book Dash Organiser: 2019-2020\ngithub: kirstiejane\norcid: 0000-0001-8498-4059\nbio: |\n    I'm the lead of the Tools, Practices and Systems (TPS) Research Programme at the Alan Turing Institute.\n    I have a PhD in Neuroscience from the University of California at Berkeley and conducted my postdoctoral research at the University of Cambridge in the Brain Mapping Unit.\n    I am a Mozilla fellowship (2016) and Fulbright scholarship (2007) alumna.\nhighlights: |\n    I am the lead of _The Turing Way_.\n    I've done a lot of advocacy for changing research culture to make our work more efficient and effective, and I've noticed that we need to address the power structures in academia if we are to truly make research reproducible by default.\n    I'm excited to build the Turing Way to both inspire the people who DO the research to make all their outputs as accessible as possible and to nudge everyone else in the ecosystem to care about the work required to do so.\nmore: |\n    I'm passionate about the concept of making science \"open for all\".\n    I take that to mean we should share all of our outputs - the data, code and protocols that we develop - whether they're \"significant\" or not.\n    But it also includes making those outputs FAIR - findable, accessible, interoperable and reusable. I am an advocate for greater diversity in STEM and in data science and am particularly passionate about improving the ways we reward collaborative and supportive working.\n    Finally, I'd like to pivot to having the data science project be developed in the open from the beginning and with a decision-making governance process that is inclusive and community-led.\n---\n:::\n\n## Contributors\n\n<!---A--->\n## A\n\n:::{profile} Achintya Rao\n---\nroles: |\n    TPS Staff (2021-2023);\n    Book Dash Participant (2021-2022)\ngithub: RaoOfPhysics\norcid: 0000-0002-1628-2618\nbio: |\n    Achintya was the Community Manager for the _AI for Science and Government_ research programme at The Alan Turing Institute. He has a BSc in physics and an MA in science journalism. Before joining The Turing, he spent over a decade as a science communicator at CERN, the European Organization for Nuclear Research, in Geneva. He has a PhD in science communication from UWE Bristol.\nhighlights: |\n    It was a joy helping people who had never used GitHub before file their first issues and make their first pull requests. I also familiarised myself with the structure of the book and can hopefully help other members of the community make contributions to it in the future! It was a lot of fun co-working with so many wonderful people in a shared virtual space.\nmore: |\n    I love that the TTW repo is a place not just to contribute but also to learn, so I wasn't afraid of making mistakes in commits and pull requests. It’s helpful that so many knowledgeable members of the community are there to help!\nquote: |\n    The Turing Way is an ideal place to gather collective knowledge from diverse experiences in data science and open research and to learn by doing.\n---\n:::\n\n:::{profile} Aditi Dutta\n---\nroles: |\n    Book Dash participant (2022)\ngithub: booktrackerGirl\norcid: 0000-0002-1531-5510\nbio: |\n    I am a PhD researcher in Politics at the University of Exeter (Q-Step Centre), working on the dynamics of online misogyny. I enjoy working collaboratively on different projects, such as the Turing Way handbook.  My research interests include working on natural language processing, data science, political social science, gender politics, computational methods, and social data analysis. I love working in interdisciplinary fields and bringing out the best in all the fields involved.\n    My profile on the university website: https://eprofile.exeter.ac.uk/aditidutta/\nhighlights: |\n    * Meeting amazing people and connecting with them through the event! (This was my first Book Dash event. Can't wait to join many more in the future!)\n    * Creating a new chapter on 'Research Ethics for Social Data' and adding more information in different sections of the book.\n    * Working with Scriberia artist to get a drawing of the 'Research Ethics for Social Data' chapter.\n    * I can now call myself (kind of) proficient in using GitHub(?) _(Just to let you know, there's no substantive evidence to support my claim, so it's just a self-reflection for now!)_\n---\n:::\n\n:::{profile} Aida Mehonic\n---\nroles: |\n    TPS Staff (2021-Present);\n    Book Dash Participant (2021-2022)\ngithub: AidaMehonic\nbio: |\n    I am a Senior Researcher in the Tools, Practices and Systems Programme and I am leading Research Applications at The Alan Turing Institute. My focus is making sure that research outputs are not just openly available but that they meet stakeholder needs. I am leading a growing team of Research Application Managers (RAMs) whose goal is to increase the reach and maximise the positive impact of research outputs. The role of a RAM has been inspired by that of a product manager in a tech firm but adapted for research purposes.\nhighlights: |\n    I get a lot of joy when I think about how far I have personally come in learning about and adopting open research practices over the past 1.5 years. The Turing Way community has been central to my education and general empowerment in this area.\nmore: |\n    I'm passionate about making research outputs relevant to a wide range of communities.\n---\n:::\n\n:::{profile} Alejandro Coca\n---\nroles: |\n      Core Member, Environmental Data Science Book Representative (2022-Present);\n      TPS Staff (2023-Present);\n      Translation and Localisation Co-lead (2021-2023);\n      Book Dash Participant (2021-2023)\ngithub: acocac\norcid: 0000-0002-9264-1539\nbio: |\n    Alejandro completed his PhD in Physical Geography at King's College London in September 2020. He is currently affiliated as a Postdoctoral Research Associate at the Alan Turing Institute working on a project aiming to build and deploy open-source toolkits and demonstrators for Environmental Data Science. He is also contributing to `Scivision`, a generic framework for scalable image analysis led by the Turing in collaboration with the open-source community.\nhighlights: |\n    I'm so glad to join _the Turing Way_ community. I've met a large and very active community contributing to a common goal, Open, Inclusive and Collaborative Science. My participation in the Book Dash 2021 was a fantastic experience to learn, discuss, collaborate and network with a wide variety of TTW contributors. My particular contribution during the 2021 book dash was to improve the documentation of translation within the Community Handbook. The documentation summarises learnings and experiences from the Spanish Translation team relevant to future translations.\nmore: |\n    Thanks to the TTW and the Open Life Science training programme, I'm considerably improving a prototype of the online and community-driven e-book on Environmental Data Science, named the Environmental AI book.\nquote: |\n    There's always hope!\n---\n:::\n\n:::{profile} Alexander Morley\n---\nroles: |\n  Project Delivery Team Member;\n  Infrastructure Maintainer (2018 - 2019)\ngithub: alexmorley\nbio: |\n    I am a Mozilla Fellow (2018-) and a PhD Candidate at the MRC Brain Network Dynamics Unit at the University of Oxford (2015-).\n    I also receive support from the Software Sustainability Institute Fellowship programme (2018) and the Microsoft/Research Software England Cloud Computing Fellowship programme (2018).\n    My undergraduate degree was in Medicine at the University of Oxford (2012-2015).\nhighlights: |\n    As a core contributor I want to share \"Why I care about the Turing Way?: When people don't use best practices in data science it's almost always because they either don't know about them or feel they don't have time. Advocates will tell people that the time is saved in the long term, but it's a hard sell.\n    By providing concrete, incremental, but authoritative, guidance I believe the Turing Way could provide the nudge that allows people to realise the benefits for themselves, and lowers the barrier for more researchers to acquire these highly valued skills.\nmore: |\n    I want research to be accessible, but in a much broader sense than the word is often used. I would love to see a world where re-mixing research is a common thing, whether that be re-mixing figures to make them easier to understand, re-using data to generate new insights, or testing new methods to see how our theories might need to change.\n    Slightly less on topic, but just as important, I am also passionate about the development and adoption of best governance practices. Safe and inclusive spaces are all too rare in academia, and I think some part of that can be solved by doing away with our laissez-faire attitude towards governance and management.\n---\n:::\n\n\n:::{profile} Alexandra Araujo Alvarez\n---\nroles: |\n   Senior Research Community Manager, BridgeAI (2024-current);\n   Project Delivery Team member, Research Project Manager (2023-2024);\n   Book Dash Organiser: 2023\ngithub: AlexandraAAJ\norcid: 0009-0008-6607-3815\nbio: |\n    Alexandra is the Research Project Manager for The Turing Way project, under the Tools, Practices and Systems research programme from February 2023.\n    Alexandra was born and raised in Lima, Peru. She has an Economics Engineering degree with a master’s in marketing.\n    Her experience in Research Project Management started in 2021 at People’s Palace Projects, an art research centre connecting academics, artists and policymakers. There she covered the Mental Health and Wellbeing projects.\n    Prior to that, I lived in Peru where she was the CEO of Teatro La Plaza, one of Latin America’s leading theatre companies. There, she oversaw the production of over 100 theatre plays for adults and children, such as Mamma Mia!, Billy Elliot, The curious incident of the Dog in the Nighttime, and Hamlet (with a cast of actors with Down syndrome), among many others.\nhighlights: |\n    Alexandra is a positive and curious person who enjoys learning and discovering new things.\n    Together with Malvika and Kirstie, in June 2023 they launched the inaugural cohort of [The Turing Way Practitioners Hub Experts in Residence](https://www.turing.ac.uk/turing-way-practitioners-hub).\n---\n:::\n\n:::{profile} Aman Goel\n---\nroles: |\n    Book Dash participant (2022)\ngithub: amangoel185\norcid: 0000-0003-3567-2096\nbio: |\n    I am a recent graduate in computer science and mathematics from the University of Delhi. I am an Open Life Science mentee and project leader and I am working on the project \"The Undergraduate's Guide To Research Software Engineering\". I am deeply passionate about Open Science and Research Software and am exploring their applications while being an open source contributor. I am also an active member of the HEP Software Foundation Training Group and am a certified Carpentries Instructor.\nhighlights: |\n    It was my first Book Dash and it was a wonderful experience. I especially loved the Community Share-out and the session with the Scriberia artist. I loved meeting so many new and interesting people and becoming a part of the community.\n---\n:::\n\n:::{profile} Abasi-amefon Obot Affia\n---\nroles: |\n    Book Dash participant (2024)\ngithub: amefonaffia\norcid: 0000-0001-7627-1198\nbio: |\n    I am a Security Engineer and a Lecturer in Information Security at the University of Tartu. I am currently focusing my research efforts on hackathons as collaborative learning environments. Generally, I am focusing on collaborative strategies that can bridge the gap between theory and practice in information security and human aspects of cybersecurity.\nhighlights: |\n    Biggest highlight is simply attending Book Dash for the first time, having the opportunity to contribute to the Hybrid collaboration chapter and actually finalise current contributions. I had very interesting conversations, revealing impactful intersections of hybrid collaboration with other topics in TTW book, and I hope to continue to work on this Chapter and other Chapters with other collaborators.  I also met new friends at this event too -- S/O to \\@sandygudie! Very appreciative of the planning and execution of the event and the welcoming and helpful community.\n    I had been a bit rusty on working collaboratively on Github, so this was a great refresher.\nmore: |\n    Interested in continuing with current work on Hybrid collaboration -- Issue #3707. I am also interested in all things collaborative that intersect with hackathons or hackathon-like events. Please reach out if there are any research interests on the topic.\n---\n:::\n\n:::{profile} Andrea Chi Zhang\n---\nroles: |\n    Book Dash participant (2023)\ngithub: andreaczhang\norcid: 0000-0003-0501-5909\nbio: |\n    I am a biostatistician with an interest in becoming an RSE (research software engineer). I teach statistics to medical researchers at the University of Oslo in Norway, and do some research on the side.\nmore: |\n    This is my first time at a Book Dash event. I opened issues #3118 and #3107.\nhighlights: |\n    This is a really interesting event! Since it was my first time, there was a lot to learn. But with the help of others, I managed to contribute a little and felt proud! Will definitely join again so that I can finish what I started.\n---\n:::\n\n:::{profile} Andrea Sanchez Tapia\n---\nroles: |\n   Core Member, Translation and Localisation co-lead (2022-present);\n   Book Dash Participant (2021)\ngithub: AndreaSanchezTapia\norcid: 0000-0002-3521-4338\nbio: |\n    Andrea (she/her) is a Colombian ecologist with a background in Biodiversity Informatics and Plant Ecology. She was based for more than a decade in Rio de Janeiro, where she earned an MSc in Ecology and a PhD in Botany, working in vegetation ecology and nurturing a growing interest in learning and teaching about Open Science, Reproducibility in academic and non-academic communities. She has been saved countless times by R communities of practice and is a member of R-Ladies, a Certified Carpentries Instructor, and part of Forwards, the R Foundation Taskforce for diversity, equity, and inclusion.\nhighlights: |\n    I joined forces with Batool and Alejandro to help rethink the workflows for deploying translated versions of _The Turing Way_ and working with them was amazing! The task is a little bit daunting, but we are on the right way. I was thinking mostly about what to do with the Spanish translation branch (Spoiler: don't rebase!) and checking the workflow and requirements when new language teams start to translate a new language in Crowdin, using Portuguese as an example. I loved the illustration session, the two thematic conversations I could join, and the abundant note-taking.\n---\n:::\n\n:::{profile} Andreea Avramescu\n---\nroles: |\n    Book Dash Participant (2021)\ngithub: andreea-avramescu\norcid: 0000-0001-6837-6272\nbio: |\n    I am a PhD student at the Alliance Manchester Business School, the University of Manchester (supervised by Dr Richard Allmendinger and Dr Manuel López-Ibáñez) and an Engage\\@Turing/Enrichment Student at The Alan Turing Institute. My research interests lie in the fields of personalised medicine, optimisation and data science, and how all these can be used together to improve the availability and accessibility of targeted treatments worldwide. I have an MSc in Data Science and have previously worked on various research problems from within the fields of social sciences, law, computer science, and operations research.\nhighlights: |\n    Throughout the week I had the chance to improve a chapter on project design and review existing PRs. I also engaged in discussions with the team about the general challenges encountered in reproducible research and project design.\nquote: |\n    The 2021 May Book Dash was an exciting and inspiring opportunity. The events throughout the week were extremely well organised and the inclusive environment was very welcoming.\n---\n:::\n\n:::{profile} Ankur Kumar\n---\nroles: |\n    Book Dash Participant (2021)\ngithub: leoank\norcid: 0000-0002-7686-7335\nbio: |\n    Ankur is a research associate at the Department of Genetics, University of Cambridge. He is trying to create shareable and reproducible software infrastructure for building the next generation of life sciences research platforms by leveraging advances in modern cloud technology. He is always happy to talk about the challenges and opportunities that these distributed systems present. Apart from computers, he is also interested in synthetic biology. One can often find him at related events and seminars around Cambridge.\nhighlights: |\n    I  want to thank the organisers for allowing me to join the book dash.\n    I also want to congratulate them for creating such a friendly community around the Turing Way project.\n    I worked on a chapter with the working title of \"Reproducible analysis pipelines\".\n    I had wonderful conversations about the topic with fellow participants and [Kirstie](#profile-kirstie-whitaker).\n    I also reached out to some of the leaders in the field.\n    I'll soon be interviewing them to add their experiences as case studies.\n    All my interactions with the Turing Way community helped me to achieve a better understanding of the topic.\n    I also feel more confident in writing and I am now thinking of starting my blog!\nmore: |\n    I'll continue to keep working on the chapter and submit a PR as soon as possible. I am also thinking of improving some technical aspects of the book. I'll hopefully get around to doing these soon as well.\nquote: |\n    May the force be with \"The Turing Way\"\n---\n:::\n\n:::{profile} Anna Krystalli\n---\nroles: |\n    [Code of Conduct Committee](https://book.the-turing-way.org/community-handbook/coc/coc-enforcement.html) member (2018 - present);\n    Project Delivery Team Member (2018 - 2019);\n    Role: Book Dash Participant (2019)\ngithub: annakrystalli\norcid: 0000-0002-2378-4915\nbio: |\n    I’m a Research Software Engineer at the University of Sheffield helping researchers do more with their code and data.\n    I’m also an editor for rOpenSci, a community of users and developers, Creating a technical infrastructure of peer-reviewed R software tools for working with scientific data sources on the web.\nmore: |\n    I care about reproducible research in R!\n    I learnt to code during my PhD in Marine Macroecology and was instantly hooked.\n    Building on experience as a quality assurance auditor, my experiences made me interested in how we practice science and specifically how we can do more out of the real workhorses of modern research, our code and data.\n    Working in _The Turing Way_ is a fantastic opportunity to take stock of the great work that has already been done in this space, aggregate and distil it to templates, checklists and  best practices guidelines that are immediately useful to researchers.\n    It’s an opportunity to set standards and harness the power of convention, especially with ECRs that have an opportunity to set up good practices from the start! Indeed, I hope the Turing Way will very much become the “Sheffield Way” too!\n---\n:::\n\n:::{profile} Anne Fouilloux\n---\nroles: |\n    Book Dash Participant (2022-2023)\ngithub: annefou\norcid: 0000-0002-1784-2920\nbio: |\n    Anne is a Research Software Engineer. She is working in the field of Climate Science\n    with the Earth System Modelling community.\n    She is also developing training materials and teaching basic-to-advanced research\n    Computing skills to students, researchers, and Research Software Engineers from all\n    Disciplines to advance FAIRness of Software management and development practices\n    so that research groups can collaboratively develop, review, discuss, test, share and\n    reuse their codes.\nhighlights: |\n    While working on adding a new chapter on Research Object with Alejandro Coca-Castro,\n    I enjoyed the discussions on where to place this new chapter in the book.\n    Communication in an Open Science context is such an interesting topic!\nquote: |\n    There is so much to learn from The Turing Way handbook and Book Dashes' participants.\n---\n:::\n\n:::{profile} Anne Lee Steele\n---\nroles: |\n    Project Delivery Team member, Research Community Manager (2022-2025);\n    Book Dash Organiser: 2023-2024\ngithub: aleesteele\norcid: 0000-0002-9262-8641\nbio: |\n    Anne is the Community Manager for The Turing Way project, where she facilitates a collaborative resource for reproducible data science and supports an open source community in developing practices for researchers and practitioners around the world.\n\n    She has worked on a variety of projects in the open ecosystem, including at the Internet Society, Wikimedia Deutschland, and Open Knowledge Foundation, and is passionate about the capacity for open source practices to make research more accessible, collaborative, and inclusive. Previously, she worked in the data journalism and education fields.\n\n    She holds a BA from Columbia University, and an MA from The Graduate Institute of International and Development Studies in Geneva, both in anthropology and sociology.\nhighlights: |\n    After coming to _The Turing Way_ from other stars in the 'open universe' (as I tend to call it), I'm keen to get to know the world of open scholarship & open science and to learn how to support the community here. I'm particularly interested in helping to develop systems of inclusive governance, and project sustainability, involving more perspectives from my fields (of anthropology and sociology!), and tying the project more closely to other open communities that work on issues of ethics, diversity, and inclusion through data-driven practices.\n---\n:::\n\n:::{profile} Arielle Bennett\n---\nroles: |\n    Steering Committe Member (Secretary);\n    Book Dash Working Group Chair;\n    Book Dash Planning Committee (2021-Present);\n    Project Delivery Team member (2024-2025)\ngithub: Arielle-Bennett\norcid: 0000-0002-0154-2982\nbio: |\n    Arielle Bennett is the Programme Manager for TPS at the Alan Turing Institute. A biologist by training, she has worked in several different industries from science publishing to biotech start-ups, as well as being an Open Life Science mentor for multiple cohorts and a 2019 Community Engagement Fellow with the Center for Scientific Collaboration & Community Engagement. Arielle advocates for the growing number of research infrastructure roles in academia as well as encouraging researchers to consider their roles as activists alongside ethical reflections and writes about these topics for The Turing Way.\nhighlights: |\n    Before participating in the Turing Way, I didn't know what a pull request was, never mind how to make one!\n    Now I have contributed to several different parts of the five guides, including co-writing the initial chapters on [activism for researchers](https://book.the-turing-way.org/ethical-research/activism.html) and given presentations on the topic at conferences.\n    I also now mentor other community contributors on how to create pull requests, contribute to existing chapters, review others' work, and draft new ideas.\n    The **May 2021 Book Dash** was an amazing opportunity to engage with the community and get excited about the project all over again! I came away from it feeling enthused and proud of the contributions people made with my support - it will be brilliant to see how these evolve over the coming months into content and chapters.\n    In the **November 2021 Book Dash** week we have merged a new chapter on research infrastructure roles - the people who do critical tasks to keep research going, open, reproducible, collaborative and reusable! It's great to be able to promote the visibility of roles like mine to the wider community. I am also incredibly proud of all our first attendees who have done brilliant work this week revising old chapters and writing new ones.\n    In **May 2022 Book Dash**, I've loved the spontaneous chats we've had about art, changing workplaces, leadership styles that break the mould & more. Always a highlight, when someone merges their first PR to the Guide!\n    In **2023 Book Dashes** I've enjoyed exploring my creative side with writing, and seeing everyone's first contributions. I've also helped to revise parts of the Guide for Project Design.\n    In **2024 Book Dashes** I've hosted discussions on culture change models, reviewed a lot of PRs and broadened our timezone coverage with late night sessions for folks in the Americas.\nmore: |\n    The research infrastructure roles chapter in the Guide for Ehical Research is not finished! We are hoping that people will contribute overviews of more roles in this space, or share their career trajectory and background as case studies in the future.\nquote: |\n    It's always a joy to work with The Turing Way participants, experienced and new, to create something amazing.\n    The Book Dash is an incredible experience for both newer and established community members. It is joyful work to spend focused time on developing content for the Turing Way and supporting people from across the globe to contribute. I feel lucky to have been able to take part and take on a more prominent role as part of the organising committee.\n---\n:::\n\n:::{profile} Arya A.\n---\nroles: |\n   Google Summer of Code 2023 Intern;\n   Book Dash participant (2023)\ngithub: arya1302\nbio: |\n     I am a pre-final year undergraduate student pursuing Computer Science Engineering ( Artificial Intelligence) at Amrita University, India. I joined The Turing Way as a part of Google Summer of Code (GSoC) 2023. I have a strong interest in software development, with a passion for web development. I am skilled in Python and have experience working with React, Flask, and Django.\nhighlights: |\n     As a first-time participant, I had an amazing experience. I learned more about the community and had the opportunity to interact with a few people. I worked on implementing a description feature for each pathway in The Turing Way website. Additionally, I collected user feedback in order to get more insights on what needs to be improved on the website.\nmore: |\n    https://github.com/alan-turing-institute/bio-Turing-Way/pull/42\n---\n:::\n\n\n<!---B--->\n## B\n\n:::{profile} Batool Almarzouq\n---\nroles: |\n    Steering Committee Member (Chair-Elect);\n    Translation and Localisation Working Group Chair (2021-Present);\n    TPS Staff (2023-Present);\n    Infrastructure Maintainer (2021-2022);\n    Book Dash Planning Committee 2021;\n    Book Dash Participant (2021)\norcid: 0000-0002-3905-2751\ntwitter: batool664\nbio: |\n    Batool is an honorary research fellow at the University of Liverpool, and a previous Project Manbage for AIM-RSF at the Turing Institute. She is also an RWeekly member and part of the R-Ladies Global committee. As an advocate for Open Science and its role in improving scientific and economic outputs in the Middle East, she established an Open Science Community in Saudi Arabia (OSCSA). OSCSA aims to create significant value towards Saudi Arabia's Vision 2030, which focuses on enhancing knowledge and improving equal access to education in the Kingdom.\nhighlights: |\n    In May 2021 Book Dash, I co-developed a chapter on \"CI services\".\n    In the previous Book Dash, I have helped upgrade the Jupyter Book Infrastructure and add [hypothes.is](https://web.hypothes.is/) to enable collaborative annotation of _The Turing Way_ chapters. I have also translated the README.me chapter into Arabic.\n    Although November 2021 Book Dash week was hectic (homeless twice while looking for a hotel in a foreign country) looking back it was a fascinating week. I'm always grateful to be part of such a community - in the past week, I was inspired by everyone's work and very thankful for the Book Dash Planning Committee who are always patient with me. I was also so lucky to work with the wonderful Andrea Sanchez Tapia  and Alejandro Coca on a new workflow for the translation.\nquote: |\n    Being part of The Turing Way community not only nourishes my skills but miraculously treats my anxiety and depression. I always feel grateful for being here. Thank you so much to everyone I met at this Book Dash event :heart:.\n---\n:::\n\n:::{profile} Becki Green\n---\nroles: |\n    Book Dash Participant (2021)\ngithub: beckigreen\norcid: 0000-0002-0513-5188\nbio: |\n    I am a PhD student at King’s College London (supervised by Dr Petroula Proitsi & Professor Marcus Richards) and an Engage student at The Alan Turing Institute. My PhD project aims to identify early mechanisms and biological markers of dementia, and I am currently also working on the DECOVID project at the Institute.\nhighlights: |\n    Working alongside such wonderful people and learning so much! An enriching experience - I look forward to contributing in future events. A further highlight was gaining experience in working collaboratively on a large project, including reviewing my first pull request!\nquote: |\n    A welcoming and enriching environment. Collaborating with others was valuable and has provided me with tools to apply to my research and share with others.\n---\n:::\n\n:::{profile} Becky Arnold\n---\nroles: |\n    Project Delivery Team Member (2018 - 2019)\ngithub: r-j-arnold\norcid: 0000-0003-0355-0617\nbio: |\n    I'm an astrophysics PhD student at the University of Sheffield and I do computer simulations of star-forming regions.\n    I'm a 2018 Software Sustainability Institute fellow using the funds to organise talks and workshops about various issues surrounding good programming practice.\nmore: |\n    I am passionate about Science.\n    All over the world humans come together to try and figure out how the universe works and that's *amazing*, just as amazing as the answers themselves.\n    I'm also passionate about how we do that science, making sure it's accurate and reproducible.\n    If it isn't both of those things we haven't moved forwards much, or worse still end up going in circles.\n    I care deeply about changing the culture of academia, in which abuse of power (both minor and major) is all too common.\n    I've met so many people who want to code well and follow best practices, which will benefit science enormously but struggle to know how to do so.\n    While there are lots of fantastic resources out there they're often scattered and _The Turing Way_ can improve that.\n    I also hope that it can convince people who don't consider themselves capable of being good programmers that there are steps they can take to drastically improve their coding.\n---\n:::\n\n:::{profile} Benjamin Mummery\n---\ntwitter: BenjaminMummery\nbio: |\n    While studying Astrophysics, Benjamin was the first speaker at, and later organizer of, Liverpool PubHD ([Facebook](https://www.facebook.com/pubhdliverpool/), [Twitter](https://twitter.com/pubhd_liverpool?lang=en-gb)) - a monthly cross-discipline event that challenged PhD students to \"explain their research in 10 minutes, while enjoying a pint.\" During this time he also developed and delivered multiple more official outreach events including presenting to both the public and airforce commanders at [RAF Cosford Airshow](https://www.youtube.com/watch?v=KImlYiCO7Vs), and frequent activities for schools. Now a Research Software Engineer at the Hartree Centre, he has continued his engagement with outreach, most recently in collaboration with Tim Powell designing a LEGO version of the Centre's iconic supercomputer [Scafell Pike](https://twitter.com/HartreeCentre/status/1189145621564968963). He can frequently be found banging on about [fictional](https://www.youtube.com/watch?v=zrqfT4aotfE) [time travel](https://inews.co.uk/culture/film/donnie-darko-reviewed-astrophysicist-531742).\nhighlights: |\n    I collaborated with a group of researchers from The Alan Turing Institute to draft a chapter of scientific outreach.\n---\n:::\n\n:::{profile} Brigitta Sipőcz\n---\nroles: |\n    Infrastructure Maintainer (2023 - present)\ngithub: bsipocz\norcid: 0000-0002-3713-6337\nbio: |\n    I am an astronomer turned Research Software Engineer.\n    I work at Caltech/IPAC to build and improve tools, like Python libraries and Science Platforms to provide ways to access data in the NASA/IPAC Infrared Science Archive.\n    Prior joining IPAC I was DiRAC Fellow in the data engineering team at the Institute for Data Intensive Research in Astrophysics and Cosmology in Seattle.\n    I am a developer and maintainer of several open source astronomy libraries and their infrastructure (including astroML, astroquery, astropy) and I enjoy contributing to upstream projects as well.\n    I have a keen interest in finding ways to promote the open development model and make tools more sustainable.\n    I am a fellow of the Software Sustainability Institute.\n---\n:::\n\n<!---C--->\n## C\n\n:::{profile} Camila Rangel Smith\n---\nroles: |\n    Core Member, Translation and Localisation Co-Lead (Spanish) (2020-2023);\n    Book Dash May 2019 Attendee\ngithub: crangelsmith\norcid: 0000-0002-0227-836X\nbio: |\n    I am a Research Data Scientist at The Alan Turing Institute. I hold a PhD in Particle Physics from Université Paris Diderot where I worked on the ATLAS experiment at the Large Hadron Collider at CERN.\n    During my PhD I participated in the discovery of the Higgs Boson particle announced by CERN in 2012.\n    I continued working on ATLAS as a postdoc with Uppsala University where I focused on searches for physics beyond the Standard Model of Particle Physics.\n    Right before joining the Turing, I worked as a Data Scientist in the EdTech sector developing innovative products focused on the assessment process in education.\n    Currently I’m working in collaboration with researchers from the Global Systems Institute at the University of Exeter called Data Science for Sustainable Development.\n    In this project we are using remote sensing to monitor the resilience of patterned vegetation from semi-arid dryland ecosystems in the Sahel.\nhighlights: |\n    I think The Turing Way is an excellent resource that can change the way science is done (I wish I had it when I started my PhD!).\n    Although the international language of science is English, I know for a fact that not everyone in places like Latin America has the time and resources to learn it, so I think we must do everything we can to break those barriers and improve the accessibility of knowledge for everyone.\n    This is my motivation to translate the book to Spanish, and I hope that the Spanish version will be used as an important resource on the master course we are developing in the LA-CoNGA physics project.\nmore: |\n    I’m from Venezuela, and although I have done most of my career in Europe I’ve been always keen to stay connected to the academic and scientific world back in Latin America.\n    I’m the co-founder of the CEVALE2VE project (http://www.cevale2ve.org/en/home/), which of a virtual learning community that aims to tackle the serious issue of brain-drain in some Latin-American countries by bringing back the knowledge in a digital/online platform.\n    More recently that project has become consolidated into LA-CoNGA physics (http://laconga.redclara.net/), an EU Erasmus+ funded project with a mission to create a Latin American and European Community for Advanced Physics.\n    In this project I’m helping to build a data science module that will be taught in an online master course.\n---\n:::\n\n:::{profile} Carlos Martinez Oritz\n---\nroles: |\n    Core Member, Netherlands eScience Center Representative (2020-Present);\n    Book Dash Participant (2020);\n    Book Dash Planning Committee (2021);\n    Community Manager for eScience Center\ngithub: c-martinez\norcid: 0000-0001-5565-7577\nbio: |\n    Carlos obtained his PhD in Computer Science at the University of Exeter. Afterwards, he worked on various research projects at the University of Exeter and Plymouth University. At the eScience Center, he has worked as an engineer on diverse projects in digital humanities and life sciences, developing expertise in natural language processing, linked open data and software sustainability. He is also a certified Software Carpentry instructor and is frequently involved in organising training.\nhighlights: |\n    We always advocate for software reuse and collaborative development of software. I love that we can do the same for software development guidelines: reuse content from the eScience guide and collaboratively develop with _The Turing Way_ community!\nmore: |\n    I am a big advocate of improving software quality. I am really glad that the eScience Center is collaborating with _The Turing Way_ in providing guidelines and helping build better research software.\n---\n:::\n\n:::{profile} Ceilidh Welsh\n---\nroles: |\n    Book Dash Participant (2023)\ngithub: CeilidhWelsh\norcid: 0000-0002-7332-7392\nbio: |\n    Ceilidh is a PhD student in the Department of Oncology at the University of Cambridge, funded by Cancer Research UK RadNet. She investigates predictive biomarkers for radiotherapy response in head-and-neck cancer. She was awarded the Alan Turing Institute Enrichment Scheme Award for 2022/2023, where she explored her interests in data ethics, data reproducibility and community-led data science projects.\nhighlights: |\n    Learning about _The Turing Way_ project and how community-led science can produce and sustain projects that bring people together.\n    Co-authoring the [Data Hazards Chapter]{ref}`er-datahazards` with [Susana Roman Garcia](https://github.com/Susana465), [Natalie Zelenka](https://github.com/NatalieZelenka), Irma Hafidz and many more incredible people doing incredible things that helped us along the way!\n    Completing the Data Hazards Chapter, creating my first pull request *and* having it merged! All of this would not be possible without the support of Susana both during and outside the Book Dash(s).\n    Most of all starting to contribute to this wonderful project!\n---\n:::\n\n:::{profile} Christopher Erdmann\n---\nroles: |\n    Handbook Collaborator and Contributor, SciLifeLab Representative;\n    Head of Open Science, SciLifeLab Data Centre\norcid: 0000-0003-2554-180X\nbio: |\n    Christopher Erdmann is a community advocate, developer, and experimenter in the areas of Open Science and FAIR. Prior to joining the SciLifeLab Data Centre as the Head of Open Science, he was the Associate Director for Open Science at the Michael J. Fox Foundation where he drove open science strategies and workflows to support the Foundation’s policies. He has previously worked for organizations such as the American Geophysical Union, Renaissance Computing Institute at UNC, California Digital Library (The Carpentries), North Carolina State University, Harvard-Smithsonian Center for Astrophysics, European Southern Observatory, Supreme Court of the US, United Nations, University of Washington, Smithsonian, and CNET. Christopher holds an MLIS from the University of Washington iSchool and a BA from the University of California, Davis.\nhighlights: |\n    The Turing Way Handbook is an invaluable resource for researchers worldwide looking to learn more about reproducible, ethical and collaborative data science. I am looking forward to our collaboration with The Turing Way to learn from their community, help further the Handbook as a community resource, and leverage it in our own endeavours at the SciLifeLab (Data Centre).\n---\n:::\n\n:::{profile} Christopher Burr\n---\nroles: |\n    Book Dash participant (2024)\ngithub: chrisdburr\norcid: 0000-0003-0386-8182\nbio: |\n    I am a Senior Researcher in Trustworthy Systems at the Alan Turing Institute, in the Tools, Practices, and Systems programme. I also lead the Innovation and Impact Hub for the Turing’s Research and Innovation Cluster in Digital Twins (TRIC-DT).\nhighlights: |\n    Hearing about the diversity of contributions made by all the other book dash participants, and being exposed to novel ways to run an online and collaborative session.\n    It was great to be able to block out time to do this—as always, making time and space for specific pieces of work is really important. Unfortunately, life got in the way on the final day, and I had to miss the share-out to look after my daughter. But I managed to tune in from my phone for a bit of it, and it was great to hear from everyone else.\n    I didn't finish what I had intended to do, but have made a really solid start and look forward to using the Collaboration Cafes to continue developing the relevant chapter.\n---\n:::\n\n<!---D--->\n## D\n\n:::{profile} Danny Garside\n---\nroles: |\n    Infrastructure Working Group Member (2022-Present)\ngithub: da5nsy\norcid: 0000-0002-0227-836X\nmastodon: https://social.coop/\\@da5nsy\nwebsite: https://www.dannygarside.co.uk/\nbio: |\n    I am a neuroscientist and meta-scientist, and I split my time between researching colour vision and trying to make academia more accessible, more efficient, and happier.\nhighlights: |\n    - Learning about the project and [meeting Kirstie](https://github.com/the-turing-way/the-turing-way/blob/ebbaf8f5f3a66da441beafc690a1b16a9c50d15b/communications/newsletters/newsletter_08_Nov2019.md#acknowledgements-and-celebrations) during a rough patch in my PhD — learning about the project brought me hope for the future!\n    - My [first issue](https://github.com/the-turing-way/the-turing-way/issues/1114) followed several small contributions and then [the first gnarly infrastructure PR](https://github.com/the-turing-way/the-turing-way/pull/2039) I made, which started my love(/hate)-affair with Jupyter Book.\n    - Working with [Malvika](https://github.com/malvikasharan) to [rewrite the landing page](https://github.com/the-turing-way/the-turing-way/pull/1961) (particularly proud of _\"Warning: Do not try to read the _The Turing Way_ from start to finish!\"_)\n    - [Learning how to build the book locally](https://web.archive.org/web/20221104150942/https://fosstodon.org/@da5nsy/108760121842868538) from [Sarah Gibson](https://book.the-turing-way.org/afterword/contributors-record.html#sarah-gibson) (and learning about miniconda in the process!) — a process which is now written up [here](https://book.the-turing-way.org/community-handbook/local-build.html#ch-local-build), but wasn't at the time, and so it felt like secret magic, and an infrastructure nerd's rite-of-passage.\n    - Using that knowledge to finally [wipe all of the long-standing build warnings and errors](https://github.com/the-turing-way/the-turing-way/issues/2611) so that we could [implement CI to catch bugs before they were merged into main from then on](https://github.com/the-turing-way/the-turing-way/pull/2861)!\n    - [Presenting at FOSS Backstage in Berlin](https://github.com/the-turing-way/the-turing-way/issues/2993#issuecomment-1629424116) with [Anne Lee Steele](https://github.com/aleesteele), on the subject of \"maintenance\" and ideas around transitioning from a small scrappy project to a long-term-sustainable project.\n    - In 2023 I'm focusing on the more organisation-level infrastructure ([what tools do we use and why](https://github.com/the-turing-way/the-turing-way/issues/3218)?), and as part of that, I was proud to set up [the Turing Way's mastodon account](https://fosstodon.org/@turingway/108278354199514905).\n---\n:::\n\n:::{profile} Denise Bianco\n---\nroles: |\n    Book Dash Planning Committee 2024;\n    Book Dash participant 2025\ngithub: denisebianco\norcid: 0000-0002-8896-6189\nbio: |\n    I'm a Senior Research Community Manager at The Alan Turing Institute, currently working on a project called Advancing Biomedical Data Science Careers (ABDC).\n    At the Institute, I'm also a co-organiser for the AI & Arts interest group, a cross-disciplinary community exploring the mutual influence of technological research and the arts.\n    Alongside my roles at Turing, I'm a Ph.D. candidate and Associate Lecturer at Central Saint Martins, University of the Arts London.\n    My research examines the evolving relationship between the arts and sciences as a model for transdisciplinary collaboration.\n    Within the MA Innovation Management programme, I mentor students by offering creative perspectives and practical experience in applied innovation, guiding their research with insights in qualitative methods and cross-disciplinary collaboration processes.\nhighlights: |\n    I always enjoy taking part in the Book Dash and working collaboratively with others who share similar interests to mine — or even completely different ones,  which allows me to learn so much! After three Book Dashes, I've built relationships with a really great community of people and have also improved my GitHub skills, especially for collaborative work.\n\n    I contributed one chapter \"Embedding Data Science Across Disciplines\" (June 2024), co-authored with Gule Saman, which has been published.\n    Two more chapters are in progress: \"Lesson & Curriculum Development\" (June 2024–Nov 2025), with Gule Saman and Thao Do, and a new sub-chapter on “Qualitative Pre-registered Reports” (Nov 2025) under the “Registered Reports” chapter, which I am developing with Emma Karoune and Giulia Tomba.\n---\n:::\n\n<!---E--->\n## E\n\n:::{profile} Elisa Rodenburg\n---\nroles: |\n    Book Dash Participant (2021)\ngithub: Elisa-on-GitHub\norcid: 0000-0001-6068-9792\nbio: |\n    I'm a Research Data Steward at the University Library of Vrije Universiteit Amsterdam. I support researchers with questions about Research Data Management and Open Science, and I try to write some good guidance for them as part of this. With a team of IT colleagues, I'm also trying to build tools that support researchers with RDM. With \\@Karvovskaya and other colleagues I built two RDM- and Open Science-themed Escape Rooms, hoping that they teach the player something nice *and* let them have fun.\nhighlights: |\n    Working together with the Scriberia artist Adrien Liard; meeting more of the community; creating my first pull request *and* having it merged; start contributing to this wonderful project.\nmore: |\n    In my free time, I bake :cake: and swim :swimming_woman: (not always in that order)\nquote: |\n    The Turing Way is not only a guidebook but also a lovely community of creative, talented and welcoming professionals. It was great to have the chance to join the Book Dash and contribute to the project. I hope to be back the next time!\n---\n:::\n\n:::{profile} Emma Karoune\n---\nroles: |\n    Steering Committee Member;\n    Book Dash Working Group;\n    Book Dash Planning Committee (2021-Present);\n    TPS Staff (2023-Present);\n    Book Dash Participant (2020-2022);\n    Trainers and Mentors Working Group (2022)\ngithub: EKaroune\norcid: 0000-0002-6576-6053\nbio: |\n    I'm a Research Associate and Community Manager of DECOVID at The Alan Turing Institute. I’m also a post-doctoral researcher working in the field of Environmental Archaeology and Palaeoecology. I have a PhD in Palaeoecology from the Institute of Archaeology, University College London. I am leading a project to improve the FAIRness of phytolith data. I am also working on a project with Historic England concerning the development of novel methodologies in phytolith research for application to British Archaeological remains.\nhighlights: |\n    I have really enjoyed working in such a collaborative way during the Book Dash. I have had interesting discussions concerning the accessibility of The Turing way, collaboration, communication and research in general with other contributors.\n    I have further developed my GitHub skills by working in collaboration with \\@paulowoicho, \\@malvikasharan and \\@KirstieJane to develop a chapter on 'Getting Started on Github'.\n    This improvement in my skills will really benefit my own personal research to develop my own collaborative working groups and teach others how to use these research tools.\n    At the May 2021 Book Dash, I enjoyed mentoring new contributors' contributions, reviewing pull requests and helping to run sessions during the Book Dash. It was great to work collaboratively to improve and publish a new chapter on 'Communicating with wider audiences' in the Guide for Communication.\n    I've been the lead author and organiser of the academic authorship chapter.\n    At the November 2021 Book Dash, I have been hosting sessions and helping to review pull requests #2160, #1919 and #2167. I've also worked with \\@MariaEriksson to plan and start writing an overview of sensitive data.\nmore: |\n    I try to work as openly as possible and a large part of my current research is developing easy and accessible to all collaborative and open ways of working. I am also working hard to bring together specialists in my field into a working group for Open Science so that we can work collaboratively towards subject-specific FAIR guidelines for phytolith data.\nquote: |\n    Such a great week! Supportive collaborative environment to produce some really quality contributions to this wonderful project.\n---\n:::\n\n:::{profile} Eric Daub\n---\ngithub: edaub\nbio: |\n    Eric is a data scientist and geophysics researcher and has appeared on several television programs and podcasts to discuss his research on earthquake occurrence in the Central United States. One challenge for presenting earthquake research is the tendency to overhype results on the topic of earthquake prediction. Eric used these media appearances to highlight the difficulties inherent in predicting earthquakes and explain why no reliable method exists to predict earthquakes accurately enough for societal actions to take place. From that discussion about overhyped results, he transitioned to explaining how his research showed that the chances of an earthquake had not changed due to recent changes in activity, as the fluctuations were *exactly* in line with what would be expected for a simple baseline level of risk. This outreach activity helped improve the understanding of the target audience on a complex, technical subject and debunk some of the commonly held assumptions about earthquake prediction and risk management.\nhighlights: |\n    I collaborated with a group of researchers from The Alan Turing Institute to draft a chapter on scientific outreach.\n---\n:::\n\n:::{profile} Esther Plomp\n---\nroles: |\n    University of Aruba Representative (2025-Present);\n    Book Dash Planning Committee (2021-Present);\n    TU-Delft Representative (2020-2025);\n    Book Dash Participant (2020-Present)\ngithub: EstherPlomp\norcid: 0000-0003-3625-1357\nbio: |\n    I'm a Researcher at the University of Aruba, Research Center.\n    Before this, I was a Data Steward at the Delft University of Technology, Faculty of Applied Sciences, in the Netherlands, supporting researchers with their data management and open science practices.\n    For my PhD research, I analysed human teeth for their isotopic/chemical composition to say something about human mobility patterns (fields of forensics, archaeology, osteology).\n    Next to the Turing Way I'm also involved with other teams, such as the [Open Research Calendar](https://openresearchcalendar.org/), [IsoArcH](https://isoarch.eu/) and [OLS](https://we-are-ols.org/).\n    I'm also interested in anything related to physical samples in research, and I'm a co-chair of the [Research Data Alliance Physical Samples Interest Group](https://www.rd-alliance.org/groups/physical-samples-and-collections-research-data-ecosystem-ig).\nhighlights: |\n    Thanks to the Turing Way I really learned how to work collaboratively using GitHub.\n    The Book Dash in February 2020 was a great kickstart to actually practice and directly apply these skills, which now allows me to contribute more confidently to other projects as well!\n    I primarily contributed to the Reproducible Research Chapter, to the Research Data Management section, and to the Research Infrastructure Roles.\n    I reviewed existing content and I'm working on adding a section on Data Management Plans and how to handle personal data.\n    I also made a [The Turing Way poster](https://doi.org/10.5281/zenodo.4263403) that I presented during a conference.\n    I hope to pay it forward and facilitate others in learning how to work with GitHub through The Turing Way or The Carpentries workshops.\n    I'm very grateful to be part of this great and inclusive community!\n    As a Working Group and Planning Committee member I do not focus on content as much as I'd like during Book Dashes. It is a pleasure to work together with the other Committee/Group members and ensure that the Book Dash is an exciting and inspiring event for the participants!\nmore: |\n    I think scientific research should be accessible to anyone who would like to learn and contribute.\n\n    I'm interested in anything related to Open Science and Research Data Management!\n    Please do reach out if you have a nice idea for the Research Data Management chapter in the Turing Way, or if you'd like to collaborate on things! :)\nquote: |\n    Being a part of the organising committee for the online Book Dashes was an exciting opportunity for me to look behind the organisation scenes and to be a part of an amazing team. The BookDashes themselves are absolutely amazing, especially the discussions and the 'show and tell' sessions!\n---\n:::\n\n<!---F--->\n## F\n\n<!---G--->\n## G\n\n:::{profile} Gift \"Gigi\" Kenneth\n---\nroles: |\n    Book Dash participant (2023)\ngithub: gigikenneth\norcid: 0000-0002-8239-7608\nbio: |\n    I am an AI Engineer passionate about AI ethics and building healthcare and social impact-focused products.\nhighlights: |\n    I participated in the May 2023 Book Dash, where I collaborated with \\@MayaAndersonGonzalez on the Data Feminism chapter of the book. I had a wonderful experience, met amazing people, shared ideas and resources, and I intend to continue working on the chapter with Maya and anyone else who’d like to join us!\nquote: |\n    Working on open projects like this helps put into perspective the importance of having diverse opinions and experiences represented in our tools, especially data & AI-driven ones. I really enjoyed collaborating on this and learned a lot!\n---\n:::\n\n:::{profile} Goodnews Sandy\n---\nroles: |\n    The Turning Way Translation team;\n    Book Dash participant (2023-2024);\n    Book Dash Planning Committee (Nov 2024)\ngithub: sandygudie\norcid: 0009-0002-3435-837X\nbio: |\n    I am a software developer and I enjoy contributing to open source projects for skill development and creating impact.\n    I am currently working with the African Union Commission, Addis Ababa, Ethiopia, were I support digital transformation implementation project and data policy framework particularly in monitoring, evaluation and learning activities.\n\n    I joined _The Turing Way_ to contribute to localization and participate in the Bookdash.\n    I also present at conferences to advocate for documentation and multilingualism in open science.\n    My presentations highlight the importance of accessible knowledge across diverse linguistic communities.\n    The conference presentations are available on Zenodo: [](doi:10.5281/zenodo.7844839) and [](doi:10.5281/zenodo.15004528).\n\n    I also contribute to related community, the Open Science Community Saudi Arabia to develop a bilingual [Open Innovation](https://moocs-client.netlify.app/) project that earned a grant from the Open Infrastructure Fund. \nhighlights: |\n    2023: This is my first Bookdash event and I am excited for the contribution I made during this period.\n    I collaborated with [Saranjeet Kaur Bhogal](#profile-saranjeet-kaur-bhogal) to add content to the [hybrid collaboration](https://github.com/alan-turing-institute/the-turing-way/pull/2808) chapter.\n    \n    2023: The event was enlightening, I learned a lot about The Turing Way community.\n     \n    2024: Thanks to the Bookdash, I was able to make contributions to the localisation of the _The Turing Way_.\n    I got to learn about the challenges and the effort to improve the translation process.\n    I contributed to writing documentation on the history of localization activities in the _The Turing Way_.\n    I wrote on the approaches, achievements and challenges.\n     \n    2024: So excited for the lessons and connections, I met a new friend [Abasi-amefon Affia](#profile-abasi-amefon-obot-affia) from my home town.\n     \n    Nov 2024: I joined the planning committee to co-organise the November 2024 Book Dash.\n    It was a great experience being part of the careful planning, clear communication, and shared responsibility that made the event successful.\n    I especially appreciated the strong sense of shared ownership in our meetings including working together on timelines, roles, and deliverables in a way that reflected trust and collaboration.\n    \nquote: |\n     Open-source communities have become hubs for innovation, offering inclusive environments where developers, designers, researchers, and practitioners can learn, collaborate, and contribute to real-world projects.\n     These communities provide professional development opportunities that go far beyond traditional learning environments.\n---\n:::\n\n:::{profile} Giulia Tomba\n---\nroles: |\n    Book Dash participant (2024)\ngithub: giuliatomba\norcid: 0009-0003-0302-2491\nbio: |\n    I'm a Daphne Jackson Fellow at the Alan Turing Institute within the Tools, Practices and Systems programme. I collaborate with the AI for Multiple long-term conditions Research Support Facility (AIM RSF) and I focus on issues related with the responsible development of AI for healthcare. I am particularly interested in co-design and public and patient involvement in research. In the past, I worked for about 10 years in the academia as a computational biophysicist/biochemist.\nhighlights: |\n    It was a great opportunity to have some dedicated time to focus on what content was already in the Turing Way about communication with the public, and to research material related with arts-based forms of communication. I didn't manage to get down to writing during the Book Dash, but I hope to use the content I have found and soon contribute a section which may be relevant for Public and Patient Involvement too. It was also very exciting to work with the Scriberia artist on a new image!\nquote: |\n    Thanks to the organisers for putting together such a relaxed and welcoming event!\n---\n:::\n\n:::{profile} Gule Saman\n---\nroles: |\n    Book Dash participant (2024)\ngithub: gulesaman\norcid: 0000-0001-6347-9336\nbio: |\n    Dr Gule Saman is an Associate Professor in the School of Engineering and Physical Sciences at Heriot-Watt University, Edinburgh.\n    She contributes to the design and delivery of the Data Science Graduate Apprenticeship programme, focusing on supporting diverse student cohorts through innovative personal tutoring and varied assessment practices.\n    Her research interests include work-based learning, inclusivity in STEM, and active learning for student engagement.\nhighlights: |\n    I contributed one chapter \"Embedding Data Science Across Disciplines\" (June 2024), co-authored with Denise Bianco, which has been published.\n    One chapter is in progress: \"Lesson & Curriculum Development\" (June 2024), with Denise Bianco and Thao Do.\nquote: |\n    Jim Rohn reminds us that we are the average of the five people we spend the most time with.\n    The people around us shape how we think, learn, and grow.\n    Change doesn’t happen when ideas are perfect but when they’re shared and refined together.\n    In both data and learning, context gives meaning — and inclusive teaching ensures that every learner’s context and value have space to shine\n---\n:::\n\n<!---H--->\n## H\n\n:::{profile} Hannah Nicholls\n---\nroles: |\n    Book Dash Participant (2021)\ngithub: hlnicholls\norcid: 0000-0002-3480-7852\nbio: |\n    I am a PhD student contributing to The Turing Way to develop writing about reproducible research practices. I have a BSc in biomedical science and a background in wet lab cardiovascular research. My PhD is in applying machine learning to prioritise most likely causal disease genes from genome-wide association studies.\nhighlights: |\n    Collaborating with others to build something new as a contribution to The Turing Way, and collaborating with others to review and support their work. Understanding the inner workings of The Turing Way via navigating within its GitHub. Also I got to help and watch a really cool illustration being made!\nquote: |\n    Taking part in the Turing Way Book Dash was one of the first times I've done collaboratively work over an extended period of time and it was such a great experience! It allowed me to try out new skills and really build confidence in what I was doing, I feel really encouraged to continue contributing to The Turing Way!\n---\n:::\n\n\n:::{profile} Heidi Seibold\n---\nroles: |\n    Core Member (2020-2022);\n    Book Dash Participant (2020)\ngithub: HeidiSeibold\norcid: 0000-0002-8960-9642\nbio: |\n    I develop machine learning methods to figure out which patients react well to certain treatments and implement these methods in R.\n    My passion for open and reproducible research has led me to join the Turing Way community. I am involved in meta-research projects (research about research), and I support, teach and contribute to open projects such as The Turing Way.\n    My work for the *Journal of Statistical Software* includes reproducibility checks.\n    We only publish papers which are fully computationally reproducible.\n    I also work on making our machine-learning software more user-friendly, reusable and extensible.\n    Together with a PhD student, I am thinking about how to use data from hospitals to help doctors and patients find the right treatment for each patient.\nhighlights: |\n    I work in data science and open and reproducible research are the things I think and care about the most.\n    So to me, it only made sense to get involved.\n    Plus: the community seemed amazing!\n\n    To me The Turing Way is a role model when it comes to collaborative, distributed work.\n    I learned so much just by participating in the book sprint and seeing how Malvika, Kirstie and everyone else contributed to providing an extremely welcoming and at the same time productive space.\n    I took what I learned and tried to apply it in other contexts such as teaching.\n    I will continue to do so.\n\n    The Turing Way also inspired me to think about new ways we could teach people about open and reproducible (data) science.\n    I am currently thinking a lot about how we could use the content from The Turing Way and turn it into a course.\n    This idea was also part of an application, where I proposed to start a new group on *Open AI*.\n\n    Specifically, I have co-authored these chapters: [Research Compendia](https://book.the-turing-way.org/reproducible-research/compendia.html), [File Naming Convention](https://book.the-turing-way.org/project-design/info-management/filenaming/), and reviewed many contributions.\n\n    I regularly recommend The Turing Way as a resource.\n    Both for learning more about reproducible data science and also when discussing specific topics.\n    I think that people are taking it on and reading it :)\nmore: |\n    First, I would like to continue to help create content, review others' content and be helpful in any way I can.\n    Sometimes I like to look at really old issues and pull requests for example.\n    Reviving such old, often almost finished bits, is very rewarding.\n\n    Apart from that I also have a bigger, long-term idea for The Turing Way.\n    I personally am not a huge fan of reading.\n    So books are not my favourite way to learn.\n    In the past years, I learned a lot by listening to others in talks, podcasts, videos, and of course conversations.\n    So for me, it is only a natural next step for The Turing Way to become more than a book.\n    It could be an ecosystem, with the book as its basis.\n    And -- if we decide to go that route -- I would like to be a part of it.\n---\n:::\n\n<!---I--->\n## I\n\n:::{profile} Iman Al Hasani\n---\nroles: |\n    Book Dash Participant (2022)\ngithub: Imanalhasani\norcid: 0000-0001-9998-772X\nbio: |\n    Iman Al Hasani is interested in computational applied statistics. She is particularly interested in computational statistics including statistics in digital marketing, statistical modelling, statistical machine learning, simulation, data mining and data visualization. She was the main supervisor 3 projects:\n\n    - Opinion Mining and Sentiment Analysis for Arabic Tweets about Unemployment Issue in Oman.\n    - A comparison of Term weighting schemes with application to Thesis classification.\n    - Propensity Score Modelling for Marketing Campaigns\nhighlights: |\n    I am impressed with the Turing Way project and its collaborative principle. I enjoyed working with the Arabic translation team using Crowdin and creating a mini Arabic version of the Turing Way book. My special thanks to the super-talented lady Batool. I’m so glad I've got to know her. Through her, I knew Rstats communities, open-sciences communities and amazing, talented and innovative people; So Grateful!\nmore: |\n    Grateful working with some science/tech/Rstats communities.\nquote: |\n    The Turing Way Project and Thinking illustration with Scriberia are AMAZING. Very thankful had a chance this year to attend the Book Dash!\n---\n:::\n\n:::{profile} Irene K\n---\nroles: |\n    Book Dash Participant (2020)\ngithub: irenekp\nbio: |\n    I'm an undergraduate student majoring in Information Science and Engineering. While short, my journey with Data Science and Data Management has been varied and I've loved watching how a single concept can mould into so many different disciplines! I have been able to work with data science as an RA for a couple of projects that focused on different aspects of Social Network Analysis. I've also been able to follow data management and related practices during my internships at a fintech and a telecom company.\nhighlights: |\n    Turing Way was my first foray into Open Source, and I have found it extremely helpful in learning both about general GitHub and open source practices as well as being part of a moving and collaborative community. I especially loved being part of an extremely multidisciplinary group of people, really shows me the real span of Data Science!\n    The ethics book has been a great source of interest for me as it encompasses many of the issues I both grappled with, debated and deliberated upon extensively during my own data science projects.\n    During my time working on the Data Anonymization Chapter (Issue: #1578, Pull Request: #1579 ) I managed to read more extensively about anonymization and I found answers to many of the questions that had previously bothered me.\n    I really hope that the work we've done here to consolidate all these ethical guidelines will help make practising data science with a strong ethical basis and clear moral conscience more easy and accessible.\n---\n:::\n\n:::{profile} Irma Hafidz\n---\nroles: |\n    Book Dash 2023 participant\ngithub: irhafidz\norcid: 0000-0002-9148-712X\nbio: |\n    I am a PhD student from Loughborough University. Formerly, I am [a junior lecturer/ researcher](https://scholar.its.ac.id/en/persons/irmasari-hafidz) for about 8 years in Dept of Information Systems, Institut Teknologi Sepuluh Nopember, in Indonesia.\nhighlights: |\n    This is my first Turing Way experience and I had so many learning experience how to create a community with very meaningful, structured way of working. Not only that, the creative writing session is incredibly inspiring and has improved my critical thinking and expression of ideas.\nmore: |\n    I helped a bit for the team of [Data Hazard](https://datahazards.com/), discussed and learn a lot from the project owner \\@NatalieZelenka and learn from the learning lesson training for Data Hazards from \\@Susana465 and \\@CeilidhWelsh The Data Hazards [alan-turing-institute/the-turing-way/issues/3096](https://github.com/alan-turing-institute/the-turing-way/issues/3096) is a new chapter section for the Turing Way e-book.\n    In line with my contributions so far, I am extremely passionate about working on an ethical framework for Data Science, seeing as a lot of it focuses on exposing patterns that could easily be invasive, I really think an ethical approach to it is the only way to keep practising it sustainably in the long term.\n    Science Communication is another one of my key areas of interest, I've been combining it with my love for sustainable practices (be it data science or water resource management) so far to research and write articles that I hope would inform and educate more people! I hope to add Data Visualization to this combination soon!\n    I intend to keep working at the crossroads of Data Science and SciComm for the foreseeable future!\n---\n:::\n\n:::{profile} Isabel Birds\n---\ngithub: IsabelBirds\norcid: 0000-0001-8173-3879\nbio: |\n    Isabel is a PhD candidate at the University of Leeds working on dissecting the function and molecular evolution of long non-coding RNAs Supervised by Dr Julie Aspden, Dr Mary J O’Connell and Dr David Westhead.\n    She has been interested in molecular evolution and the applications of bioinformatic techniques throughout her degree and developed these interests while undertaking research projects in the Aspden and O’Connell labs.\n    She also has experience in scientific research from a funder perspective, gained during her year in industry and numerous summer internships with Yorkshire Cancer Research.\nhighlights: |\n    After learning about the Turing Way I was inspired to create a site aimed at a wider audience: [Remote Computational Project Resource](https://isabelbirds.github.io/Remote-Computational-Project-Resource/welcome.html). The Turing Way tutorials helped me to set up my first Jupyter Book, helped me to create the site in a way that is open to contributions, and made sharing my work openly less scary! The Turing Way also pops up a few times in the resources listed.\n    The resource aims to make starting a computational project less overwhelming by curating links to tutorials and online textbooks. Skills such as file management or asking for help effectively are also highlighted, along with entertaining things like podcasts as a reminder that research can be fun!\n---\n:::\n\n:::{profile} Ismael Kherroubi Garcia\n---\nroles: |\n    Contributor to Guide to Ethical Research (2020-2021);\n    Book Dash Participant (2020)\ngithub: Ismael-KG\norcid: 0000-0002-6850-8375\nbio: |\n    Former Ethics Research Assistant at the Alan Turing Institute.\n    I have a BSc in Business Management and Administration and have studied philosophy of the social sciences at the London School of Economics & Political Science.\n    I am also an associate member of the Chartered Institute of Personnel and Development (CIPD).\nhighlights: |\n    Since my undergraduate degree, I have worked in sales in fintech, HR in arts charities, and in research.\n    I think my highlight is that I've got a great background as a very adaptable generalist!\n    I really enjoyed working alongside [Laura Carter](https://github.com/LauraCarter) and [Sophia Batchelor](https://github.com/BrainonSilicon) to build a community around the Guide for Ethical Research.\n    Personal quote: \"Research Ethics is complex, and two related concepts are Responsible Research and Innovation (RRI) and Research Integrity. Depending on whether we wear an RRI hat or research integrity goggles, we will encounter different research ethics questions. But it is important to wear the two at all times. I call this Steampunk Research Ethics.\"\nmore: |\n    I am really fascinated by philosophical discussions about the social sciences, so I love the thought of questioning what an open science culture looks like and how to get there!\n    You might find me putting some of my learnings to work in an [online book on the history of research ethics](https://github.com/Ismael-KG/A-History-of-Research-Ethics).\n---\n:::\n\n<!---J--->\n## J\n\n:::{profile} Jennifer Ding\n---\nroles: |\n    Core Member, Practitioners Hub (2023-Present);\n    TPS Staff (2022-Present);\n    Book Dash Participant (2022-2023)\ngithub: dingaaling\norcid: 0000-0002-8266-4358\nbio: |\n    Jennifer is a Research Application Manager in the AI for Science and Government programme at the Alan Turing Institute, where she focuses on Digital Twins projects in Data-Centric Engineering and Urban Analytics. She is also a data scientist, with experience conducting R&D and creating applied AI products at startups such as Thresher and Numina, which acquired her first startup ParkIT. Her research interests lie in AI ethics and privacy by design, and she has a personal interest in small data projects and data visualisation.\nhighlights: |\n    Working collaboratively with Book Dashers and artists from different countries! Contributing to a translation update was particularly cool, as this will make the Turing Way available to even more people around the world.\n---\n:::\n\n:::{profile} Jessica Scheick\n---\nroles: |\n    Book Dash Participant (2021)\ngithub: JessicaS11\norcid: 0000-0002-3421-4459\nbio: |\n    Jessica is a glaciologist, open(science, software, source) enthusiast, remote sensor, and lifelong lover of snow, winter, and the outdoors.\n    She is currently a Research Assistant Professor at the University of New Hampshire (US), where she works on glaciological research, research-enabling open-source software projects, and climate justice and diversity, equity, and inclusion initiatives.\n    She is the lead developer and maintainer for the Icepyx library and regularly helps run Hackweeks with the University of Washington's eScience Institute.\nhighlights: |\n    I was thrilled when I first discovered The Turing Way and delighted to have the opportunity to contribute during the Nov 2021 Book Dash after attending Collaboration Cafes for about a year.\n    I ended up working on a few different projects with multiple collaborators, but I think the highlight of the whole experience was brainstorming a visualization and then watching the Scriberia artist bring our idea to life!\n---\n:::\n\n:::{profile} Johanna Bayer\n---\nroles: |\n   Core Member, Book Dash Committee (2023);\n   Google Summer of Code Mentor (2023);\n   Book Dash Participant (2022-2023)\ngithub: likeajumprope\ntwitter: likeajumprope\norcid: 0000-0003-4891-6256\nbio: |\n    Johanna is a PhD candidate in computational neuroscience at the University of Melbourne, Australia and also an undergrad student in computer science at the University of Hagen, Germany. Johanna’s PhD projects focus on the identification of neuroimaging biomarkers for depression in large structural neuroimaging data using a machine learning  brain charting method. She also works on developing additional methods to make those analyses more reproducible by compensating for  biases caused by hard- and software differences in neuroimaging scanners. Johanna is also secretary of the open science group of the [Organisation for Human Brain Mapping](https://ossig.netlify.app/#OSSIG_team) and she has helped organise [brain-related hackathons in Australia and Asia](https://brainhack-aus.github.io/global2021/)\nhighlights: |\n    working collaboratively via Zoom, the discovery of the cuckoo clock (already introduced to my lab), meeting people from all over the world and learning about their lives and what brought them to the Turing Way.\nmore: |\n    Loves cats & coffee\nquote: |\n    It was totally worth staying up late!\n---\n:::\n\n:::{profile} Jim Madge\n---\nroles: |\n    Steering Committee Member (Secretary-Elect);\n    Infrastructure Working Group Member (2023-present);\n    Infrastructure Working Group Chair (2025);\n    Book Dash Participant (2022-2023);\ngithub: JimMadge\norcid: 0000-0001-6044-164X\nmastodon: JimMadge@fosstodon.org\nwebsite: https://blog.jmadge.com\nbio: |\n    I'm a senior research software engineer at The Alan Turing Institute.\n    I studied chemistry at Durham University for my master's and PhD.\n    I've been passionate about Linux and FOSS since being introduced to both in computational chemistry courses.\n    On the Infrastructure Working Group, I help to manage and explain the technology that makes _The Turing Way_ work.\n\n    Outside of _The Turing Way_ I contribute to Jupyter Book, All Contributors and help organise the FOSDEM Open Research Devroom.\nhighlights: >\n    Being asked to join/found/co-lead the Infrastructure Working Group.\n    It is great to know that your skills and thoughts are valued 🥹.\n---\n:::\n\n:::{profile} José María Fernández\n---\nroles: |\n    Book Dash Participant (2020)\ngithub: jmfernandez\norcid: 0000-0002-4806-5140.\nbio: |\n    I'm a senior research engineer from [INB](https://inb-elixir.es) coordination unit, [BSC](https://bsc.es), ELIXIR Spain. With an MSc in Computer Science, I have been working in bioinformatics since 1999, involved in very disparate projects over these years. Currently, I'm very involved in technical and scientific benchmarking, reproducibility and workflow execution abstractions, among other topics.\nhighlights: |\n    I have enjoyed meeting so warm and dynamic community around The Turing Way!\n    I have mostly contributed to reviewing open Pull requests and networking with the community members.\n---\n:::\n\n:::{profile} Julien Colomb\n---\nroles: |\n   Book Dash Local Hub Co-Host: Netherlands (2023);\n   Core developer of Training Materials (2022-2023);\n   Book Dash Participant (2022-2023)\ngithub: colomb\norcid: 0000-0002-3127-5520\nbio: |\n    Former neuro-geneticist (10 years of research on fruit fly memory and behaviour), I have been more recently interested in data analysis and management, as a specialisation for my interests in open science (open research). I am presently working on ways (technical and social) to implement the principles of FAIR and open data in the lab workflow and ways to foster collaboration between researchers via the SmartFigure Gallery project.\nhighlights: |\n    Structure of the book and its RDM part, debugging figure views, content: version control for datasets + git for the whole research project data.\nquote: |\n    The Turing Way is getting my number one source of information, on top of being my primary source of figures ;).\n---\n:::\n\n:::{profile} Jyoti Bhogal\n---\nroles: |\n    Book Dash participant (2024-2025)\ngithub: jyoti-bhogal\norcid: 0000-0002-6289-0737\nbio: |\n    [Jyoti Bhogal](https://jyoti-bhogal.github.io/about-me/) is and [SSI 2025 Fellow](https://www.software.ac.uk/fellowship-programme/jyoti-bhogal) and is working as a Community Manager at Research Software Alliance. She has a Master’s degree in Statistics. Her career journey spans roles such as a software quality engineer, data analyst, and data modeler. She is also an advocate for open-source and open science. In addition, she is the co-founder and co-lead of the [RSE Asia Association](https://rse-asia.github.io/RSE_Asia/) and a graduate of the [Community Engagement Fundamentals (CEF)](https://badgr.com/public/assertions/SHsdenPsRfCIphr4pvso3A?identity__email=bhogaljyoti1@gmail.com) course by the Center for Scientific Collaboration and Community Engagement (CSCCE). She is also an active member of several international communities such as the R-Ladies Global, Open Life Science, and the International Council of RSEs. These communities have played an integral part in her professional development and inspired her current work.\nhighlights: |\n    I appreciate the welcoming and highly collaborative nature of The Turing Way Community. My experience of Book Dash was full of people ready to promptly advise/guide each other for any process-related queries. The social sessions like the meme-making workshop, Scriberia artist sessions, and the Share-outs on the event's last day were intriguing.\n\n    I had initially intended to work on one of the `good-first-issues` of adding a colour palette to the Style Guide. However, during the Onboarding sessions, I met some people who also wanted to work on a topic that I was interested in. Working together helped us bring up a new chapter for 'Personal Websites' under the Guide for Communication. Team work is dream work!\nquote: |\n    I hope to contribute more to the chapter through Collaboration Cafe or the upcoming Book Dash in 2025!\n---\n:::\n\n<!---K--->\n## K\n\n:::{profile} Kalle Westerling\n---\nroles: |\n    Book Dash Participant (2023)\ngithub: kallewesterling\norcid: 0000-0002-2014-332X\nbio: |\n    Dr Kalle Westerling is a Research Application Manager at the [Turing Research and Innovation Cluster in Digital Twins (TRIC: DT](https://www.turing.ac.uk/research/research-projects/tric-dt)). He works with the TRIC: DT team of scholars to aid them in providing open and reproducible computational and social tools that are accessible to the UK research and innovation communities, keeping the user perspective prioritised in the development of research software, and to ensure the longevity, sustainability, and collaborative open-source advancement of these vital tools.\n    Prior to joining the Alan Turing Institute, Kalle was a Research Software Engineer with the [Living with Machines](https://www.turing.ac.uk/research/research-projects/living-machines) collaboration between the British Library, the Alan Turing Institute, and researchers from a range of UK universities. In that role, he developed new digital research methods, tools and ways of working with historical collections at scale.\n    Kalle holds a PhD in Theatre and Performance Studies from The Graduate Center, City University of New York (CUNY), where he visualised and analysed networks of marginalised, itinerant nightlife performers in the 1930s. In the United States, Kalle managed the Scholars program at HASTAC and the Digital Humanities Research Institute at CUNY, both efforts across numerous higher education institutions, aiming to build nation-wide infrastructures and communities for digital humanities skill-building.\nhighlights: |\n    I am excited to become more involved with The Turing Way community after the inspiring experience of this Book Dash.\n    During the event, I learned a tremendous amount about JupyterBook. Learning more around the syntax for referencing, adding images, and captions was particularly good for me :)\n    This experience has definitely empowered me to dive into other open-source projects, explore more hackathons, and engage in similar collaborative efforts across the open-source community.\n    I also learned more about how to manage the all-contributors bot... and when to give up and just re-start completely!\n    I reviewed more pull requests than ever before in such a short span — super fun!\n    My role also included a lot of cheering on from the sidelines, a supportive effort to encourage the closure of more pull requests... I love to see a closed PR!!\n    Using a Miro board to restructure an entire section of The Turing Way was a big highlight too. It provided an opportunity to collaborate hands-on with colleagues I hadn't worked with closely before. It was not only productive but also brought, for me, a sense of teamwork and community.\nquote: |\n    I had an absolutely exhilarating time participating in The Turing Way Book Dash!\n    It was a hands-on, engaging experience where I learned how to embed images into the pages, witnessing the book evolve in real-time with the content we were adding.\n    What made the event stand out was its warm, inviting atmosphere — it transformed my usual solitary days spent in my home-office into a vibrant hub of collaboration.\n    I felt like I was sharing my space with this amazing global community of brilliant minds.\n    It was an unforgettable experience that not only enhanced my technical skills but also provided a sense of connection and camaraderie that I will remember especially, from this week together.\n---\n:::\n\n:::{profile} Katriona Goldmann\n---\nroles: |\n    Book Dash Participant (2024)\ngithub: KatrionaGoldmann\norcid: 0000-0002-9073-6323\nbio: |\n    I am a research data scientist at the Alan Turing Institute. My current work focuses on using machine learning for biodiversity monitoring, particularly in studying moth populations. Alongside my research and software engineering work, I am committed to fostering best practices in diversity and inclusive hiring within research technical professions.\nhighlights: |\n    Building connections with participants from varied expertise and interests allowed me to learn from their experiences and engage in meaningful discussions on accessibility and inclusivity.\n    Additionally, the Scriberia session provided a unique way to visualize our ideas, showing how different perspectives could bring new dimensions to our work.\n---\n:::\n\n:::{profile} Kim De Ruyck\n---\nroles: |\n    Book Dash Participant (2020)\ngithub: kderuyck\norcid: 0000-0001-9921-644X\nbio: |\n    Since 2016, I have managed the Belgian ELIXIR Node (we pursue FAIRification of research data and facilitating reproducible analysis, through activities in data management and analysis as well as training; we also focus on domain-specific services in plant sciences, human health and proteomics). I was trained as a Bioscience engineer, have a PhD in Medical Sciences and performed medical genetics research for many years.\nhighlights: |\n    I started familiarizing myself with the GitHub environment and learned how to collaborate through it. It was especially nice to meet the vibrant community working together on the Turing Way!\n    Specifically, I have authored a subchapter on [Research Data Management Toolkit](https://book.the-turing-way.org/reproducible-research/rdm/rdm-resources/#research-data-management-toolkits).\n---\n:::\n\n\n<!---L--->\n## L\n\n:::{profile} Laura Acion\n---\nroles: |\n    Book Dash Participant (2020)\ngithub: lauracion\norcid: 0000-0001-5213-6012\nbio: |\n    I am a Biostatistician who transitioned to Data Science. I work at the University of Buenos Aires (Argentina). I specialize in several areas of Health Sciences.\n    I am passionate about changing the way applied stats is taught and practised. I have so much to learn and do; it seems I will need extra lives to accomplish all. More about me [here](https://lacion.rbind.io).\nhighlights: |\n    I am currently co-developing a chapter on \"Leadership in Data Science\" and supporting the Spanish community in translating and getting involved in the project.\n    I hope this is my first of several Book Dashes! It was an outstanding experience. Thank you so much, Malvika and Kirstie, for brilliantly organizing and coordinating this event! ✨ 💖\n---\n:::\n\n:::{profile} Laura Carter\n---\nroles: |\n    Contributor to Guide for Ethical Research (2020-2021);\n    Book Dash Planning Committee (2021-2022);\n    Book Dash Participant (2020)\ngithub: LauraCarter\norcid: 0000-0002-4285-1140\nbio: |\n    I'm a PhD candidate in the Human Rights Centre at the University of Essex, UK, researching the human rights implications of the use of data-driven technologies in the UK public sector, focusing on gender stereotyping and gender discrimination. Prior to my PhD, I worked as a human rights researcher for almost a decade, specialising mostly in human rights, sexual orientation and gender identity. I carried out field research in Europe and sub-Saharan Africa covering topics including homophobic and transphobic hate crimes, criminalisation of homosexuality and of sex work, legal gender recognition for trans people, and health rights for intersex people.\nhighlights: |\n    I'm really enjoying learning more about Open Science practices and communities! I'm excited to be part of an [OLS-2](https://openlifesci.org/) mentee cohort alongside [Ismael Kherroubi Garcia](https://github.com/Ismael-KG) and [Sophia Batchelor](https://github.com/BrainonSilicon), working on the _Guide to Ethical Research_: if you're interested in building a community of thoughtful, reflective, ethical data scientists, please come and join us!\nmore: |\n    I'm interested in feminist and queer research methodologies and in interrogating structures of power and systems of categorisation. Throughout my career, most of my work has been on understanding these systems, how they work, and how they harm: so that they can be dismantled!\n    More information about me on my [website](https://lauracarter.github.io/).\nquote: |\n    I'm not from a tech field but I've learned so much about GitHub as a tool for collaborative working: thanks so much to everyone who was part of the November 2020 book dash for all your useful advice!\n---\n:::\n\n:::{profile} Léllé Demertzi\n---\nroles: |\n    Research Project Manager, The Turing Way Practitioners Hub;\n    Community Management Working Group Co-Chair (2025);\n    Book Dash Participant (2024);\n    TPS Staff (2024-Present), Project Delivery Team member\ngithub: LelleDi\norcid: 0009-0009-2782-0408\nbio: |\n    Léllé is the Research Project Manager for The Turing Way, since September 2024. An architect by training, she has previously worked in cultural management in art institutions around the world. She is Organiser for the AI&Arts Interest Group at The Alan Turing Institute, where she can bridge her art practice with computational methods, as well as promote scholarship and engagement activities in the cross-disciplinary field.\nhighlights: |\n    So looking forward to the upcoming **November 2024 Book Dash**, it will be my first one! I'm really excited to support people from around the world to contribute to the Turing Way\n    I am also supporting the 2024 Cohort of The Turing Way Practitioners Hub, with 20 participating companies and 50 Experts in Residence.\nquote: |\n    As a new member, I am eager to get to know the community and explore new spaces of collaboration within the creative sector.\n---\n:::\n\n:::{profile} Lena Karvovskaya\n---\nroles: |\n    Core Member, VU Amsterdam Representative (2021-Present);\n    Book Dash Planning Committee Member (2022-2023);\n    Book Dash Participant (2021)\ngithub: karvovskaya\ntwitter: LangData\norcid: 0000-0001-7777-5603\nbio: |\n    Lena Karvovskaya is the Community Manager for Research Data Management and Open Science at the Vrije Universiteit Amsterdam (VU Amsterdam).\n    She works with support staff and researchers to facilitate organizational change towards a reproducible and transparent research culture.\nhighlights: |\n    I've been excited about the Turing Way for a long time. I am so happy and grateful that I could take part in the book dash. The wonderful team made me feel that every second of my time there was very well spent. With some help, I managed to do my first proper pull request! Yay! I loved our interactions, our Pomodoro sprints, and the sharing of personal stuff. A special highlight was an opportunity to work with an artist to visualize my ideas. I feel proud that I contributed to this amazing project.\nmore: |\n    I will be carrying on working on the Peer Review chapter and hope to collaborate with \\@vhellon \\@EstherPlomp and other participants.\n---\n:::\n\n:::{profile} Liz Hare\n---\nroles: |\n   Core Member, Accessibility Working Group Co-Lead (2023);\n   Book Dash Committee Member (2023-Present);\n   Book Dash participant (2022-2024)\ngithub: LizHareDogs\norcid: 0000-0002-3978-2543\nbio: |\n    I'm a quantitative geneticist providing statistical analysis to working dog organizations, and the Director of Data Management and Open Science at the [ManyDogs Project](https://manydogsproject.github.io).\n    I work on genetics and general statistical analysis for working dog programs and do most of my work in R.\n    As a blind person I've become interested in R and open science, working to ensure inclusivity on many levels but particularly accessibility for scientists with disabilities.\nhighlights: |\n    As a first-timer in 2022, it was a great chance to get a more intensive introduction to how the Turing Way Project works.\n    Terrific, collaborative discussions on how to make the book, the process of making and maintaining the book, and open science in general, more inclusive. Also planning a Guide to Accessibility -- scoping out and outlining what it would cover.\n\n    In 2023, I've been working on accessibility with the TTW leadership, both for the book itself and for the ways we work together on the book. We discussed The Turing Way's accessibility policy and a new Guide for Access, and I began a chapter on writing effective alt text.\n\n    In 2024, I have continued being a Book Dash Organising Committee member. I organised a Fireside Chat related to accessibility for the June 2024 event, and for the November 2024 Book Dash, helped with onboarding and planning with new participants, editing the accessibility policy (issue 3145), initiated reviews of a new chapter (issue 3930), and hosted three contribution sessions.\n---\n:::\n\n:::{profile} Louise Bowler\n---\nroles: |\n    Project Delivery Team Member (2019-2020);\n    Book Dash Participant/Helper (2020)\ngithub: LouiseABowler\norcid: 0000-0002-4910-9205\nbio: |\n    I’m a Research Data Scientist in the Alan Turing Institute's Research Engineering Group.\n    I have a degree in Physics from Imperial College London, after which I joined the Life Sciences Interface Doctoral Training Centre at the University of Oxford.\n    I worked on an interdisciplinary PhD project that combined mathematical modelling, cardiac electrophysiology and safety pharmacology and moved over to the Turing afterwards.\n    Since then, I've worked on a range of projects spanning synthetic data, data visualisation, and of course, the Turing Way!\nhighlights: |\n    I got involved with _The Turing Way_ via case studies of reproducibility in academic projects - essentially, I was a reproducibility detective during the initial phase of the project! :female_detective: The Turing Way was my first experience of working with collaborators from so many different institutions, and the community around this project has been a real highlight for me. My official time on the Turing Way has come to an end, but I still enjoy keeping in touch through the Book Dashes and other events.\nmore: |\n    As scientists, we share our work via papers and talks, but the intricacies of precisely *how* we implement an analysis pipeline or novel algorithm can be very difficult to convey in those formats.\n    We're currently seeing changes in the default way we want to publish our papers through the open access movement, and I'd love to see a similar change in mindset happen about the data that we collect and the code that we develop so that others can reproduce, learn from and build upon our work.\n    I want to ensure that the route to sharing these types of research output is open to everyone, regardless of their level of programming experience - the route might not always be straightforward, but it's a great opportunity to share and learn from our experiences!\n    So many research projects now contain computational elements, yet it is easy to forget that not everyone has access to training in software engineering, or has a group of colleagues with such interests.\n    If we say that we want people to make their research open and reproducible, we need to give them the tools they need to be confident in doing so.\n    I see the Turing Way as the means of bridging that gap, by providing a friendly, practical and helpful guide for researchers at all stages of their careers.\n---\n:::\n\n:::{profile} Lucy Stephenson\n---\nroles: |\n    Book Dash participant (2024)\ngithub: lucyjstephenson\norcid: 0000-0003-2489-7476\nbio: |\n    I'm a Scientific Data Coordinator at the Polar Data Centre hosted at the British Antarctic Survey. The Polar Data Centre is part of the NERC Environmental Data Service. I help UK polar scientists throughout the research data lifecycle, from data management planning to making data open access with a DOI. I also work with the other NERC data centres to harmonise policies and processes. My background is as a marine biologist and I have a Code First Girls Data Science qualification.\nhighlights: |\n    Participating in the first cohort of the TW Practitioner's Hub. Learning how to work collaboratively using GitHub - before I had only collaborated on projects with <5 participants. Hearing from other community members about the ways the TW has helped them professionally.\nmore: |\n    I am interested in research data management, collecting data from remote places, data management planning, reusable code publishing, environmental data science\nquote: |\n    The Turing Way community keeps me coming back - I learn so much from everyone I interact with!\n---\n:::\n\n:::{profile} Luisa Cutillo\n---\nroles: |\n    Book Dash participant (2024)\ngithub: luisacutillo78\norcid: 0000-0002-2205-0338\nbio: |\n    I am an Associate Professor in the Department of Statistics at the School of Mathematics, University of Leeds and have a very multidisciplinary background. I received my PhD in applied mathematics from the University of Naples “Federico II”. I recently joined the board of director of Women In Machine Learning. My main role at UoL is to be Programme Manager for the following Masters programmes in the School of Mathematics:\n    Data Science and Analytics MSc Statistics MSc, Statistics with Applications to Finance MSc.\nhighlights: |\n    This was my first bookdash, it was very inclusive and collaborative and I feel like I want to contribute much more!\nquote: |\n    I believe that sharing knowledge is the way to grow a better community and the bookdash was a great example of this.\n---\n:::\n\n\n<!---M--->\n## M\n\n:::{profile} Mahwish Mohammad\n---\nroles: |\n    Book Dash Participant (2022)\ngithub: Rainiefantasy\nbio: |\n    I am a Data Wrangler based at The Alan Turing Institute.\nhighlights: |\n    It's been a wonderful experience contributing to The Turing Way while meeting inspiring people from diverse backgrounds along the way.\n    I really enjoyed the opportunity to work closely with my colleague Rachael Stickland to reflect and encapsulate our image of a 'Data Wrangler' in our own [Data Wranglers Overview](https://book.the-turing-way.org/collaboration/research-infrastructure-roles/data-wrangler.html) sub-chapter.\n    These Book Dashes are a great way to encourage open collaboration, sharing ideas and working on helpful tools to make things such as open science and reproducibility more practical and friendlier for the wider community.\n---\n:::\n\n:::{profile} Malvika Sharan\n---\nroles: |\n    Steering Committee Member;\n    Data Science Without Border Representative (2024-2025);\n    Co-lead Investigator, Project Delivery Team member (2021-2025);\n    Book Dash Organiser: 2020-2023\ngithub: malvikasharan\norcid: 0000-0001-6619-7369\nbio: |\n    I am a co-lead of The Turing Way, which is part of my responsibility as a TPS Senior Researcher. I also lead a team of Research Community Managers at the Turing.\n    I was previously a community manager (2019-2021).\n    I co-founded the [OLS (previously Open Life Science)](https://openlifesci.org/) training and mentoring program in 2019 to help enhance access to Open Leadership tools for individuals interested in building communities around their open projects.\n    I am a fellow of the Software Sustainability Institute. I have several current and previous advisory appointments across different open science initiatives including NASA-TOPS, Code for Science and Society, The Carpentries, Society of RSE, Open Bioinformatics Foundation and MetaDocencia.\nhighlights: |\n    I love working with the open science community. Over the years, I have worked to establish *The Turing Way* as a place to convene, build cross-community collaborations and highlight practices and resources from different sectors through the work of our community members.\n    Through my research, community engagements, talks, panels and workshops, I like to interact with members across different research domains, whom I otherwise will never get a chance to meet.\n    Besides connecting with members from diverse perspectives, my highlights in _The Turing Way_ are establishing collaborative spaces including Book Dash, Fireside Chat and Coworking Calls.\n    Among many chapters I have written across different guides, I am very proud of setting our [Community Handbook](#ch) and co-developing resources on community governance, acknowledgement processes and various community opportunities.\n    I enjoy designing training and skill building opportunities alongside *The Turing Way* book to enable their adoption by individuals and organisations effectively.\n---\n:::\n\n:::{profile} Margaret Wanjiku\n---\nroles: |\n    Book Dash Participant (2021)\ngithub: Megmugure\norcid: 0000-0003-2275-2134\nbio: |\n    Margaret graduated with an MSc in bioinformatics in July 2021. She is a project lead at the Bioinformatics Hub of Kenya Initiative (BHKi), a training and networking platform for aspiring and established bioinformaticians. Its goal is to empower researchers with skills and tools in open science and bioinformatics. In addition to capacity development, she is also interested in genomics and big data analysis. Margaret dabbles in writing stories too!\nhighlights: |\n    This was my first time contributing to TTW! I enjoyed listening to and reading what fellow participants were working on as I made my contribution. I learnt more about GitHub and research data management as I conducted my research.\nmore: |\n    I look forward to making more contributions to TTW soon, including but not limited to updating the documentation and metadata subsection.\nquote: |\n    Creativity is intelligence having fun!\n---\n:::\n\n:::{profile} María Nanton\n---\nroles: |\n    Book Dash Participant (2021)\ngithub: mcnanton\norcid: 0000-0003-0426-2879\nbio: |\n    I'm a Data Analyst with a social communications background experienced in data analysis, reporting, and dashboarding in marketing, social and health data. I'm currently a Data Analyst at the Health Information and Statistics Office, part of the Ministry of Health of the Buenos Aires City Government. I'm also a TA at the University of Buenos Aires, a RLadies Buenos Aires organizer, and a social data analytics and data visualization instructor at EANT.\nhighlights: |\n    It was great to work on chapter 3 of the Guide of Communications and also manage to solve some Issues and review simple PRs related to other chapters along the way.\nquote: |\n    This was my first Book Dash and I can't imagine a better environment to do some serious, challenging, and fun collaborative work. I'm immensely grateful to everyone I encountered this week, and I can't wait to share the tools I've learned with coworkers and members of data and research communities in Argentina.\n---\n:::\n\n:::{profile} Mariana Vivas\n---\nroles: |\n    Book Dash Participant (2021)\ngithub: marianaiv\nbio: |\n    I'm an undergrad physics student at the Central University of Venezuela. Working on my thesis and trying to make it reproducible.\nhighlights: |\n    Working on the introductory chapter for the Project Design Guide was incredible. I really enjoyed collaborating with Malvika in writing it.  I'm also very happy to have an illustration made specifically for the chapter.\nquote: |\n    This Book Dash was my first time doing collaborative work. I enjoyed meeting everyone - such a welcoming environment, I really appreciate it! I enjoyed collaborating with a chapter for The Turing Way, and couldn't be happier!\n---\n:::\n\n:::{profile} Marta Mangiarulo\n---\nroles: |\n    Book Dash Participant/Helper (2020-2021)\ngithub: Marta-MM\norcid: 0000-0001-7995-3717\nbio: |\n    I am a teaching fellow/Research Assistant in the School of Psychology at the University of Leicester. Before moving to the UK, I earned an MSc in Social Psychology and a PhD in Cognitive and Brain Sciences. I am interested in reasoning, judgment, and decision-making topics and passionate about scientific communication and outreach.\nhighlights: |\n    In the **November 2020 book dash**, I used GitHub for the first time! I helped fix some small bugs (grammar and syntax, typos, formatting) and, I proposed two chapters on data visualisation and on study pre-registration.\n    I started familiarising myself with the GitHub environment and learned how to collaborate through it to provide valuable contributions to the project. My work during these 5 days has mostly been individual, but I would love to collaborate with others to work on the two chapters I suggested!\n    In the **May 2021 book dash**, I was very happy to start where I had left off in the previous book dash. I believe I made small but relevant contributions and I have a clear idea of where I would like to go next which is much more than what I was hoping for!\n    In the **November 2021 Book Dash** (my third one!), I was invited to lead a discussion on data visualisation, which sparked a very interesting conversation. I also started a dedicated section in the book and I am looking forward to developing it!\n    On November 25th, I will talk about my experience with The Turing Way during one of the Leicester [ReproducibiliTEA](https://reproducibilitea.org/) meetings!\nmore: |\n    I am passionate about science communication and research dissemination and interested in replicability, open science issues, and the interface between cognitive and social aspects in social psychology topics like intergroup relations and impression formation. At the moment I am particularly fascinated by data visualisation and infographics.\nquote: |\n    I loved taking part in the book dash, it is such a rewarding experience above and beyond its material outputs.\n---\n:::\n\n\n:::{profile} Martin O'Reilly\n---\nroles: |\n    Project Delivery Team Member (2019)\ngithub: martintoreilly\nbio: |\n    I'm a Principal Research Software Engineer and Deputy Head of the Research Engineering Group at the Alan Turing Institute.\n    My focus is on using good software engineering practices to increase the impact of research software by making it reusable, reliable and robust\n    I also have a strong interest in reproducible research and am working to improve the tools and working practices at the Turing to make it easier for our researchers to work reproducibly\n    I've moved back and forth between industry and academia over the years, gaining an MSc in Artificial Intelligence and a PhD in Computational Neuroscience along the way.\nmore: |\n    I feel strongly that researchers have a responsibility to ensure that the outcomes of their research are made available to all - researchers, practitioners and the public.\n    These outcomes should be made available in a way that allows others not just to reproduce them, but also to reuse and build upon them.\n    An awful lot of researcher and practitioner time is spent getting to the point where they can usefully evaluate whether some research is of use to them, or in re-discovering unpublished negative results.\n    This seems extremely wasteful and I'm convinced we can and should do better.\n    In particular, I feel a lot can be done to improve the effective reuse of data produced by research projects.\n    While there has been significant progress in recent years in the amount of data published alongside research articles, there is still a wide gulf between open data and reusable data.\n    In terms of research areas, I'm fascinated by the brain and especially the approach of understanding the brain by \"faking it\" (through modelling and simulation).\n    I'm particularly interested in robots as a way of embodying these models in the real world.\n    I believe the Turing Way can impact positively in both these areas.\n    By providing recommended working practices and guidance on associated tooling, we can make it easy for researchers to do the right thing.\n    By publishing this with the weight of the Turing brand, we can apply social pressure for the adoption of these practices as new norms in the research communities we operate.\n---\n:::\n\n:::{profile} Martina G. Vilas\n---\nroles: |\n    Core Member, Infrastructure Maintainer (2020-2021);\n    Book Dash Participant/Mentor (2020)\ngithub: martinagvilas\norcid: 0000-0002-1097-8534\nbio: |\n    I'm currently finishing my PhD in Neuroscience at the Max-Planck-Institute AE in Frankfurt, Germany.\n    I study how the brain processes conceptual knowledge by analyzing neural recordings with computational modelling techniques.\n    As an advocate of open research, I also work on improving the reproducibility of neuroscientific analyses and enjoy contributing to open-source software projects.\nhighlights: |\n    Since the Book Dash in February 2020, I have helped with the maintenance of The Turing Way infrastructure and its reliance on Jupyter Book. The Turing Way is not only a great guide for conducting reproducible research, but it also provides a wonderful entry point into open-source contribution in general and connects you to a variety of open data science communities.\n    I'm also a mentor at the [OLS-2](https://openlifesci.org/ols-2) program and I have also worked with the [pandas](https://pandas.pydata.org/) core contributors in guiding people from underrepresented groups in technology on making their first open-source contribution.\n    I have co-led and developed the tutorial on [Creating a Jupyter Book with The Turing Way](https://cfp.jupytercon.com/2020/schedule/presentation/225/creating-a-jupyter-book-with-the-turing-way/) ([Github repo](https://github.com/martinagvilas/tutorial-jupyterbook-with-turing-way)).\n    During the Book Dash (November 2020), I worked with \\@BatoolMM on the upgrade of the Jupyter Book that allows for annotation (PR #1516). I facilitated mentored contributions _(in Spanish as well 🇦🇷 🇧🇴 )_\n    I also gave a talk about The Turing Way and computational reproducibility at the [Brainhack Donostia 2020](https://brainhack-donostia.github.io/) (slides [here](https://zenodo.org/record/4269795#.X7glTlNKitg))\nmore: |\n    More information about me can be read on my [website](https://martinagvilas.github.io/).\n---\n:::\n\n:::{profile} Mateusz Kuzak\n---\nroles: |\n    eScience Center Representative (2020-2021);\n    Book Dash Participant/Helper (2020)\ngithub: mkuzak\norcid: 0000-0003-0087-6021\nbio: |\n    Mateusz obtained his master's degree in Biotechnology with a specialization in Biophysics, at the Jagiellonian University, Krakow, Poland. In September 2019 Mateusz joined the Netherlands eScience Center in the role of Community Officer with a focus on communities and training around Research Software Engineering, software best practices and sustainability, and the role of software in open science and reproducible research. Since 2015, Mateusz has been involved in the Carpentries community, first as an instructor, later contributor, mentor, Executive Council member and instructor trainer. He is also leading the Dutch chapter of the Carpentries and is on the core team of the nl-RSE community.\nhighlights: |\n    I have personally contributed to _The Turing Way_ by drafting chapters in the guide for Reproducible Research, reviewing other contributors' Pull Requests and mentoring contributions from the Netherlands eScience Center.\n---\n:::\n\n:::{profile} Maya Anderson Gonzalez\n---\nroles: |\n    Book Dash May 2023 participant\ngithub: MayaAndersonGonzalez\norcid: 0000-0002-6275-6626\nbio: |\n    I am currently an independent social sciences and humanities researcher working on community building in Open Research through narrative practices, in favour of greater diversity, inclusion, and citizen participation in open science on the fringe of academia.\nhighlights: |\n    I worked on the Data Feminism chapter with \\@gigikenneth at the May 2023 Book Dash.\n---\n:::\n\n:::{profile} Mishka Nemes\n---\nroles: |\n    Book Dash participant (2024);\n    Book Dash Organising Committee member (June 2024);\n    GitHub upskilling co-facilitator June 2024\ngithub: mishkanemes\nbio: |\n    I am a researcher working at the intersection of AI & Skills, developing products, programmes and opportunities for folks to learn about AI. I am interested in open science and responsible AI, as well as community building.\nhighlights: |\n    I enjoyed my first book dash as I wore many hats and I could experience it both backend and frontend, so to speak! Whilst we are on track with achieving some set goals around development of new resources for AI educators, I also learnt how to run such collaborative sprints and I feel the knowledge gained from latter is particularly useful as it can be replicated.\nquote: |\n    I particularly cherished the opportunity to peripherally learn what other contributors are up to and to continuously identify opportunities to synergise and collaborate, whilst also having a dedicated space for quiet co-working. And who knew how difficult is to define openness?! Maybe many folks here, I just started asking more questions as I delve deeper, and it's a fun and challenging process.\n---\n:::\n\n<!-- N -->\n## N\n\n:::{profile} Nina Di Cara\n---\nroles: |\n    Book Dash Participant/Helper (2020)\ngithub: ninadicara\norcid: 0000-0002-6179-1067\nbio: |\n    I am a PhD student at the University of Bristol, working on data science for mental health using social media data. I also have a master's degree in family social work and was trained as a social worker before starting my PhD. I co-organise the [Data Ethics Club](https://github.com/very-good-science/data-ethics-club/) and am interested in how we can understand the way we approach data analysis as a function of our lived experiences and positionality.\nhighlights: |\n    I started to design and draft a new chapter about self-reflection for data scientists, and was excited to meet lots of fascinating and kind people who are also working on the Guide for Ethical Research!\nquote: |\n    Being part of the Book Dash has been a great reminder of how team-based science can be such a joyful and fun experience! An especially well-timed reminder after spending a year working from my flat!\n---\n:::\n\n:::{profile} Noorhan Abbas\n---\nroles: |\n    Google Season of Doc: Technical Writer (2021);\n    Book Dash Participant (2024)\ngithub: NoorhanAbbas\norcid: 0000-0002-1434-6497\nbio: |\n    I am a Teaching Fellow at the School of Computing, University of Leeds, UK. I instruct two modules in the Online Distance Learning MSc AI programme: Programming for Data Science and Data Mining and Text Analytics. Additionally, I supervise several MSc students' final projects as well as PhD students.\n---\n:::\n\n<!--P-->\n## P\n\n:::{profile} Patricia Herterich\n---\nroles: |\n    Project Delivery Team Member (2019 - 2020);\n    Book Dash Participant (2022);\n    Book Dash Organising Committee member (May 2025)\ngithub: pherterich\norcid: 0000-0002-4542-9906\nbio: |\n    Patricia Herterich is an information professional and Open Science enthusiast.\n    She is a Software Sustainability Fellow 2019 and currently OLS's Associate Director for Finance and Operations.\n    She holds a MA in Library and Information Science from Humboldt University of Berlin, Germany (2013) and has over ten years of experience in research data management working at CERN’s Scientific Information Service and Higher Education institutions in the UK.\nhighlights: |\n    Reminding myself of my technical skills and how I love proper GitHub workflows. Thank you for trusting me with the facilitation of a discussion session on leadership and the wonderful input from everyone. It was great coming back and contributing to the Turing Way.\n\n    I loved facilitating the Scavenger Hunt. It's great to see that you can build connections in virtual events.\nmore: |\n    I moved my share outs from crafting to taking care of plants. And talking about bread. Also, I have too many Moomin themed items.\n---\n:::\n\n:::{profile} Paul Owoicho\n---\nroles: |\n    Project Delivery Team Member (2020);\n    Google Season of Doc 2020: Technical Writer (2020);\n    Book Dash Participant (2020)\ngithub: paulowoicho\nbio: |\n    I am a Technical Writer / Google Season of Docs (GSoD) Participant working to make The Turing Way consistent, sustainable, and accessible.\n    I have a BSc in Software Engineering from the American University of Nigeria. Thereafter, I worked as a Research Analyst in the Fintech & Innovation Division of Guaranty Trust Bank, Nigeria and helped to drive the Bank's push to become a platform by creating innovative digital products.\n    I completed a Master's in Data Science from the University of Glasgow and starting my PhD in January 2021 studying conversational information-seeking systems. I spent two years as a Research Analyst at Guaranty Trust Bank in Lagos, Nigeria helping to build innovative digital products to meet the Bank's customer objectives.\nhighlights: |\n    The Turing Way is my first foray into open source and has been a fantastic learning experience.\n    Not only have I gained a deeper understanding and appreciation for how GitHub works, but I am also learning to prioritise sustainability and empowerment in the work that I do.\n    Although The Turing Way is my first open source project, I thoroughly enjoyed the experience and learned a lot along the way. Before the GSoD program, I only used Github to 'store' my projects. Now, I am much more proficient at using Github for collaborative endeavours and I am more adept at working with tools such as {term}`Markdown`, Jupyter Book, and Sphinx. In addition, I gained familiarity with setting up and working with web analytics software.\n    You can see the full report from [GSoD participation](https://github.com/the-turing-way/the-turing-way/blob/main/communications/GSOD-applications/GSoD-2020-Project-Report.md).\n    The BookDash November 2020 was great! It was awesome to meet, collaborate, and share ideas with people from around the world. Beyond the Book Dash, The Turing Way is the very first open-source project I have ever worked on. The experience has been fantastic, and I intend to stick around as a contributor after the Google Season of Docs program ends. I also see myself getting involved in other open-source projects.\nquote: |\n    Aside from technical skills, I developed a deep appreciation for what working on an open source project entails. My mentors helped me realise that the value I left behind from the GSoD program was not in the amount of work I did, but how I enabled other contributors to also do the work I was doing. As a result, I learned to contribute as a Technical Writer in a manner that was reproducible, sustainable, accessible, and inclusive.\n---\n:::\n\n:::{profile} Philippe Rocca-Serra\n---\nroles: |\n    FAIR-Cookbook Representative;\n    Book Dash Participant (2020)\ngithub: proccaserra\norcid: 0000-0001-9853-5668\nbio: |\n    Philippe Rocca-Serra received a PhD in Molecular Biology from the University of Bordeaux, moving to the field of bioinformatics upon joining the Microarray Informatics Team at the EMBL-EBI, Cambridge. There, working at establishing ArrayExpress, he became an active member of several standardisation efforts aimed at promoting the vision for open data and open science. As part of several EU projects in toxicogenomics and nutrigenomics, he coordinated the development of the ISA project [1], which now continues at the University of Oxford e-Research Centre.\n---\n:::\n\n<!---Q\n## Q--->\n\n\n<!---R-->\n## R\n\n:::{profile} Richard J. Acton\n---\nroles: |\n    Human Developmental Biology Initiative (HDBI) - Data Outputs Manager;\n    Book Dash 2023 Participant\ngithub: RichardJActon\norcid: 0000-0002-2574-9611\nbio: |\n    I am a biologist and bioinformatician by background with an interest in the biology of aging.\n    I am an avocate of free/libre and open source software, privacy rights, open science, and reform both in academic publishing and 'intellectual property' law.\n    In my spare time I enjoy speculative fiction.\nhighlights: |\n    Meeting and conversing with community members in the collab cafes.\n    My contributions to revising the chapter on licensing and adding a new subchapter on electronic lab notebooks.\nmore: |\n    I take a particular interest in data provenance and reproducible computational analysis as components of wider reforms needed to the academic 'knowledge production' workflow and advocate for the increased use of literate programming tools, and linked data in the research publication workflow.\n    My primary research interest was the biology of aging and longevity but after experiencing working in conventional academic roles was very unsatisfied with the way science is practiced and think my time is more usefully spent in roles where I can advocate for process reforms.\n    I first learned to program in perl, but am now more proficient in R, I've been daily driving a Linux desktop for years now most recently NixOS.\n---\n:::\n\n:::{profile} Precious Onyewuchi\n---\nroles: |\n    Book Dash 2024 Participant\ngithub: preshh0\norcid: 0009-0000-1386-0366\nbio: |\n    I am an open source manager with a background in community management, and technical writing. My current interests are in accessibility, usability, design, and security.\nhighlights: |\n    My personal highlight was giving life to a topic that started from a friend of mine expressing grieviance concerning a design situation and how it affected her. It gave birth to issue #3930, and I got very great feedback to implement to make my topic better.\nquote: |\n    Something I learned recently from Anne Lee Steele who learned it from Liz Hare: \"Nothing about us without us\". It's origin, is from this wikipedia page: https://en.wikipedia.org/wiki/Nothing_about_us_without_us.\n---\n:::\n\n:::{profile} Richie Moluno\n---\nroles: |\n    Outreachy Intern 2022 (Open Science Saudi Arabia and The Turing Way Translation Infrastructure);\n    Book Dash 2023 Participant\ngithub: RealRichi3\nbio: |\n    I am a Software developer (Backend-heavy)\n    I have a BEng in Mechanical Engineering from the University of Benin, Nigeria. I was an Outreachy 22/23 intern for [Open Science Saudi Arabia](https://github.com/Open-Science-Community-Saudi-Arabia), I interned as a backend developer where I collaborated with \\@sandygudie to build the [Open innovation Lab](https://github.com/Open-Science-Community-Saudi-Arabia/MOOCs) MOOCs platform.\nhighlights: |\n    The Turing Way isn't really my first experience with open source, but it has been a fantastic learning experience.\n    I got to meet new interesting people from around the world, built a few connections, and learned about reproducible research. I also learnt more about localisation and translation with Crowdin\n---\n:::\n\n:::{profile} Rosie Higman\n---\nroles: |\n    Project Delivery Team Member (2019);\n    Book Dash Participant/Helper (2019)\ngithub: rosiehigman\norcid: 0000-0001-5329-7168\nbio: |\n    I am a Research Data Librarian at the University of Manchester, co-leading the research data management support service.\n    My focus is on data sharing, training and encouraging researchers to engage in Open Research.\n    My background is in the social sciences and I have recently started a PhD with the British Library and the University of Sheffield looking at Open Access and the role of the National Library.\nmore: |\n    I am passionate about Supporting researchers! Making it as easy as possible for researchers to make their research reproducible and open, and for this to be easier than undertaking research in a closed manner.\n    I try to help researchers make small improvements in making their research open, on the basis that some progress is better than none!\n    Working in research data management I'm naturally concerned that data is not taken seriously as an independent research output and the reward system in academia is so heavily geared towards 'high impact' journal articles.\n    As someone from a non-STEM background I'm also interested in how we can make reproducible research as accessible as possible. This will be the first project where I've worked directly in GitHub and I'm excited to get more confident in using it!\n    I spend much of my time talking to researchers about the overarching principles of *why* reproducible and open research is a good idea and am excited by the idea of giving people practical guidance on *how* to do this.\n    Messy code is frequently cited in these discussions as a reason for not sharing code so if we could produce something which helps people get past this barrier would be great.\n    I hope that the Turing Way will be something we can also use at the University of Manchester and other Turing universities around the country!\n---\n:::\n\n:::{profile} Rachael Ainsworth\n---\nroles: |\n    Project Delivery Team Member, Community Manager (2019);\n    Book Dash Organiser (2019)\ngithub: rainsworth\norcid: 0000-0003-2591-9462\nbio: |\n    I am the Research Software Community Manager at the Software Sustainability Institute.\n    Previously, I worked as a Research Associate and Open Science Champion at the Jodrell Bank Centre for Astrophysics at the University of Manchester.\n    My research involved observing jets from young stars with next-generation radio telescopes to investigate the physical processes that assemble stars like our Sun, and am currently working to make data from the radio telescope facilities at Jodrell Bank more accessible to all.\n    I am also a FOSTER certified Open Science Trainer, Mozilla Open Leader, and Organiser for the women in data meetup group HER+Data MCR.\nhighlights: |\n    I have promoted *The Turing Way* through many presentations, notably at the Open Science Fair 2019 where I presented a poster and delivered 3 demonstrations of the project to attendees, one of which was recorded as part of the [ORION Open Science Podcast](https://orionopenscience.podbean.com/e/the-fair-is-in-town-figshare-the-turing-way-and-open-science-quest-at-the-osfair2019/).\n    Through *The Turing Way* project I have gained valuable skills in open project management and met truly inspiring individuals working hard to promote openness and reproducibility in research.\nmore: |\n    I am passionate about promoting openness, transparency, reproducibility, wellbeing and inclusion in STEM and facilitating cross-stakeholder conversations to change research culture for the better.\n    I also love space exploration.\n    *The Turing Way* goal of ensuring that reproducible data science is \"too easy not to do\" really resonates with me.\n    I find that it can be difficult to get researchers to engage with reproducibility and sharing their research outputs because they perceive that it will take too much time and effort with very little reward - when the opposite is true!\n    Ensuring results are reproducible not only benefits research as a whole and increases efficiency but working this way also offers researchers more opportunities for impact and collaboration.\n---\n:::\n\n:::{profile} Rachael Stickland\n---\nroles: |\n    Book Dash Participant (2022)\ngithub: RayStick\norcid: 0000-0003-3398-4272\nbio: |\n    I am a Data Wrangler based at The Alan Turing Institute. See my profile [here](https://www.turing.ac.uk/people/researchers/rachael-stickland) for more information.\nhighlights: |\n    Joining the Nov 2022 BookDash was a real pleasure - I met lots of great people with brilliant ideas, and I enjoyed learning more about _The Turing Way_.\n    I am new to this community but felt welcomed and included.\n    Working with the Scriberia artist on visualising the 'Data Wrangler' job role was a really interesting and useful experience, and it encouraged our wider team, based at The Alan Turing Institute, to reflect on our roles as Data Wranglers and how to explain this role to others.\n    My contribution to the book was working with my colleague Mahwish Mohammad on adding a sub-chapter 'Data Wranglers' to the [Research Infrastructure Roles](https://book.the-turing-way.org/collaboration/research-infrastructure-roles.html) section, and starting (or joining) discussions with others in this community about Research Infrastructure Roles in general.\n    I hope more collaborations will come out of these discussions, specifically content added to the book which compares and contrasts different Research Infrastructure Roles, and reflects on how to decide which role(s) would be needed for a specific research project.\n---\n:::\n\n:::{profile} Reshama Shaikh\n---\nroles: |\n    Book Dash Participant (2021)\ngithub: reshamas\norcid: 0000-0003-4162-4453\nbio: |\n    Reshama Shaikh is the Executive Director of [Data Umbrella](https://www.dataumbrella.org). She is also on the Triage Team for [scikit-learn](https://github.com/scikit-learn/scikit-learn) and an organizer for [NYC PyLadies](https://www.meetup.com/NYC-PyLadies/).\n    Reshama is a statistician/data scientist with skills in Python, R and SAS. She earned her M.S. in statistics from Rutgers University.  She earned her M.B.A. from NYU Stern School of Business where she studied strategy, business analytics and technology management.\nhighlights: |\n    Reshama participated in The Turing Way Book Dash and collaborated to discuss plans and draft for a chapter on research impact in data science, with a case study from training events that she organises through Data Umbrella.\n---\n:::\n\n\n<!---S--->\n## S\n\n:::{profile} Samuel Guay\n---\nroles: |\n    Book Dash Participant (2020)\ngithub: SamGuay\norcid: 0000-0001-6990-839X\nbio: |\n    I'm a PhD student in Cognitive Neuroscience at the University of Montreal, Canada, researching the effects of repetitive head impacts on inactive and retired athletes with a neuroimaging perspective. In parallel, I've started the [Open Science UMontreal](https://umontreal.openscience.ca) initiative to equip early-career scientists with better knowledge and tools to implement more open science in their workflow. The OSUM community members are really awesome :rocket:.\n    Specifically, I have been working to set a process to translate _The Turing Way_ in French. I contributed to adding [hypothes.is](https://web.hypothes.is/) to _The Turing Way_.\nhighlights: |\n    The whole November 2020 Book Dash was my highlight. I got to know a welcoming community and amazing humans throughout the week. It was amazing to witness so much progress in that tiny amount of time.\n---\n:::\n\n:::{profile} Sara Villa\n---\nroles: |\n    Steering Committee Member;\n    Community Management Working Group Co-Chair;\n    Book Dash participant (2022 and 2024)\ngithub: SaraVilla\norcid: 0000-0001-9502-0888\nbio: |\n    I am a molecular biologist with a big interest in Open Science and Reproducibility. I am a mentor for the Open Seeds  Mentoring and Training Programme (OLS) and do most of my research at King's College London.\nhighlights: |\n    2022: I enjoyed contributing to The Turing Way for the first time. It was amazing to talk to the people and organise my brain for future projects. Also got to add a tiny contribution to the Leadership chapter\n\n    2024: This year's book dash has been great for me to keep consolidating my GitHub learning. I have finally started shaping myc ontribution to the Mental Health chapter, though it is still in early phases and I hope to keep working on it during Collab cafes and the next Book Dash. I have also identified a potential link with the Hybrid working chapter and are in touch with other collaborators. And, I was also able to make a 'final' contribution by adding a new image to the Book! that felt actually great :D\nquote: |\n    2022: The Turing Way is the perfect place for a never-ending learning path while keeping your voice heard and feeling confident enough to contribute in whatever form you can.\n\n    2024: Amazing organisation, great experience as always. It is very uplifting and always learning something new from this community. I only hope to someday give it back.\n---\n:::\n\n:::{profile} Sarah Gibson\n---\nroles: |\n    Infrastructure Working Group Member (2021-Present);\n    Project Delivery Team Member (2010-2021);\n    Book Dash Participant/Mentor (2020)\ngithub: sgibson91\norcid: 0000-0003-0356-2765\nbio: |\n    Sarah Gibson is an open source contributor and advocate.\n    She was a Research Software Engineer at the Turing and an Open Source Infrastructure Engineer previously at 2i2c.\n    She holds more than two years of experience as a Research Engineer at a national institute for data science and artificial intelligence, as well as holding a core contributor role in the open source projects Binder, JupyterHub, and the Turing Way.\n    She is a member of the mybinder.org operating team and maintains infrastructure supporting a global community in sharing reproducible computational environments.\nhighlights: |\n    Being invited to join the mybinder.org operating team after working with them through _The Turing Way_ and helping people get up and running on mybinder.org through _From Zero to Binder_ workshops.\nmore: |\n    Sarah is passionate about working with domain experts to leverage cloud computing in order to accelerate cutting-edge, data-intensive research and disseminate the results in an open, reproducible and reusable manner.\n    She also holds a Fellowship with the Software Sustainability Institute and advocates for best software practices in research.\n---\n:::\n\n:::{profile} Saranjeet Kaur Bhogal\n---\nroles: |\n   Book Dash Committee (2023);\n   Book Dash Participant (2022-2023)\ngithub: SaranjeetKaur\ntwitter: qwertyquesting\norcid: 0000-0002-7038-1457\nbio: |\n    [Saranjeet Kaur Bhogal](https://saranjeetkaur.github.io/About-Me/) is a Community Manager (Asia) at the Research Software Alliance and a 2023 Fellow of the Software Sustainability Institute.\nhighlights: |\n    Worked on the Hybrid Collaboration chapter with \\@sandygudie and reviewed a PR by \\@jcolomb at the May 2023 Book Dash. She is interested in learning about open source and open science and likes to remain involved with open science community work. In early 2021, she wrote the first draft of the [R Development Guide](https://github.com/r-devel/rdevguide) through a project funded by the [R Foundation](https://www.r-project.org/foundation/). Furthermore, she co-led the work on the outreach of the R Development Guide at the [Digital Infrastructure Incubator at Code for Science & Society](https://incubator.codeforscience.org/).\n    Recently, she is working as a Technical Writer with The R Project at the Google Season of Docs 2022 for a project to [\"Expand and Reorganize the R Development Guide\"](https://github.com/rstats-gsod/gsod2022/wiki/GSOD-2022-Proposal). Previously, she has also worked with the Julia Language organization for [Google Summer of Code 2020](https://gist.github.com/SaranjeetKaur/37086fea06076bd3ec76d052cc166378). In early 2022, she was selected as the founding committee of NumFOCUS Project Incubator. She co-founded the [Research Software Engineering (RSE) Asia Association](https://rse-asia.github.io/RSE_Asia/) during my participation in the [Cohort 4 of the Open Life Science programme](https://openlifesci.org/ols-4/projects-participants/), to promote the RSE community and profession in the Asia region. She is also participating in the [Pilot Mentorship Programme](https://society-rse.org/events/pilot-mentoring-programme/) of the Society of Research Software Engineering to further build the RSE Asia community.\n\n    Sharing the RSE Asia formation story through an open interview & collaborating with Adrien Liard (Scriberia artist)!\nmore: |\n    I like creating zines & cartoons!\n---\n:::\n\n:::{profile} Sebastián Ayala Ruano\n---\nroles: |\n    Book Dash participant (2024)\ngithub: sayalaruano\norcid: 0000-0001-9756-6745\nwebsite: https://sayalaruano.github.io/\nbio: |\n    I am a bioinformatician and freelance data scientist.\n    Currently, I work as a research assistant in the Multiomics Network Analytics Group at the Technical University of Denmark, where I focus on projects at the intersection of bioinformatics, artificial intelligence, and network science.\n    Being passionate about open science, I contribute to research and software development communities, including the [ISCB Student Council](https://iscbsc.org/), [The Carpentries](https://carpentries.org/), the [Streamlit Creators](https://streamlit.io/creators), and the [Open Seeds program by OLS](https://openlifesci.org/).\nhighlights: |\n    Being a first book dasher, I was a bit lost and overwhelmed, but everyone was eager to help and guide me on different aspects of the project and how to make my first contribution.\n    I also loved socializing with the community members and participating in the Scriberia session.\n    During the 2024 November Book Dash, I worked with Johanna Bayer and Jyoti Bhogal to start a new chapter for 'Personal Websites' under the guide for Communication.\n    Our pull request is available [here](https://github.com/the-turing-way/the-turing-way/pull/3937).\nquote: |\n    The _Turing Way_ is one of the most welcoming and inclusive communities I've been part of. Thanks for building such an incredible space for learning and collaboration.\n---\n:::\n\n:::{profile} Seun Olufemi\n---\nroles: |\n    Book Dash Participant (2024)\ngithub: seunolufemi123\norcid: 0000-0002-8292-2345\nbio: |\n    I am an Open Science enthusiast and OLS (Open Life Science) Resident Fellow.\n    I co-lead the Bioinformatics Outreach Nigeria project to expand bioinformatics capacity through Open Science.\nhighlights: |\n    I initiated the writing of a new chapter, \"Enhancing Reproducibility in African and Low-Resource Settings\".\n    I also Interacted with other participants during the book dash event, and participated in the community and shareouts sessions\n---\n:::\n\n:::{profile} Shern Tee\n---\nroles: |\n    Book Dash Participant (2022-2023)\ngithub: srtee\norcid: 0000-0003-2701-005X\nbio: |\n    I am working as a postdoctoral researcher in Brisbane focused on molecular dynamics software and methodology.\n    As a research software engineer (RSE) I want academia and institutions to recognize the invaluable work we do and support us better!\nhighlights: |\n    Upgrading the TTW chapter on RSEs, and getting to know a whole new group of wonderful people!\n---\n:::\n\n:::{profile} Sophia Batchelor\n---\nroles: |\n    TPS Staff (2022-Present);\n    HacktoberFest contribution facilitator (2021);\n    Book Dash Participant (2020)\ngithub: BrainonSilicon\norcid: 0000-0002-8572-2058\nbio: |\n    I am a PhD student at the University of Leeds studying sensorimotor learning with the Center for Immersive Technologies. My research focuses on understanding how how our brains interpret and respond to both our physical reality, and a constructed reality (AR/VR). I do this through a deep love of the brain and emerging technologies. We will soon be existing in the future that we are creating now; so when we build with a \"people first\" (or a brain first) philosophy, we end up building a space that allows people to flourish.\nhighlights: |\n    MY FIRST CONTRIBUTION TO THE TURING WAY! It's an absolute honour to join The Turing Way community as we look towards an open, ethical, and accessible future. After having such a mixed STEM and non-STEM background, I'm thrilled to have joined this community as it grows and guides my thinking about how and what it means to do research.\nmore: |\n    I'm a fierce advocate for ethical and open research, and those beliefs tend to carry into everything I do. I previously worked on Brain-Computer Interfaces after finishing my undergrad at UC Berkeley where I saw the incredible work that can be done through collaborative, cross-disciplinary science. I'm now part of Open Life Science's second cohort learning how to implement the teachings of The Turing Way because when good science and good practice meet, great things can happen.\n---\n:::\n\n:::{profile} Sophie Aranas\n---\nroles: |\n    Book Dash participant (2024)\ngithub: aranas\norcid: 0000-0001-9708-7058\nbio: |\n    I am a Research Application Manager at the Turing Research and Innovation Cluster in Digital Twins (TRIC:DT). As part of the Innovation and Impact Hub, I work towards open and reproducible computational and social tools around digital twin technology across a range of sectors. My educational background is in cognitive computational neuroscience.\nhighlights: |\n    I got to experiment and learn about SEO and website analytics tools which was great. I particularly enjoyed the share-outs at the end of the book dash, it was a fantastic way to end the week with lots of celebrations and feeling inspired by others'work.\nquote: |\n    The Turing Way community is has this extremely collaborative & supportive spirit, where everyone celebrates each others contributions no matter how big and small. Participating in the book dash for the first time was a wonderful example of this. It really made me experience the uniqueness of this community and the power of team work.\n---\n:::\n\n:::{profile} Susana Roman Garcia\n---\nroles: |\n    PhD student (2020-Present);\n    Co-facilitator for TTW presentation at [Data Science Perspectives - Multidisciplinary PhD Conference (2023)](https://zenodo.org/records/7704563);\n    Co-facilitator for Onboarding Calls for the Turing Way Project;\n    Part of the Book Dash Working Group;\n    Book Dash Participant (May 2023, November 2023)\ngithub: Susana465\norcid: 0009-0004-6967-7754\nbio: |\n    I am a PhD student at the University of Edinburgh, I was also an Enrichment student at the Alan Turing Institute for the 2022/2023 cohort. Reproducibility and bias in science are huge driving forces of how I work. I am currently finishing up my PhD which involves creating computer models of specific molecules involved in animal memory, and embedding ethics and reproducibility into the work that I do.\nhighlights: |\n    Writing and working together with many people to get the {ref}`er-datahazards` Chapter published.\n    Making a Pull Request for the Data Hazards chapter together with Ceilidh Welsh was definitely also a big highlight!\n---\n:::\n\n:::{profile} Susanna-Assunta Sansone\n---\nroles: |\n    FAIR-Cookbook Representative;\n    Book Dash Participant (2019)\ngithub: susannasansone\norcid: 0000-0001-5306-5690\nbio: |\n    Susanna-Assunta Sansone is an Associate Director and Principal Investigator at the Oxford e-Research Centre, and an Associate Professor in the Department of Engineering Science of the University of Oxford.\n    She is also a Consultant for Springer Nature and a Founding Honorary Academic Editor of the Scientific Data journal.\nmore: |\n    Susanna-Assunta Sansone's motto is \"Better data for better science\".\n    With her group of brilliant research software & knowledge engineers, she researches and develops methods and tools to improve data reuse; they work for data transparency, research integrity and the evolution of scholarly publishing.\n    She also conducts research-on-research, to improve how research is practiced and shared.\n    Specifically, she strives to make digital research objects, including data, Findable, Accessible, Interoperable and Reusable, FAIR, for humans and machines.\n---\n:::\n\n<!---T--->\n## T\n\n:::{profile} Thao Do\n---\nroles:\n    Book Dash participant (June 2024)\ngithub: ThaoDo02\norcid: 0000-0002-0015-892X\nbio: |\n    Thao is a PhD researcher at the University of Bath, working at the intersection of technology, society, and human rights. Her research focuses on the societal, ethical, and governance implications of AI systems in high-risk social domains, particularly human trafficking, exploitation, and children’s interactions with generative AI. She draws on interdisciplinary approaches spanning sociology, AI ethics, development studies, and digital governance to examine how AI technologies are shaped by their social contexts and how more just, accountable, and human rights-based models of AI can be realised in practice. Thao was part of the 2022 PhD Enrichment cohort at the Alan Turing Institute.\nhighlights: |\n    I contributed one chapter “Lesson & Curriculum Development” together with Gule Saman and Denise Bianco (June 2024)\nquote: |\n    \"Putting the last first\" (Robert Chamber). I am committed to understanding how AI systems intersect with lived realities, structural inequalities, and human vulnerability, and to promoting approaches that centre dignity, agency, and justice. I believe research is most meaningful when it supports communities, challenges harmful assumptions, and contributes to building technologies that respect and empower the people they affect.\n\n---\n:::\n\n:::{profile} Tim Powell\n---\ntwitter: mrtimpowell\nbio: |\n    Tim is an Astrophysicist turned Research Software Engineer, who has always had a passion for sharing science.\n    From attending public lectures and getting involved as an attendee at outreach events based around Cambridge as a teenager to building a miniature supercomputer, Tim has a long history of outreach activities.\n\n    Whilst at university Tim became a STEM Ambassador with the Physics Society, where he used the tools provided to introduce groups of children to scientific concepts.\n    Tim also participated in 4 [British Science Weeks](https://www.britishscienceweek.org/) showcasing many different aspects of Physics and Remote Sensing.\n\n    When Tim joined STFC's Hartree Centre he built a miniature supercomputer, called [HPiC](https://blog.hartree.ac.uk/wordpress/?p=361).\n    HPiC is the Hartree Centre’s Raspberry Pi Cluster.\n    It was created to demonstrate supercomputing techniques and show some of the expertise of the Hartree Centre.\n    HPiC has been showcased at numerous [technical conferences](https://twitter.com/MrTimPowell/status/1062098668403245058) and [public outreach events](https://twitter.com/HartreeCentre/status/1055029464592273408) not just across the UK but also internationally.\n\n    As well as presenting technical posters and talks at various conferences Tim also enjoys taking his experience of outreach and presenting what he has learnt and how that is applicable to teaching.\n    Tim presented at the ISC 2019 HPC Education and Training for Emerging Technologies Workshop and was on [SIGHPC](https://sighpceducation.acm.org/) Best Practices for HPC Training and Education Panel at Supercomputing 2019.\n\n    One of Tim's proudest projects  was collaborating with Benjamin Mummery on a LEGO version of the Hartree Centre's iconic supercomputer [Scafell Pike](https://twitter.com/HartreeCentre/status/1189145621564968963)!\nhighlights: |\n    I collaborated with a group of researchers from The Alan Turing Institute to draft a chapter of scientific outreach.\n---\n:::\n\n:::{profile} Timothy Sum Hon Mun\n---\nroles: |\n    Book Dash Participant (2022)\ngithub: timothy22000\ntwitter: timothy22000\norcid: 0000-0003-3085-3664\nbio: |\n    Former software engineer at a startup and former actuary at an insurance company. My research interests are on the intersection of AI with different areas such as healthcare and finance as well as to improve their reliability and interoperability when being deployed. I am also more recently interested in open science, open source collaboration, and reproducible research. My current research work involves the application of deep learning to develop novel predictive biomarkers of tumour response using real-world imaging data of soft-tissue sarcomas.  My research is funded as part of the international Sarcoma Accelerator, funded by Cancer Research UK, which will collect one of the largest repositories of multi-center sarcoma datasets.\nhighlights: |\n    Working together with the translation team (Batool, Iman, Alejandro), having interesting discussions with other participants of the Book Dash on different topics, contributing to the automation of the TW release workflow, and meeting Batool again!\nquote: |\n    Memorable experience with the Turing Way and Scriberia!! Great to have a chance to attend the Book Dash and collaborate with so many talented individuals.\n---\n:::\n\n<!---U\n## U--->\n\n\n<!---V--->\n## V\n\n:::{profile} Vicky Hellon\n---\nroles: |\n    TPS Staff (2021-Present);\n    Core Member, Reviewers & Editors Working Group (2022);\n    Book Dash Participant (2021-2023)\ngithub: vhellon\ntwitter: vickyhellon\nbio: |\n    Vicky Hellon is the Community Manager at the Alan Turing Institute for the Turing-Roche Partnership. She will be working closely with both organisations to build an engaged and sustainable community around the partnership, with a focus on supporting researchers to embrace and embed Open Science practices. She has a BSc in Biomedical Science from the University of Sheffield and previously had roles in Open Access publishing. She is passionate about supporting forward-thinking changes to the academic publishing system and engaging with researchers from a range of backgrounds.\nhighlights: |\n    This was a great introduction to the Turing Way and the community. I loved seeing how collaborative everyone was and also the scale of what everyone managed to produce during the dash! I feel proud that I managed to do my first proper pull request to make a tangible contribution and navigated myself around Github to review others' work too.\nmore: |\n    I will be carrying on working on the Open Access chapter and hope to collaborate with others such as \\@EKaroune \\@Karvovskaya to potentially expand a 'publishing' chapter/section\nquote: |\n    If you want to do 'community' then you can't get a better example than the Turing Way\n---\n:::\n\n<!---W--->\n\n## W\n\n:::{profile} Winny Nekesa\n---\nroles: |\n   Book Dash Committee (2023);\n   Book Dash Participant (2022)\ngithub: WinnyNekesa\nbio: |\n    I am the Head, of the Library and Documentation Centre at the Public Procurement and Disposal of Public Assets Authority  where I   oversee the provision of Library, Registry and other Knowledge Management Systems, ensuring that the information storage and retrieval needs of PPDA staff and stakeholders are met.\n    I hold a master's degree in Information, a Postgraduate Diploma in Demography and Statistics and a bachelor's degree in Library and Information Science from Makerere University, Kampala-Uganda.\n    I am currently the Africa Regional Secretary of the International Association for Social Science Information Service and Technology (IASSIST) and a member of the carpentries community.\nhighlights: |\n    It was  such a great opportunity to participate in the 2022 BookDash.\n    It was also a great, fantastic and exciting experience for me to further my understanding of GitHub, and  participate in and contribute my first chapter of data curation in the Research Data Management book.\n    With more practice and contribution I will become proficient with GitHub and I hope to adopt it for my institution for collaborative purposes.\n    I enjoyed working with fellow participants and the amazing Turing Team to successfully have my first chapter.\n    The 2022 Book Dash was such a fantastic amazing experience and look forward to continue contributing.\nquote: |\n    Being part of this year's Book Dash has not only made me appreciate using GitHub and how Turing Way is contributing to data science, but it has also provided me with the necessary skills to use GitHub, which I didn't have at all.\n    I have learnt how to contribute using GitHub.\n    I hope more colleagues from Africa can also have an opportunity to participate and contribute to these projects.\n---\n:::\n\n<!---X\n## X--->\n## X\n\n:::{profile} Xiaoli Chen\n---\nroles: |\n    Book Dash Participant (2025);\n    Project Lead at [DataCite](https://www.datacite.org) (2021-present)\ngithub: xchen101\norcid: 0000-0003-0207-2705\n\nbio: |\n    Xiaoli Chen leads the Implementing FAIR Workflows project at DataCite, the goal of the project is to support researchers and research communities to effectively implement persistent identifier workflows across research project lifecycle, to ensure the FAIRness of outputs. \n    She has a background in library and information science and has worked within the high-energy physics and neuroscience contexts. \n    Xiaoli has contributed to The Turing Way book on the topic of persistent identifiers and FAIR research practices as part of the dissemination efforts for the [Implementing FAIR Workflows project](https://doi.org/10.54224/20568).\nhighlights: |\n    The FAIR Workflows project benefited greatly from the Turing Way Book as an invaluable resource to which we could point researchers and research communities to learn about the best practices around open sharing and FAIR research. \n    It was a great experience to be part of the Book Dash and to contribute what we have learned from our project to the Turing Way community. \n    The book dash experience was exceptional: well-organized, highly collaborative, and fun!\n\n---\n:::\n\n<!---Y\n## Y--->\n\n\n\n## Z\n\n:::{profile} Zeena Shawa\n---\nroles: |\n    PhD student (2021-Present);\n    Book Dash Participant (June 2024);\n    Turing-Roche Community Scholar (October 2023-2024)\ngithub: Zeena-Shawa\nbio: |\n    Zeena Shawa is PhD student in the i4Health Medical Imaging CDT programme at University College London.\n    She is part of the Progression of Neurodegenerative Diseases (POND) Group in the Centre for Medical Image Computing (CMIC), supervised by Dr. Neil Oxtoby and Dr. Rimona Weil.\n    Her PhD project aims at understanding Parkinson’s disease progression using machine learning approaches developed within POND, with a focus on medical imaging data.\n    The insights obtained from this can aid in understanding disease mechanisms, identifying biomarkers associated with disease progression and thus potentially providing targets for therapeutic development.\n\n    Zeena was an Enrichment Student at the Alan Turing Institute, where she first engaged with the Turing-Roche Partnership and started looking at imputing missing data.\n    She was also part of the 2023/2024 Turing-Roche Partnership Community Scholar Scheme.\nhighlights: |\n    The main aim of my Turing-Roche Community Scholar project, was to create the {ref}`pd-missing-data` Chapter in the Turing Way handbook, consolidating what I learned during the [Turing Enrichment Scheme](https://www.turing.ac.uk/work-turing/studentships/enrichment) (and more) with current research of the [Turing-Roche Partnership](https://www.turing.ac.uk/research/research-projects/alan-turing-institute-roche-strategic-partnership).\n    Imputing and data missingness is an important aspect of a lot of research, due to missing data being a common problem, especially in large cross-cohort multimodal datasets.\n\n    A main highlight of this project was completing the chapter and then doing a live merge in a Collaboration Cafe, which also happened to be a Book Dash Q&A session.\n    It was also great to have the Chapter reviewed by [Vicky Hellon](https://github.com/vhellon).\n---\n:::\n\n:::{profile} Zoë Turner\n---\nroles: |\n    Fellow in NHS-R Community and Community Leader\ngithub: Lextuga007\nbio: |\n    I’m a Senior Data Scientist at the Midlands Decision Support Network which is part of the NHS Midlands & Lancashire Commissioning Strategy Unit.\n    I've been an analyst in the NHS and public sector for over 10 years and have been an active member and now proud Fellow of the NHS-R Community helping to run its activities since 2023.\n    I also have a particular interest in Ethics, having studied Philosophy, and some of my thoughts on this, along with technical blogs, can be found on my [blog site](https://philosopher-analyst.netlify.app/).\nhighlights: |\n    I started the Quarto book [NHS-R Community Way](https://nhsrway.nhsrcommunity.com/) closely following The Turing Way but used the format to document the NHS-R Community.\n    I wanted to put into the open all the detail that makes a community run where every person can be responsible and contribute, just like The Turing Way.\n    I promote The Turing Way because so much of the contributed work in it is as appropriate to analysis in the public sector as it is to research and I was consequently delighted to host a lightning talk from Sophia Batchelor at the 2024 RPySoc conference on The Turing Way.\nquote: |\n    The Turing Way has been both inspirational and a support working in an open way and documenting everything.\n    It's not just a repository of knowledge but a shining example of how a cultural shift to community ownership can transform how we get that knowledge out into the public domain where anyone can benefit from it.\n    I've learned so much about how to engage a community from The Turing Way and particularly have appreciated how GitHub issues have been used to get community input on all manner of subjects including the experiences of others in how to host events and what software has worked and why.\n    These discussions are so often hidden and people never get a chance to contribute or miss the time it is discussed so it was enlightning to see this approach from The Turing Way and one that I've since copied in the NHS-R Community.\n---\n:::\n"
  },
  {
    "path": "book/website/afterword/contributors/translators.md",
    "content": "(contributors-record-translators)=\n# Translators\n\n_The Turing Way_ uses Crowdin as a platform for contributing [translations](#ch-translation).\nThis page lists the contributors on Crowdin.\n\n<!-- CROWDIN-CONTRIBUTORS-LIST:START -->\n<table>\n  <tbody>\n    <tr>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/26/medium/5b77163808ce530c50d295f1336507d8_default.png\" />\n        <br />\n        <sub><b>Asma Kacem (asmakacem)</b></sub>\n        <br />\n        <sub><b>35934 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/1/medium/0c17284a2e87d9a1933f711746212298.jpeg\" />\n        <br />\n        <sub><b>Batool Almarzouq (batool664)</b></sub>\n        <br />\n        <sub><b>34202 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b>, <b><code title=\"Chinese Simplified\">zh-CN</code></b>, <b><code title=\"French\">fr</code></b>, <b><code title=\"Italian\">it</code></b>, <b><code title=\"Japanese\">ja</code></b>, <b><code title=\"Portuguese, Brazilian\">pt-BR</code></b>, <b><code title=\"Spanish, Latin America\">es-419</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/145/medium/06752c8f7224d971a260ffbdb67071e6.png\" />\n        <br />\n        <sub><b>Richie Moluno (molunorichie)</b></sub>\n        <br />\n        <sub><b>149739 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b>, <b><code title=\"Chinese Simplified\">zh-CN</code></b>, <b><code title=\"French\">fr</code></b>, <b><code title=\"Japanese\">ja</code></b>, <b><code title=\"Portuguese, Brazilian\">pt-BR</code></b>, <b><code title=\"Spanish, Latin America\">es-419</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/90/medium/6112a91c1fd9fd24ed2d5906a2db3ef9.jpeg\" />\n        <br />\n        <sub><b>cozenkaplan</b></sub>\n        <br />\n        <sub><b>5914 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/171/medium/b69b0ce61c692d4b1bf3f06e9d763dc8.jpeg\" />\n        <br />\n        <sub><b>Vitória Stavis (vitoriastavis)</b></sub>\n        <br />\n        <sub><b>5337 words</b></sub>\n        <br /><sub><b><code title=\"Portuguese, Brazilian\">pt-BR</code></b></sub>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/100/medium/17fa9c884f31b86b2236f8c2db0f4def_default.png\" />\n        <br />\n        <sub><b>melibleq</b></sub>\n        <br />\n        <sub><b>7757 words</b></sub>\n        <br /><sub><b><code title=\"Portuguese, Brazilian\">pt-BR</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/12/medium/112dffa3e5cc1fbd7fbbd3e9bfd520dc_default.png\" />\n        <br />\n        <sub><b>Mohamed Alaa Eddine Mejri (alaamejri)</b></sub>\n        <br />\n        <sub><b>2658 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/184/medium/7c26b64a5d9766cfc274eac3f0dc10b1.jpeg\" />\n        <br />\n        <sub><b>João Pitta (jlpitta82)</b></sub>\n        <br />\n        <sub><b>2558 words</b></sub>\n        <br /><sub><b><code title=\"Portuguese, Brazilian\">pt-BR</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/182/medium/71cf117221f1d2361873154d4ad25758.png\" />\n        <br />\n        <sub><b>Alicia Melo (aliemelo)</b></sub>\n        <br />\n        <sub><b>2514 words</b></sub>\n        <br /><sub><b><code title=\"Portuguese, Brazilian\">pt-BR</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/179/medium/a45b69ebaf4c8c652b42628022584fc2.png\" />\n        <br />\n        <sub><b>VITOR LUCIANO COSTA DA SILVA (vitor.silva7)</b></sub>\n        <br />\n        <sub><b>2455 words</b></sub>\n        <br /><sub><b><code title=\"Portuguese, Brazilian\">pt-BR</code></b></sub>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/135/medium/d8c65f8d4d1289eb0116d654ebd1fa7d_default.png\" />\n        <br />\n        <sub><b>node</b></sub>\n        <br />\n        <sub><b>2390 words</b></sub>\n        <br /><sub><b><code title=\"Chinese Simplified\">zh-CN</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/7/medium/ba8209f4544bc4fcf882f35ba295bc5c_default.png\" />\n        <br />\n        <sub><b>crangelsmith</b></sub>\n        <br />\n        <sub><b>2685 words</b></sub>\n        <br /><sub><b><code title=\"French\">fr</code></b>, <b><code title=\"Spanish, Latin America\">es-419</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/173/medium/0f7dcef1edc12d411af6f7b16a968623_default.png\" />\n        <br />\n        <sub><b>Matheus Pimenta (omatheuspimenta)</b></sub>\n        <br />\n        <sub><b>2159 words</b></sub>\n        <br /><sub><b><code title=\"Portuguese, Brazilian\">pt-BR</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/137/medium/0db9c41e4579dc47c5a289315ca6e016.jpeg\" />\n        <br />\n        <sub><b>João Vitor (jvfe)</b></sub>\n        <br />\n        <sub><b>1490 words</b></sub>\n        <br /><sub><b><code title=\"Portuguese, Brazilian\">pt-BR</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/5/medium/463393d04547cd1067cccdb0cf0e33c7.jpeg\" />\n        <br />\n        <sub><b>acocac</b></sub>\n        <br />\n        <sub><b>1892 words</b></sub>\n        <br /><sub><b><code title=\"Spanish, Latin America\">es-419</code></b></sub>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/10/medium/1b1667031f9e47e186ffdd6b8a184dfe.png\" />\n        <br />\n        <sub><b>Boutainaelatbaoui</b></sub>\n        <br />\n        <sub><b>1259 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/20/medium/32627112ab709769f5d1406937ed9558.jpg\" />\n        <br />\n        <sub><b>ثناء (Thana)</b></sub>\n        <br />\n        <sub><b>1094 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/68/medium/6deaa65b1f0997b43df812d13b2f1106.jpeg\" />\n        <br />\n        <sub><b>Kozo Nishida (kozo2)</b></sub>\n        <br />\n        <sub><b>1043 words</b></sub>\n        <br /><sub><b><code title=\"Japanese\">ja</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/108/medium/b060f6c4b504d701c36d4b384e612dd4_default.png\" />\n        <br />\n        <sub><b>berhankatipoglu</b></sub>\n        <br />\n        <sub><b>990 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/139/medium/2449eb1df310dcaff0ccb929817c5543.jpeg\" />\n        <br />\n        <sub><b>Anna Zanchetta (ciupava)</b></sub>\n        <br />\n        <sub><b>1846 words</b></sub>\n        <br /><sub><b><code title=\"Italian\">it</code></b></sub>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/64/medium/dc6bbb114a3c768f424a553bac213989.jpeg\" />\n        <br />\n        <sub><b>timothy22000</b></sub>\n        <br />\n        <sub><b>879 words</b></sub>\n        <br /><sub><b><code title=\"Chinese Simplified\">zh-CN</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/18/medium/4eaefb611f9a4efb0dbe090002e56c31_default.png\" />\n        <br />\n        <sub><b>seunlijoka</b></sub>\n        <br />\n        <sub><b>861 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/70/medium/2262b12230cac55e1d97a9d3f3af8086.png\" />\n        <br />\n        <sub><b>Muhammet Ali Kula (alikula314)</b></sub>\n        <br />\n        <sub><b>840 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/52/medium/1270d5b75e2b6b35d222b9e1c19b973f_default.png\" />\n        <br />\n        <sub><b>Muluh</b></sub>\n        <br />\n        <sub><b>713 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/106/medium/4525151e38c77aba3592e1666c7717f4.jpeg\" />\n        <br />\n        <sub><b>İsmail Kılıç (ismailkilic)</b></sub>\n        <br />\n        <sub><b>633 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/60/medium/dd415fa9f35bc08f229498c49bf053ea.JPG\" />\n        <br />\n        <sub><b>Iman Al Hasani (ImanAlhasani)</b></sub>\n        <br />\n        <sub><b>1274 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/66/medium/48ff46079939fb7bebca7186552ad3fc.jpeg\" />\n        <br />\n        <sub><b>Anıl Tuncel (anilbey)</b></sub>\n        <br />\n        <sub><b>609 words</b></sub>\n        <br /><sub><b><code title=\"Spanish, Latin America\">es-419</code></b>, <b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/177/medium/f7d1a233a687f2b8e760e38cc2ab1ec2.jpeg\" />\n        <br />\n        <sub><b>Leonardo Dorneles (leonardodorneles)</b></sub>\n        <br />\n        <sub><b>533 words</b></sub>\n        <br /><sub><b><code title=\"Portuguese, Brazilian\">pt-BR</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/161/medium/d623b8524dd0f439d7d720263233ef0a.png\" />\n        <br />\n        <sub><b>jordan49er</b></sub>\n        <br />\n        <sub><b>372 words</b></sub>\n        <br /><sub><b><code title=\"French\">fr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/86/medium/591f614a9b9be8d2ec9b04e63699a377.jpeg\" />\n        <br />\n        <sub><b>Ceren YURTLU (cerenyurtlu)</b></sub>\n        <br />\n        <sub><b>362 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/98/medium/84288ef00942e512a1e54bc8545db2f1.jpeg\" />\n        <br />\n        <sub><b>yasin güneş (yasin01ysn)</b></sub>\n        <br />\n        <sub><b>269 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/3/medium/83bd007136a00d1a9fa70f1f14afbb66_default.png\" />\n        <br />\n        <sub><b>Andrea Sánchez-Tapia (andreasancheztapia)</b></sub>\n        <br />\n        <sub><b>2134 words</b></sub>\n        <br /><sub><b><code title=\"Portuguese, Brazilian\">pt-BR</code></b>, <b><code title=\"Spanish, Latin America\">es-419</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/131/medium/0b582d612e2a4062b069a758f2534430.jpeg\" />\n        <br />\n        <sub><b>Johan Bonneau (Zenigata)</b></sub>\n        <br />\n        <sub><b>254 words</b></sub>\n        <br /><sub><b><code title=\"French\">fr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/8/medium/d6d807e129e1bb3c24aa1635afeb6d09.jpeg\" />\n        <br />\n        <sub><b>Nancy Aswad (nancyalaswad90)</b></sub>\n        <br />\n        <sub><b>230 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/48/medium/42082ab79726e9cee6033ad20c017722.jpeg\" />\n        <br />\n        <sub><b>Salma Abdelfattah (salmaabdelfatah77)</b></sub>\n        <br />\n        <sub><b>225 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/121/medium/b2f34f2fea0e93e39a3f9beafabc0fb5_default.png\" />\n        <br />\n        <sub><b>danielumpierre</b></sub>\n        <br />\n        <sub><b>243 words</b></sub>\n        <br /><sub><b><code title=\"Portuguese, Brazilian\">pt-BR</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/36/medium/7fedad8f1ac74abc71cb774f8b7236ca.png\" />\n        <br />\n        <sub><b>IssaAlrubaye</b></sub>\n        <br />\n        <sub><b>231 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/54/medium/49e7cf2ae4b97bc5dca7c2d848e84117.png\" />\n        <br />\n        <sub><b>Abdulrahman Alswaji (alswajiab)</b></sub>\n        <br />\n        <sub><b>164 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/125/medium/3f3d78bc1e1aed775ca33429148b74e4.jpeg\" />\n        <br />\n        <sub><b>KHADIJAH WURAOLA AMUSAT (Khadeeejah)</b></sub>\n        <br />\n        <sub><b>164 words</b></sub>\n        <br /><sub><b><code title=\"Arabic\">ar</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/92/medium/8d9e7e27ed54c88f71729cea1b8d98b0_default.png\" />\n        <br />\n        <sub><b>iclal.cetin</b></sub>\n        <br />\n        <sub><b>91 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/80/medium/bd65e4c199c4894429131d427d14871b_default.png\" />\n        <br />\n        <sub><b>niraito</b></sub>\n        <br />\n        <sub><b>87 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/84/medium/9b47771c0437ed8f8bf438caef48f508_default.png\" />\n        <br />\n        <sub><b>merveaydin</b></sub>\n        <br />\n        <sub><b>77 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/154/medium/ca8fba23cbd0d3868c752404f7347b04.png\" />\n        <br />\n        <sub><b>Annajiat Alim Rasel (annajiat)</b></sub>\n        <br />\n        <sub><b>71 words</b></sub>\n        <br /><sub><b><code title=\"Bengali\">bn</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/62/medium/ba0593097d63731f2da78ae9e0ed3296.jpeg\" />\n        <br />\n        <sub><b>Gültekin Ünal (cinnetcrash)</b></sub>\n        <br />\n        <sub><b>63 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/109/medium/1ea5e78434e043089a69456bca38e711.JPG\" />\n        <br />\n        <sub><b>Burhan Simsek (burhansimsekbs)</b></sub>\n        <br />\n        <sub><b>45 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n    </tr>\n    <tr>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/159/medium/94ce74abfc3812748a934c152198b0af.jpeg\" />\n        <br />\n        <sub><b>Adrien Taudiere (adrientaudiere)</b></sub>\n        <br />\n        <sub><b>36 words</b></sub>\n        <br /><sub><b><code title=\"French\">fr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/72/medium/137b4d9172d1ad8ed62737ac8e13a045_default.png\" />\n        <br />\n        <sub><b>fatmaerdem</b></sub>\n        <br />\n        <sub><b>40 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/74/medium/9113e949babb3cc63807298633376b00.jpeg\" />\n        <br />\n        <sub><b>Şükrücan Cebeci (sukrucncbc)</b></sub>\n        <br />\n        <sub><b>11 words</b></sub>\n        <br /><sub><b><code title=\"Turkish\">tr</code></b></sub>\n      </td>\n      <td align=\"center\" valign=\"top\">\n        <img alt=\"logo\" style=\"width: 100px\" src=\"https://production-enterprise-static.cf-downloads.crowdin.com/avatar/151/medium/bf57e39ccfdd7d3d9de8bd94551b7f05.jpeg\" />\n        <br />\n        <sub><b>mcnanton</b></sub>\n        <br />\n        <sub><b>4 words</b></sub>\n        <br /><sub><b><code title=\"Spanish, Latin America\">es-419</code></b></sub>\n      </td>\n    </tr>\n  </tbody>\n</table><a href=\"https://turingway.crowdin.com/turing-way\" target=\"_blank\">Translate in Crowdin 🚀</a>\n<!-- CROWDIN-CONTRIBUTORS-LIST:END -->\n"
  },
  {
    "path": "book/website/afterword/contributors-record.md",
    "content": "(contributors-record)=\n# Record of Contributors\n\nContributions to _The Turing Way_ may include but are not limited to, bug fixing, chapter planning, writing, editing, reviewing, idea generation, presentation, project management, and maintenance.\nWe recognise all these contributions and acknowledge our community members fairly.\n\nWe understand that different contributions mean different things to people and may translate differently towards their personal interest, skill development, value exchange and advancement of their careers.\nTherefore, we also offer  as a dedicated location to capture personal highlights from _The Turing Way_ community members.\n\n:::{embed} tab-contribution-records\n:::\n\n:::{note}\nPlease see the [community handbook](#ch-acknowledgement) for details on how you can be fairly acknowledged for your work.\n:::\n"
  },
  {
    "path": "book/website/afterword/data-usage-statement.md",
    "content": "(data-usage)=\n# _The Turing Way_ Book Data Usage\n\nWe want to understand and optimise the use, geographical reach, and findability of _The Turing Way_ book.\nIt is possible through information such as how many people currently use the book, which chapters are they interested in, from which countries are they able to access our resources or where we are not currently findable or accessible.\nTherefore, we are collecting some data on our website activities, which we describe in this document. \n\nFor example, we are keen to understand data on website traffic as it helps with assessing and reporting impact through different channels.\nData on search terms people use to find the website can help us understand readers' needs and preferences.\nWith this knowledge, we can better tailor our content to be useful.\n\nSee our ongoing discussions [on GitHub](https://github.com/the-turing-way/the-turing-way/discussions/3713) around which insights could help improve the content quality. \n\nFor the above reasons, we are currently using Google Analytics to track traffic on our website and [Cauldron](https://cauldron.io/) to track activity on our GitHub repository.\n\n## User Awareness Statement - Google Analytics\nGoogle Analytics is [problematic](https://piwik.pro/blog/is-google-analytics-gdpr-compliant/).\nWe are working on using an open-source, GDPR-compliant analytics tool like [Matomo](https://matomo.org/) or other ethical analytics tools instead.\n\nFor now, we have configured Google Analytics to be as GDPR-compliant as possible:\n\n- Our data retention settings are set to the minimum duration possible (2 months).\n- All advertising features are disabled.\n- We do not send user IDs to Google.\n- We do not share any collected data with Google beyond what is required of us to [\"maintain and protect the Google Analytics service.\"](https://business.safety.google/adsprocessorterms/)\n- Note that, in the latest Google Analytics version, IP addresses are now anonymized per default.\n\nBy implementing these measures, we hope to somewhat mitigate the adverse effects of Google Analytics while we transition to a better tool.\nIf you would like to get involved in this discussion, please head over to the GitHub issue linked to this document. \n\nFor other related questions, please reach out to _The TuringWay_ team by emailing [turingway@turing.ac.uk](mailto:turingway@turing.ac.uk).\n"
  },
  {
    "path": "book/website/afterword/glossary.md",
    "content": "(aw-glossary)=\n\n# Glossary\n\n## A\n\n```{glossary}\nacceptance testing\n: A level of the software testing process where a system is tested for acceptability. The purpose of this test is to evaluate the system's compliance with the project requirements and assess whether it is acceptable for the purpose.\n\nacknowledgements\n: Where contributions to a project that don't qualify as authorship are written. It records the contributors name and the contribution that they made is described.\n\nadd\n: Command used to add files to the staging area. Allows the user to specify which files or directories to include in the next commit.\n\nadversarial learning\n: A process under which learning systems are exposed to negative stimuli, such as the addition of purposefully manipulated data samples, in order to obtain potentially-beneficial effects. Examples of this technique may include the addition of additional learning objectives which penalise unwanted characteristics of a learning system, for example the ability to distinguish between data records based on inappropriate demographic attributes.\n\nartificial intelligence\n: The ability of synthetic computational systems to perform tasks and activities usually associated with biological, especially human, mental and intellectual capabilities.\n  Also the field of study associated with imbuing synthetic systems with these capabilities.\n  See also {term}`machine learning`\n\nauthors\n: Authors in this context are the contributors to _The Turing Way_ project who have made a substantial contribution to the project such as writing a subchapter, facilitating community interactions, maintaining project’s infrastructure and supporting the participation of others through mentored-contributions. All authors are named co-authors on the book as a whole.\n```\n\n---\n\n## B\n\n```{glossary}\nBinder\n: A web-based service which allows users to upload and share fully-functioning versions of their projects in an environment they define.\n\nBinderHub\n: A service which generates binders. The most widely-used is mybinder.org, which is maintained by the Binder team. It is possible to create other BinderHubs which can support more specialised configurations. One such configuration could include authentication to enable private repositories to be shared amongst close collaborators.\n\nbinderize\n: To make a Binder of a project.\n\nbranch\n: In a version control system like {term}`Git` a branch is a history of changes which diverge from the main code.\n  Multiple branches can be used to track different contributions or pieces of in-progress work.\n  In {term}`Git` a branch is simply a pointer to a {term}`commit` and the main code is just another branch.\n\nbug\n: This is an error, flaw or fault in a computer program or system that causes it to produce an incorrect or unexpected result, or to behave in unintended ways.\n\nbuild\n: A group of jobs. For example, a build might have two jobs, each of which tests a project with a different version of a programming language. A build finishes when all of its jobs are finished.\n```\n\n---\n\n## C\n\n```{glossary}\ncheckout\n: Git command to switch to a specific file, branch, or commit. Allows you to activate older versions of files or commits or switch between active branches.\n\ncitizen science\n: The inclusion of members of the public in scientific research.\n\nclone\n: Copy of an existing Git repository, normally from some remote location to your local environment. When you clone a repo you copy its entire history as well as all branches.\n\ncode coverage\n: A measure which describes how much of the source code is exercised by the test suite.\n\ncode of conduct\n: Guidelines that establish the kind of behaviour encouraged in the community, outline the process by which problems or violations of the guidelines will be addressed and who will be in charge of enforcing them.\n\ncode review\n: An additional way of testing code quality. Code review gets another programmer to look over the new code and assess it. The goal is to point out strengths and also potential areas of improvement.\n\ncoercive authorship\n: When a senior researcher forces a junior researcher to include a gift or guest author.\n\ncommit\n: Snapshot of project history. A commit can be made after changes of a single file or a range of files and directories.\n\ncommit message\n: A message the user can attach to a commit to explain what it contains.\n\ncommunication channel\n: The method of communication established for projects that might include mailing lists, community forums, chats and/or social media.\n\ncommunity member\n: People who use the project. They might be active in conversations or express their opinion on the project’s direction.\n\ncomputational environment\n: Features of a computer which can impact the behaviour of work done on it, such as its operating system, what software it has installed, and what versions of software packages are installed.\n\nconda\n: A commonly used package management system.\n\nconsortia authorship\n: A collective or community group authorship model. All members of the consortium are considered authors and are usually required to be listed in the published article although sometimes the article is published in the groups name. If not all members of the consortium agree to the responsibilities of authorship, the members that are authors will be listed separately from those who are not.\n\ncontainer\n: Lightweight files that can encapsulate an entire computational environment including its operating system, customised settings, software and files.\n\ncontinuous delivery\n: It automates and runs the steps required to build and test a project.\n\ncontinuous deployment\n: It automatically deploys each time a code change is made.\n\ncontinuous integration\n: A development practice where changes are automatically, and rapidly, integrated into the development branch.\n  This approach helps ensure the development code works and helps avoid large conflicts between feature branches.\n  The term is strongly associated with tools which support this way of working, such as automated building and testing, which are often called continuous integration tools.\nCommonly abbreviated to CI.\n\ncontributing guidelines\n: Guidelines outlining how a person should go about contributing to an open source project.\n\ncontributors\n: Everyone who has contributed something back to the project. These are members of a research project that have done some work that has made a contribution to the overall completion of the research. This could be a small contribution such as fixing a bug in software or a much larger contribution such as writing an academic article.\n\ncorresponding author\n: The person who administers an academic article for the research group. They are responsible for receiving the reviewers comments, the proofs, corresponding with the editors and their details are printed on the final version of the published article.\n\ncreative commons\n: Creative commons licenses provide standard language with which to place a creative work into the commons by providing simple terms under which others can reuse it.\n  This is necessary as in almost all legal regimes by default authors reserve all rights to works even if they make them publicly available unless they explicitly provide a license stipulating otherwise.\n  You can read more about copyright and licensing in {ref}`the chapter on licensing<rr-licensing>`.\n  The 'CC0' is a public domain dedication waiving the copyright and anyone to use the work as they see fit.\n  There are a number of variants on the creative license which use the copyright on the work to stipulate terms on which it can be re-used.\n  The variants add or modify terms of the license, such as requiring attribution (BY), prohibiting commercial reuse (NC), prohibiting derivative works (ND), and requiring that any derivative works be shared under equivalent terms (SA).\n  The organisation [Creative Commons (CC)](https://web.archive.org/web/20240704044626/https://creativecommons.org/) is a non-profit (501(c)(3)) based in the USA with a number of international affiliates.\n\nCRediT\n: CRediT is a high-level taxonomy, including 14 roles, that can be used to represent the roles typically played by contributors to scientific scholarly output. The roles describe each contributor’s specific contribution to the scholarly output. These details are becoming increasingly required by journals as well as authors meeting authorship criteria.\n```\n\n---\n\n## D\n\n```{glossary}\ndata \n: Facts, measurements, recordings, records, or observations about the world, collected by researchers, that are yet to be processed/interpreted/analysed.\nData may be in any format or medium taking the form of writings, notes, numbers, symbols, text, images, films, video, sound recordings, pictorial reproductions, drawings, designs or other graphical representations, procedural manuals, forms, diagrams, work flow charts, equipment descriptions, data files, data processing algorithms, or statistical records.\nSource: [CODATA](https://terms.codata.org/rdmt/data)\n\ndata article\n: A data article or a data paper is a peer-reviewed academic publication focussed on the description of a dataset.\nSource: [CODATA](https://terms.codata.org/rdmt/data-paper)\n\ndata repository\n: A storage place on the internet where resources (data, software, publications or anything else) can be stored and accessed. Often data repositories provide long term preservation and persistent identifiers for the research objects stored. A data repository is the container for data and metadata, whereas a database is the structure that is used to store and manage that data.\n\ndifferential privacy\n: A strategy to provide quantifiable privacy guarantees when working with datasets containing personal information. The idea is that if the effect of making a single arbitrary substitution of a single record within the dataset on an aggregated query is below a specific threshold, then the result of any such query would not reveal substantial information about any individual member.\n\nDMP\n: Data Management Plan.\n\nDNS\n: Domain Name System.\n  The system which translates domain names, for example book.the-turing-way.org, to the IP addresses used by computer networks.\n\nDocker container\n: An active computational environment executed from a Docker image.\n\nDocker compose\n: A tool that makes it easier define and run multi-container Docker applications in a reproducible manner. Through a YAML file, you can declaratively specify your deployment including containers, networks, and volumes. You can then deploy all resources with a single command.\n\nDockerfile\n: A file used for creating Docker images\n\nDocker image\n: A machine-readable set of instructions to create a specified computational environment.\n\nDocker registry\n: A storage and distribution system for named Docker images. The registry allows Docker users to pull images locally, as well as push new images to the registry (given adequate access permissions when applicable). Such systems are often hosted in the cloud for ease of access.\n\ndigital object identifier\n: A digital object identifier (DOI) is a persistent identifier or handle used to identify objects uniquely, standardized by the International Organization for Standardization (ISO). An implementation of the Handle System, DOIs are in wide use mainly to identify academic, professional, and government information, such as journal articles, research reports, data sets, and official publications. However, they also have been used to identify other types of information resources, such as commercial videos.\n```\n\n---\n\n## E\n\n```{glossary}\n\nelectronic laboratory notebook\n: An Electronic Laboratory Notebook (commonly known as an ELN or a digital lab notebook) is a software system designed to help you document and maintain reproducibility of your research and share information more easily. \nELNs enable researchers to organize and store experimental procedures, protocols, plans, notes, data, and even unfiltered interpretations using their computer or mobile device.\n\nend to end test\n: A test that runs the program from beginning to end and verifies that the output is correct.\n\nepistemology\n: Theory of knowledge and deals with how knowledge is gathered and from which sources.\n  In research terms your view of the world and of knowledge strongly influences your interpretation of data and therefore your philosophical standpoint should be made clear from the beginning {cite}`brownEpistemology2015`.\n\nequitable, diverse and inclusive practices\n: Ensuring scholarship is open to anyone without barriers based on factors such as race, background, gender, and sexual orientation.\n\nethical source software\n: These licenses were created as 'traditional' {term}`open source <Open Source Software>` licenses make no restrictions on the uses to which the software can be put including unethical uses.\n  These licenses require that software is used in ways that respect fundamental human rights.\n  This can be thought of as relaxing the hardline 'freedom to run software for any purpose' stipulation required for software to qualify as free / libre or open source by the conventional definitions.\n  Whilst these licenses sought to be considered {term}`open source <Open Source Software>`, their terms place restrictions on the uses to which the software can be put so that anyone using the software in a way the licenses consider unethical would potentially expose themselves to liability.\n  Use restrictions are prohibited by conventional definitions of open source so ethical source license could be thought of as a form of {term}`source available<Source Available>` license.\n  See [](#rr-licensing-ethical-source) for more.\n```\n\n---\n\n## F\n\n```{glossary}\nFAIR\n: Findable, Accessible, Interoperable and Reusable.\n\nFAIR code\n: A software licensing model where code is commercially restricted by it's authors but the source code is generally available and can be freely distributed and modified but with limits on how and if it can be used commercially.\n  The model is described at [faircode.io](https://web.archive.org/web/20240621082333/https://faircode.io/), examples include the [Business Source License](https://web.archive.org/web/20240608005051/https://mariadb.com/bsl11/) and the [Elastic License 2.0](https://web.archive.org/web/20240625130857/https://www.elastic.co/licensing/elastic-license).\n  A number of attempts have been made to make licenses with a similar intent, this space is somewhat controversial in free and open source software spaces, where restrictions on the ways in which software can be used disfavoured.\n  Fair-code can be considered a subset of {term}`source available<Source Available>` code.\n\nfeature branch\n: A {term}`branch` where you are working on a particular change or \"feature\" that you will aim to merge with the main branch.\n\nfederated learning\n: A design paradigm for information processing technologies in which the processing of information is decentralized and local data samples are not exchanged in full with a central entity.\n  Used in machine learning to denote a system where learning is carried out via multiple nodes through the exchange of parameter values or other learning products rather than data samples directly.\n\nfirst author\n: The most prominent position in academic authorship. It conveys this person's position as the researcher who has made the greatest contribution to the research.\n\nfree or libre software\n: The [Free Software Foundation (FSF)](https://web.archive.org/web/20240619064659/https://www.gnu.org/philosophy/free-sw.html) states that: \"'Free software' means software that respects users' freedom and community. Roughly, it means that the users have the freedom to run, copy, distribute, study, change and improve the software.\", refer to their website for a lengthier definition, see also the [Debian Free Software Guidelines](https://web.archive.org/web/20240517221908/https://wiki.debian.org/DebianFreeSoftwareGuidelines).\n  Free software does not have to be monetarily free (gratis) you can buy and sell copies.\n  Its chief concern is liberty not price, hence the use of 'libre software' as the word free in english does not distinguish these concepts.\n  Notably almost all {term}`open source software<Open Source Software>` is also 'free' and the different terms reflect philosophical differences largely in the motivation for advocating for these freedoms.\n\nfree cultural works\n: A list of conditions under which a work must be shared in order to be considered 'free' meaning that anyone is free to use, modify and distribute the work including derived works for any purpose.\n  For a full description see: [freedomdefined.org](https://web.archive.org/web/20240630025334/https://freedomdefined.org/Definition)\n  This is a generalisation of the 'four freedoms' originally developed to define {term}`free software<Free or Libre Software>`\n```\n\n---\n\n## G\n\n```{glossary}\ngeneralisable\n: Combining replicable and robust findings allow us to form generalisable results. Note that running an analysis on a different software implementation and with a different dataset does not provide generalised results. There will be many more steps to know how well the work applies to all the different aspects of the research question. Generalisation is an important step towards understanding that the result is not dependent on a particular dataset nor a particular version of the analysis pipeline.\n\nGit\n: Version control system that GitHub is built around. It is a widely used open source distributed version control system developed by the author of Linux.\n\nGithub\n: An online code hosting and version control service. It has a great many features to aid collaboration between users, and hosts a large number of open source projects.\n\nGitLab\n: GitLab is a web-based DevOps lifecycle tool that provides a Git-repository manager providing wiki, issue-tracking and continuous integration and deployment pipeline features, using an open-source license, developed by GitLab Inc.\n\nghost author\n: It is a person who writes an academic article without having carried out the research. It could be a professional writer. They would often not qualify as an author under the ICMJE criteria for authorship.\n\ngift author\n: People who are listed as authors but who did not make significant contributions to the research. This is also known as a guest author.\n\ngroup authorship\n: Some journals permit the use of group names but many require contributors to be listed and/or the writing group to be named. This is the same as shared authorship.\n\nguarantor\n: As well as fulfilling criteria for being a named author, some journals require one or more authors that take responsibility for the integrity of the work as a whole from inception to the published article.\n```\n\n---\n\n## H\n\n```{glossary}\nhazard\n: Inherent qualities or characteristics of something that make it potentially harmful.\n\nhead\n: The latest commit on the branch which is currently checked out.\n\nHelm\n: A package manager for Kubernetes applications.\n\nhonorary authorship\n: This is when an individual becomes a named author even though they have not made a substantial contribution and/or met authorship criteria.\n\nhosting\n: A service which makes data, such as a website, available on the internet.\n  It is possible to self-host, using your own infrastructure.\n  However, it is common to use a third-party, often commercial, hosting provider.\n\nhuman readable\n: A human readable medium or human readable format is any encoding of data or information that can be naturally read by humans. Some human readable formats, such as PDF, are not machine readable as they are not structured data, such as the representation of the data on disk does not represent the actual relationships present in the data.\n```\n\n---\n\n## I\n\n```{glossary}\nidentifier\n: An identifier is a key or name used as label or the identity of a unique class of objects, representing an idea or physical objects. Also see: Persistent Identifier, Digital Object Identifier.\n\nimage\n: Files used for generating containers.\n\ninner source\n: Inner source is the use of open source software development best practices (open collboration, open communication and peer review practices) and the establishment of an open source-like culture within an organisation for the development of a non-open source output.\n\nintegration testing\n: A level of software testing where individual units are combined and tested as a group. The purpose of this level of testing is to expose faults in the interaction between integrated units.\n\nintersectionality\n: The way in which a person's identities (gender, race, class, sexual orientation, physical ability and others) can overlap and intersect to form a unique experience of social status, discrimination or oppression. This term was coined by Professor Kimberlé Crenshaw.\n\nissues\n: Bug tracking system for GitHub. Collaborators can use issues to report bugs, request features, or set milestones for projects. Issues are tracked, reported, and closed by collaborators during the development process. They’re a great way of communicating with your team and reporting progress.\n\nissue tracking\n: The process of tracking current issues on the project, such as bug fixing, rolling out new features or community engagement plans.\n```\n\n---\n\n## J\n\n```{glossary}\njob\n: An automated process that clones your repository into a virtual environment and then carries out a series of phases such as compiling your code and running tests. A job fails if the return code of the script encounters an error.\n\nJupyterHub\n: A multi-user server for Jupyter Notebook instances.\n```\n\n---\n\n## K\n\n```{glossary}\nKubernetes\n: Autonomous computational cluster manager.\n```\n\n---\n\n## L\n\n```{glossary}\nlicense\n: This is a legal document that sets out the permissions for creative and academic work. It explains copyright, ensures proper attribution and sets out how others can copy, distribute and make use of the works.\n  See the chapter: {ref}`Licensing<rr-licensing>`\n\nlast author\n: Usually the person in the research team with a supervisory role such as a PhD supervisor or Principal investigator. This is discipline dependent as sometimes the last author is the person that has made the smallest contribution to the research.\n```\n\n---\n\n## M\n\n```{glossary}\nmachine learning\n: Methods which allow computational systems to extract regularities from data which permit them to perform tasks such as prediction and categorisation in a way that is at least superfially analogous to how biological systems learn.\n  A broad sub-field of {term}`artificial intelligence` (AI) generally distinct from symbolic artificial intelligence, also know as GOFAI (good old fashioned AI), which focuses on programmed systems which perform logical reasoning.\n  Machine learning is sometimes used interchangeably with artificial intelligence, but often employed to differentiate concrete or extant systems and algorithms from broarder and more speculative approaches to synthetic intelligent systems.\n\nmachine readable\n: Machine readable refers to documents, data or other digital outputs whose content can be readily processed by computers. Such documents are distinguished from machine readable data by virtue of having sufficient structure to provide the necessary context to support the business processes for which they are created. Machine readable data can be defined as data in a format that can be easily processed by a computer without human intervention while ensuring no semantic meaning is lost.\n\nmain\n: The repository’s main branch. Depending on the workflow, it is the one people work on or the one where the integration happens. This used to be called ‘Master’ in Github.\n\nmaintainers\n: Contributors who are responsible for driving the vision and managing the organizational aspects of the project. They may also be authors and/or owners of the project.\n\nMakefile\n: A text file that contains the configuration for the build.\n\nMarkdown\n: A lightweight {term}`markup` language with plain-text-formatting syntax.\n  Its design allows it to be converted to many output formats, but the original tool by the same name only supports HTML.\n  Markdown is often used to format readme files, for writing messages in online discussion forums, and to create rich text using a plain text editor.\n  There are various flavors of Markdown which extend the original Markdown with additional features or syntax changes.\n  Some popular flavors are [Myst Markdown](https://mystmd.org/), [CommonMark](https://commonmark.org/), [GitHub flavored Markdown](https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax), [GitLab flavored Markdown](https://docs.gitlab.com/user/markdown) and [pandoc Markdown](https://pandoc.org/MANUAL.html#pandocs-markdown).\n\nmarkup\n: A markup language is a plain-text language for authoring documents.\n  They feature syntax to describe how the document should be presetend when published.\n  Markup has advantages over rich-text documents such as compatibility with version control and letting writers focus on content and structure rather than appearance.\n  Examples of markup languages include {term}`Markdown`, ReStructed Text, HTML and TeX.\n\nmerge\n: The process of combining branches. Changes made on one or more branches are applied to another.\n\nmerge conflict\n: Incompatibilities between branches being merged.\n\nmetadata\n: Data used to describe other data. For example (35, 33, 27, 30, 33) is data but the units (miles per hour) and the fact these are the speeds of cars on a certain stretch of road is metadata.\n\nmock test\n: Replace a real object with a pretend one to use when running tests.\n```\n\n---\n\n## N\n\n---\n\n\n## O\n\n```{glossary}\nopen access\n: Making all published outputs freely accessible for maximum use and impact.\n\nopen access publishing (gratis)\n: The practice of making research publications available to anyone to read without charge.\n\nopen access publishing (libre)\n: Libre open access is gratis, meaning the research is available free of charge, but it goes further by granting users the right to copy, reuse, and remix the publication.\n\nopen core\n: A model for the monetisation of software where the 'core' components are {term}`open source<Open Source Software>` but there are additional features and/or hosted software as a service versions of, or extensions to, the software which are proprietary and paid for.\n\nopen data\n: Documenting and sharing research data openly for reuse.\n\nopen educational resources\n: Making educational resources publicly available to be re-used and modified.\n\nopen license\n: A license is a document that specifies what can and cannot be done with a work.\n  It grants permissions and states restrictions.\n  Broadly speaking, an open license is one that grants permission to access, reuse and redistribute a work with few or no restrictions.\n  (See {ref}`licensing<rr-licensing>` for more details)\n\nopen notebooks\n: An emerging practice, documenting and sharing the experimental process of trial and error (see {ref}`Open Notebooks <rr-open-notebooks>`).\n\nopen project\n: *Same as Open Science or Open Research Projects*.\n  A project in which a significant amount of collaboration between the core or leadership team and the wider community takes place in the form of online interactions.\n  Community interactions should maintain transparency and openness of the project to facilitate the growth of your community.\n\nopen scholarship\n: This is a concept that extends open research further.\n  It relates to making other aspects of scientific research open to the public such as open educational resources, having inclusive practice and citizen science.\n\nOpen source\n: [opensource.com](https://web.archive.org/web/20240618150233/https://opensource.com/resources/what-open-source) describes open source as:\n  \"Something people can modify and share because its design is publicly accessible\".\n  The concept of 'open source' is now often extended beyond the context of its original coinage, {term}`software<open source software>`,\n  to other forms of cultural or creative output, such as {term}`hardware<open source hardware>` and {term}`educational resources<open educational resources>`.\n  Referring to something as 'open source' generally means that it is available under an {term}`open license`.\n  The term can also extend to an {term}`open project` philosophy of collaboration beyond the mere availability and open licensing of the project's source materials.\n  The term tends to, but need not, be applied in contexts where there is some 'source' material that is processed or synthesised into an output.\n  For example an image created with a simple bitmap editor might be referred to as 'open source' despite lacking something that can be considered a 'source'.\n  In such cases the notion of a '{term}`creative commons`' or '{term}`free cultural works`' may better apply as these do not as obviously emphasise the availability source materials but rather end products,\n  though they may include source materials.\n  There are also a number adjacent concepts which most often question the conventional open source prohibtion on restricting the uses to which open source things can be put, examples include: '{term}`ethical source<ethical source software>`' and '{term}`FAIR Code`'.\n\nopen source hardware\n: Hardware whose design is made publicly available so that anyone can study, modify, distribute, make, and sell the design or hardware based on that design.\n\nopen source software\n: Broadly, users of the software must able to inspect, modify and redistribute the source code of the software as they see fit, and not restrict the uses to which the code can be put or by whom it can be used.\n  The [Open Source Initiative (OSI)](https://opensource.org/) offers a widely used definition of Open Source Software: The [Open Source Definition (OSD)](https://web.archive.org/web/20240619054907/https://opensource.org/osd) which is comprised of 10 criteria with which the terms of distribution of software must comply to meet their definition.\n  The OSI maintains a list of licenses which have gone through their review process and been approved.\n  Open source software should not be confused with {term}`source available<Source Available>` software it is not sufficient for the source code to be made available for a project to be considered open source.\n  Almost all open source software is also {term}`Free / Libre Software<Free or Libre Software>`.\n  For more details see: {ref}`Licensing<rr-licensing>` and {ref}`Open Source Software<rr-open-source>`.\n\nORCID\n: Open Researchers and Contributor iD. It is a long lasting unique identifier for you as a researcher.\n  A persistent digital identifier for researchers' that can be used on publications to ensure fair credit is given for all the researchers works.\n\nowner\n: The person/s who has administrative ownership over the organization or repository (not always the same as the original author).\n```\n\n---\n\n## P\n\n```{glossary}\npackage management system\n: A tool for installing, managing, and uninstalling software packages including specific versions.\n\npersistent identifier\n: A long-lasting reference to a document, file, web page, or other digital object for identifying a resource that is unique, and widely understandable by a community. Also see: Digital Object Identifier.\n\npattern\n: A pattern rule is a rule that contains exactly one % character in the target, which can be used to match a part of a filename.\n\npeer review\n: A process of evaluating one's work by others working in the same field.\n\npersona\n: A persona is the detail of an imaginary user or member, based on real-world observations and understandings of existing members or potential future members.\n\npersona canvas\n: The persona canvas can be used to assemble all your responses in one place, share this tangible information of your mental model (abstract concepts from our thoughts) with your colleagues and create a common language to communicate about your community members, users, and contributors.\n\nphony target\n: A phony target is one that doesn’t correspond to a file on the filesystem. A target is marked as phony by making it a prerequisite of the .PHONY target.\n\nplain language\n: Plain Language (also sometimes referred to as Plain writing or Plain English) is language and communication that your audience can understand the first time they read or hear it. Plain Language is defined by clear, straightforward communication that uses only as many words as are necessary to ensure that your audience understands the message easily. Most newspapers are written using plain language.\n\npositionality\n: Differences in social position and power shape identities and access in society. In acknowledging positionality, we also acknowledge intersecting social locations and complex power dynamics (also see: Intersectionality).\n\npower users\n: These are people who are already familiar enough with a platform to know the gotchas and tricks that make their experience more efficient.\n\npreprint\n: A preprint is a version of a scholarly or scientific paper that precedes formal peer review and publication in a peer-reviewed scholarly or scientific journal. It is usually uploaded by the authors to a public server where it is available openly.\n\nprerequisite\n: The prerequisite(s) of a rule correspond to files or other targets in the Makefile that must be up to date before the rule is run.\n\nproject design\n: An early phase of the project where a project's key features, structure, criteria for success, and major deliverables are all planned out.\n\npull request\n: Proposed changes to a remote repository. Collaborators without write access can send a pull request to the administrator with the changes they’ve made to the repo. The administrator can then approve and merge or reject the changes to the main repository. For open source projects pull requests can be sent by anyone that has forked a project.\n\npush\n: Sending changes to a remote repo. The remote repository is updated with the changes pushed and now mirrors the local repo.\n```\n\n---\n\n## Q\n\n---\n\n## R\n\n```{glossary}\nRDM\n: Abbreviation for research data management - see research data management for definition.\n\nREADME\n: A file which contains useful information about a project such as what it is, how to use/install it, how to test it, and how to contribute to it.\n\nrecipe\n: One or more shell commands that are executed by Make. Usually these commands update the target of the rule.\n\nregression test\n: Comparing the result of a test before and after the code has been altered. If the output has changed a problem has been introduced somewhere in the program, and an error is thrown.\n\nreplicable\n: A result is replicable when the same analysis performed on different datasets produces qualitatively similar answers.\n\nrepo2docker\n: A tool to build Docker images from code repositories.\n\nrepository\n: A central location where resources (data, software, publications or anything else) are stored and accessed. This keyword is often shortened to ‘repo’. See Data Repository if this place is long-lived.\n\nreproducible\n: A result is reproducible when the same analysis steps performed on the same dataset consistently produces the same answer.\n\nrendered output\n: This is what the text will look like on an online page in Github or web page\n\nresearch compendia\n: This is a collection of all digital parts of a research project including data, code, texts (protocols, reports, questionnaires, metadata). The collection is created in such a way that reproducing all results is straight forward.\n\nresearch data management\n: *Acronym: RDM*. Storage, access and preservation of data created or collected in the course of research.\n  Research data management practices cover the entire lifecycle of the data, from planning the investigation to conducting it, and from backing up data as it is created and used to long term preservation of data deliverables after the research investigation has concluded.\n  Source: [CODATA](https://terms.codata.org/rdmt/research-data-management).\n\nresearch ethics\n: Research ethics are the moral principles that govern how researchers should carry out their work. These principles are used to shape research regulations agreed by groups such as university governing bodies, communities or governments. All researchers should follow any regulations that apply to their work.\n\nresearch objects\n: Research objects are living resources aggregating inputs, materials, methods and/or software used in research.\n\nreview\n: Suggesting changes or asking for committing something to an already created pull request.\n\nrisk\n: A term that refers to the likelihood and impact of something happening. It's often used in decision-making contexts to evaluate the potential consequences of actions\n\nrisk assessment\n: This is used to help choose the appropriate sustainable software concepts for your project.\n\nrisk matrix\n: A risk matrix is a way of quantifying what’s going on with the thing you’re interested in. One axis measures exposure in some way, and the other the impact of a mishap. The further from the origin, the more safeguards are needed to make the risk acceptable.\n\nroadmapping\n: This is the creation of a roadmap for your project. It is an outline for the work you need to do. It covers your goals, vision and a timeline for tasks.\n\nrobust\n: A result is robust when the same dataset is subjected to different analysis workflows to answer the same research question (for example one pipeline written in R and another written in Python) and a qualitatively similar or identical answer is produced. Robust results show that the work is not dependent on the specificities of the programming language chosen to perform the analysis.\n\nrule\n: An element of the Makefile that defines something that must be built, usually consists of targets, recipes, and optionally, prerequisites.\n\nruntime test\n: Tests embedded within the program which are run as part of it.\n```\n\n---\n\n## S\n\n```{glossary}\nself archiving\n: Placing a publication or other research outputs in a suitable repository, institutional or subject-based, following the possible restrictions posed by the publisher, for example an embargo period, or limits on the allowed version to be deposited in such archives.\n\nself reflection\n: Activity of thinking about our thoughts, feelings, emotions, behaviour action, and the reasons that may lie behind them. Taking the time for reflection we can grow our understanding of who we are, what our values are, and why we think, feel, and act the way we do. When we self-reflect and become more conscious of what drives us, we can more easily make changes that help us more easily develop our self or improve our life including the way we conduct research (source: [Berkeley Wellbeing](https://www.berkeleywellbeing.com/what-is-self-reflection.html)).\n\nSHA\n: Unique string of numbers of letters used to identify every commit or node in the repository.\n\nshared authorship\n: Some journals permit the use of group names but many require contributors to be listed and/or the writing group to be named. This is the same as group authorship.\n\nsmoke testing\n: Very brief initial checks that ensure the basic requirements required to run the project hold. If these fail there is no point proceeding to additional levels of testing until they are fixed.\n\nsource available\n: Where the source code of a piece of software is made available but not under the terms of an {term}`open license<Open License>`, you may have to pay to access the source code and agree to terms which prohibit its redistribution, or the code may be generally available and only prohibit commercial redistribution.\n  Source available code is proprietary but not closed source.\n  Whilst generally used in the context of software it can apply in other contexts such as {term}`open hardware<Open Source Hardware>`.\n\nstaged\n: Staging the changes that will be included in the next git commit.\n\nstale\n: {term}`Issues <issues>` and {term}`pull requests <pull request>` become stale when they have been open for an extended period of time with no progress or engagement.\n  This becomes a problem as the chance of these issues being completed reduces, as knowledge and enthusiasm are lost.\n  It is also possible that bug reports become so out of date they are no longer relevant, or {term}`pull requests <pull request>` are so far out of sync that merging is difficult.\n  There is no canonical definition of stale, however, some progress may use automation to close items after a set period of inactivity.\n\nstochastic code\n: Code which, while correct, does not always output the same result. For example a program that outputs ten random numbers will generate a different result each time, despite being correct.\n\nsyntax\n: The structure of statements in a computer language.\n\nsystem testing\n: A level of the software testing process where a complete, integrated system is tested. The purpose of this test is to evaluate whether the system as a whole gives the correct outputs for given inputs. Also see end to end test.\n```\n\n---\n\n## T\n\n```{glossary}\ntarget\n: The outcome of a rule in a Makefile. It is usually a file. If it is not a file, it’s a phony target.\n\ntest driven development\n: A process of code development where unit tests are written before the units themselves.\n\ntest stub\n: Fake implementations of parts of code which are used in testing to remove dependencies.\n\ntest suite\n: The tests that have been written for a project.\n\ntesting framework\n: Tools that make writing and running tests less labour intensive.\n\nTravis\n: A commonly used continuous integration platform.\n```\n\n---\n\n## U\n\n```{glossary}\nunit\n: A small piece of code that does one simple thing. It usually has one or a few inputs and usually a single output.\n\nunit testing\n: A level of the software testing process where individual units of a software are tested. The purpose is to validate that each unit of the software performs as designed.\n```\n\n---\n\n## V\n\n```{glossary}\nvirtual machine\n: A simulated computer that can encapsulate and entire computational environment including its operating system, customised settings, software and files.\n```\n\n---\n\n## W\n\n---\n\n## X\n\n---\n\n## Y\n\n```{glossary}\nYAML\n: A human readable/writable data serialisation language which used by many projects for configuration files.\n```\n\n---\n\n## Z\n"
  },
  {
    "path": "book/website/afterword/legal-disclaimer.md",
    "content": "(legal-disclaimer)=\n# Legal disclaimer: The Turing Way is not legal advice!\n\n_The Turing Way_ is a lightly opinionated guide to reproducible research. \nIt is *not* a source of legal advice and should never be treated as such. \n\n## Good legal advice is timely, specific, and given by a legal expert \n\n_The Turing Way_ is not these things. \n\n_The Turing Way_ is not written to be a source of legal expertise. \nWhen laws and regulations are referenced, the information provided is heavily simplified. \nThe intent is to give you an overview of the basics so that you will know when to check whether something you want to do has potential legal ramifications. \nDon’t make any important decisions based solely on information about laws and regulations in this book.\n\n### Finding legal expertise\n\nIf you are part of an organisation such as a university, a non-profit or a company, you can likely access legal advice either in-house or from a specialist firm that already works with your institution or organisation. \nYou should check with them first if you have any concerns.\n\nIf you are not part of an institution or organisation: \n- There are law firms that specialise in data and technology that can provide advice in many jurisdictions (see below).\n- Many governments make their laws and regulations available online: be aware, however, that these can often be difficult to understand without specialist training.\n- In some jurisdictions, some charities and non-profits produce guidance for complying with laws. They should be clear about the limits of the advice they can provide. \n\n### Jurisdictions\n\nLaws are different in different places. \nYou should make sure that you are aware of which jurisdictions you are operating in and that you are complying with all the laws that cover all the relevant jurisdictions. \nIf you are not sure, start by contacting a legal advisor in the place that you are currently working: they will also be able to advise on what other jurisdictions you should be thinking about.\n\n## What's next?\n\n- Identify who you should reach out to should you need legal advice or expertise\n- Learn about your rights, limitations and what legal advice you should seek\n- Learn more about it in the {ref}`Guide for Ethical Research<er>`\n"
  },
  {
    "path": "book/website/afterword/subprojects.md",
    "content": "(subprojects)=\n# Working Groups, Funded Projects and Informal Initiatives\n\nThis page provides access to various group-based initiatives or subprojects, listed under three themes: working groups that guide the different areas of work as a formal part of Turing's governance, funded projects that are led by members in a paid capacity and informal initiatives that are led by members through collaboration around shared interests.\nThese subprojects are often time-bound and are supported by community members who take open leadership roles in response to the emergent and timely opportunities in the research and open science ecosystem.\n\n(subprojects-working-groups)=\n## Working Groups Led by Community Members\n\n### Translation and Localisation Working Group\n\n#### Project Information\n\n- [Chapter in the Community Handbook](https://book.the-turing-way.org/community-handbook/translation)\n\n#### People\n\n- [Andrea Sanchez Tapia](https://book.the-turing-way.org/afterword/contributors-record#andrea-sanchez-tapia)\n- [Batool Almarzouq](https://book.the-turing-way.org/afterword/contributors-record#batool-almarzouq)\n- [Melissa Black](https://book.the-turing-way.org/afterword/contributors-record#melissa-black)\n\n(subprojects-infra-wg)=\n### Infrastructure Working Group\n\n#### Project Information\n\n- [Project board](https://github.com/orgs/the-turing-way/projects/9)\n- [Working group repository](https://github.com/the-turing-way/infrastructure-working-group)\n\n#### People\n\n- Chair: [Jim Madge](https://book.the-turing-way.org/afterword/contributors-record#jim-madge)\n- Secretary: [Sarah Gibson](https://book.the-turing-way.org/afterword/contributors-record#sarah-gibson)\n- Member: [Danny Garside](https://book.the-turing-way.org/afterword/contributors-record#danny-garside)\n- Member: [Brigitta Sipőcz](https://book.the-turing-way.org/afterword/contributors-record#brigitta-sipocz)\n- Member: [Johana Bayer](https://book.the-turing-way.org/afterword/contributors-record#likeajumprope)\n\n### Accessibility Working Group\n\n#### Project Information\n\n- [GitHub issues](https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue+is%3Aopen+accessibility+label%3Aaccessibility)\n\n#### People\n\n- [Liz Hare](https://book.the-turing-way.org/afterword/contributors-record#liz-hare)\n- [Anne Lee Steele](https://book.the-turing-way.org/afterword/contributors-record#anne-lee-steele)\n\n### Book Dash Planning Committee and Working Group\n\n#### Project Information\n[Chapter in the Community Handbook](https://book.the-turing-way.org/community-handbook/bookdash)\n\n#### People\n\n- Chair: [Esther Plomp](https://book.the-turing-way.org/afterword/contributors-record#esther-plomp)\n- Secretary: [Arielle Bennett](https://book.the-turing-way.org/afterword/contributors-record#arielle-bennett)\n- Secretary: [Emma Karoune](https://book.the-turing-way.org/afterword/contributors-record#emma-karoune)\n- Member: [Carlos Martinez](https://book.the-turing-way.org/afterword/contributors-record#c-martinez)\n- Member: [Susana Roman Garcia](https://book.the-turing-way.org/afterword/contributors-record#susana465)\n\n## Funded Projects\n\n### Professionalising Data Science Roles - Turing's Skills Policy Award\n\n#### Project Information\n\n[GitHub repo](https://github.com/alan-turing-institute/professionalising-data-science-roles)\n\n#### People\n\n- [Emma Karoune](https://book.the-turing-way.org/afterword/contributors-record#emma-karoune)\n- [Malvika Sharan](https://book.the-turing-way.org/afterword/contributors-record#malvika-sharan)\n- [Alexandra Araujo Alvarez](https://book.the-turing-way.org/afterword/contributors-record#alexandra-araujo-alvarez)\n\n### *The Turing Way* Practitioners Hub - BridgeAI-funded Project\n\n#### Project Information\n\n[Webpage](https://www.turing.ac.uk/turing-way-practitioners-hub)\n\n#### People\n\n- [Malvika Sharan](https://book.the-turing-way.org/afterword/contributors-record#malvika-sharan)\n- [Kirstie Whitaker](https://book.the-turing-way.org/afterword/contributors-record#kirstie-whitaker)\n- [Alexandra Araujo Alvarez](https://book.the-turing-way.org/afterword/contributors-record#alexandra-araujo-alvarez)\n\n### Pathways Python Package for Curated Access to Book Chapters\n\n#### Project Information\n\n- [GitHub repo in The Turing Way](https://github.com/the-turing-way/pathways)\n- [prototype repo in the Turing organisation](https://github.com/alan-turing-institute/bio-Turing-Way/)\n\n#### Developers\n\n- May Yong, Iain Stanson, Lydia France, Malvika Sharan: funded by AI for Science and Government in 2021-2022\n- Arya A., Johanna Bayer, Malvika Sharan: 2023 Google Summer of Code (GSoC)\n\n#### Maintainers\n\n- [Arya A](https://book.the-turing-way.org/afterword/contributors-record#arya-a)\n- [Infrastructure working group](#subprojects-infra-wg)\n\n### Data Science Project Management for Project Leaders\n\n#### Project Information\n\n#### Project Information\n\n- [GitHub repo in the Turing organisation](https://github.com/alan-turing-institute/data-training-for-bioscience)\n- Materials are hosted under The Carpentries incubator\n    - lesson 1: [introduction to AI and Data Science](https://github.com/carpentries-incubator/managing-computational-projects)\n    - lesson 2: [open and reproducible practices](https://github.com/carpentries-incubator/data-science-ai-senior-researchers) featuring *The Turing Way* resources.\n\n#### Developers\n\n- Malvika Sharan, Lydia France, Federico Nanni: : funded by AI for Science and Government in 2021-2022\n- Julien Colomb (in-kind from TU Berlin) and Jo Havemamm from Access to Perspective (funded by the Turing's Health Research Programme): 2023\n\n#### Maintainers\n\n- [Julien Colomb](https://book.the-turing-way.org/afterword/contributors-record#julien-colomb)\n- [Malvika Sharan](https://book.the-turing-way.org/afterword/contributors-record#malvika-sharan)\n\n## Informal Initiatives\n\n## Cite.Software: Centalising Recommendation for Research Stakeholders\n\n#### Project Information\n\n[GitHub issues](https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue+is%3Aopen+label%3Asoftware-citation)\n\n#### People\n\n- [Christopher Erdmann](https://book.the-turing-way.org/afterword/contributors-record#christopher-erdmann)\n- [Malvika Sharan](https://book.the-turing-way.org/afterword/contributors-record#malvika-sharan)\n\n## Recognising Research Infrastructure Roles (RIR)\n\n#### Project Information\n\n[Article in Journal of Trial & Error](https://journal.trialanderror.org/pub/manifesto-rewarding-recognizing/release/1)\n\n#### People\n\n- [Arielle Bennett](https://book.the-turing-way.org/afterword/contributors-record#arielle-bennett)\n- [Esther Plomp](https://book.the-turing-way.org/afterword/contributors-record#esther-plomp)\n- [Danny Garside](https://book.the-turing-way.org/afterword/contributors-record#danny-garside)\n- [Hao Ye](https://www.weecology.org/author/hao-ye/)\n"
  },
  {
    "path": "book/website/analytics/web-analytics.js",
    "content": "/**\n * This file contains the tracking code that allows analytics to work on The Turing Way using Matomo\n*/\n\nvar _paq = window._paq = window._paq || [];\n/* tracker methods like \"setCustomDimension\" should be called before \"trackPageView\" */\n_paq.push(['trackPageView']);\n_paq.push(['enableLinkTracking']);\n(function() {\n  var u=\"https://theturingwaynetlifyapp.matomo.cloud/\";\n  _paq.push(['setTrackerUrl', u+'matomo.php']);\n  _paq.push(['setSiteId', '1']);\n  var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];\n  g.type='text/javascript'; g.async=true; g.src='//cdn.matomo.cloud/theturingwaynetlifyapp.matomo.cloud/matomo.js'; s.parentNode.insertBefore(g,s);\n})();\n"
  },
  {
    "path": "book/website/collaboration/academic-industry/academic-industry-community.md",
    "content": "(cl-academic-industry-community)=\n# Community Building in an Academic-Industry Collaboration\n\nBuilding an engaged community around any collaboration can be key for long term success, sustainability and legacy. \nFor academic-industry collaborations, a focus on community can be crucial as often the two organisations have not worked together previously. \n(cl-academic-industry-challenges)=\n## Challenges of Building an Academia-Industry Community\nWhile the benefits of a strong community are numerous, fostering collaboration across academia and industry can present unique challenges. \n\nHere are some to consider:\n* Differing work cultures and communication styles: Academia often prioritises long-term research and fundamental knowledge creation, while industry focuses on short-term deliverables and applied solutions. Communication styles can also vary, with academia valuing detailed reports and industry favoring concise presentations.\n* Intellectual property concerns: Sharing research findings openly can be crucial in academia, but industry might have concerns about protecting proprietary information or patentable inventions. Finding a balance between openness and confidentiality is essential.\n* Time constraints: Academics may juggle teaching, research, and administrative duties, while industry professionals might face tight deadlines and limited time for collaboration. Balancing these commitments can be a hurdle.\n* Varying levels of expertise: Partners may have different levels of expertise in the collaboration's domain. Bridging this knowledge gap requires clear communication and fostering a learning environment for all participants.\n(cl-academic-industry-community-building)=\n## Building an academic-industry collaboration community\nThe Turing-Roche partnership hired a full time Community Manager for this purpose; helping to navigate any differences in ways of working, facilitating initial and longer term connections and creating a sense of ownership and engagement around the partnership.\n\nApproaches to community building can vary (see [Guide to Planning a Community Chapter](#cl-new-community-guide) but initial steps that might be useful in an academic-industry collaboration are:\n\n(cl-academic-industry-community-event)=\n## Initial 'Kick Off' Event\nAn initial event allows you to share plans and aims of your collaboration, meet with colleagues at both organisations and the wider community and signal where people can start to engage and get involved.\n\nFor the Turing-Roche Partnership this [awareness event](https://www.youtube.com/watch?v=eq7f-YnVKtg) was ran online.\n\nLater, after the first research theme was selected, the partnership ran a [series of workshops](https://www.turing.ac.uk/sites/default/files/2021-12/structured_missingness_report.pdf) which allowed an initial group to coalesce on a topic and for the partnership team to seed and facilitate interactions.\n\n(cl-academic-industry-community-engagement)=\n## Identifying 'Quick Win' Engagement Opportunities\nA useful activity before jumping in to create new engagement opportunities is to explore what already exists at each organisation. \nFor example there may be a seminar series, journal club or working group at one of the organisations that colleagues from the other are welcome to join.\n\nFor the Turing-Roche Partnership, Roche colleagues were encouraged to get involved with the [Turing Institute Interest Groups](https://www.turing.ac.uk/research/interest-groups) which are open for anyone to join and a good way to get a sense of what research is being explored at the Turing. \nOn the Roche side, the team explored areas of the business and prepared case studies of where potential partnership research could be applied- gaining buy-in from colleagues.\n\n(cl-academic-industry-community-champions)=\n\n## Identifying Champions/Cheerleaders on Both Sides \nWhilst there will likely be a core team in a collaboration, it's also useful to identify people outside of this team at both organisations who can champion your collaboration and help raise awareness. \nThis may be communications and marketing teams who can help with promotion or 'influential' leaders in relevant departments who can advocate for people getting involved. \nThere may also be existing networks that you can leverage. \n\nIt may also be fruitful to consider an external advisory board. \nYou can bring on board individuals who can help advise on scientific strategy and also can connect the collaboration with colleagues and opportunities within their own networks.\n\n(cl-academic-industry-community-space)=\n## Creating Shared Spaces to Connect\nTo start facilitating interactions and connections between your organisations and allow your community to come together, it is worthwhile to set up a shared space where people can interact. \nThis could be something like a Slack Workspace or GitHub Repository which are both fairly low barrier to engage with. \nMore info on GitHub can be found in [the Getting Started with GitHub chapter](#cl-github-novice). \nYou might need to check any tool you're considering with your IT department and take into consideration any restrictions/access issues each organisation might have.\n\nAs your collaboration grows and progresses you may also consider joint events, such as a seminar series, journal club or joint conference/symposium. \nCollaboration Cafes and/or co-working sessions can also help bring a sense of community to your collaboration. \nThey can be spaces where you onboard new members, brainstorm or work on research together.\nThere is more discussion in [](#cl-mec)\n\nEstablishing communication tools, such as a newsletter, is a useful way of sharing collaboration news, advertising your events and opportunities and spreading awareness. \nThere is more info on how to create a newsletter in [this Turing Way chapter](#ch-newsletters) and you can also find previous Turing-Roche newsletters [here](https://github.com/alan-turing-institute/turing-roche-partnership/tree/main/communications/newsletters).\n\n(cl-academic-industry-community-strategy)=\n## Considering Community Strategy \nDeveloping a strategy for community building in an academic-industry collaboration, alongside or as part of a research strategy can be extremely beneficial. \nThings you might want to consider as part of this are:\n* Mapping out key stakeholders at each organisation and organisations in the broader ecosystem and how to engage/influence them. Turing-Roche Stakeholder Map example can be found [here](https://github.com/alan-turing-institute/turing-roche-partnership/blob/main/communications/Turing-Roche%20Stakeholder%20Mapping.pdf).\n* Considering where and how you want people to connect\n* Decide on how you want to monitor community engagement- it can be challenging to find metrics that capture things like organic interactions on Slack\n(cl-academic-industry-community-performance)=\n## Measuring Community Performance\nBuilding a thriving community is an ongoing process and requires measurement and feedback to be successful.\n\nHere are some suggestions on how to assess the effectiveness of your strategies and adapt them for continued success:\n* Track participation metrics: Monitor engagement on your chosen communication platforms (for example, number of active users, messages sent). Consider metrics specific to your events (for example: attendance, post-event surveys).\n* Gather qualitative feedback: Conduct surveys or hold focus groups to understand participants' experiences. Ask about their satisfaction with communication, the value of events, and suggestions for improvement.\n* Analyse long-term outcomes: Track the impact of your community on collaboration. Has it led to joint research projects, publications, or successful technology transfer?\n\nBy actively evaluating your efforts and adapting them based on the results, you can ensure your community thrives and fosters a successful academia-industry collaboration.\n\n## Conclusion\nFostering a strong community is essential for the long-term success of an academia-industry collaboration.  While challenges like differing work cultures and intellectual property concerns exist, proactive strategies can bridge these gaps. By implementing initial steps like kick-off events and identifying champions, you can create a foundation for connection. Additionally, measuring and evaluating progress is key for amplifying what's working and course correcting what's not working. \n"
  },
  {
    "path": "book/website/collaboration/academic-industry/academic-industry-establish.md",
    "content": "(cl-academic-industry-establish)=\n# Establishing an Academic-Industry Collaboration\n\n(cl-academic-industry-establish-initial)=\n\n## Initial Interactions\n\nThere is no standard route to setting up an academic-industry collaboration. \nThese collaborations may spring from small organic interactions such as researchers connecting at a conference, or may be driven more 'formally' by a partnerships team at either organisation. \n\nBefore jumping into a formal partnership, we recommend to first collaborate on a smaller project or task of shared interest. \nThis allows both organisations to see how the other works in practice (rather than any pre-conceived ideas), how you collaborate together and overall 'test the waters'. \n\nIn the case of the Turing-Roche partnership, the two organisations initially collaborated through a weeklong Turing Data Study Group {cite}`DSG2020Roche`.\n\nAt these collaborative hackathons, a challenger owner, in this case Roche, provides a dataset and a real-world problem to be solved by a team of researchers from the Turing network. \nFor Roche, the Data Study Group highlighted the research capabilities of the Turing Institute while developing the initial relationship between Turing and Roche. \nThis allowed both parties to see that they could productively work together, and spurred on scoping out what became a five-year formal partnership, launched in June 2021. \n\n(cl-academic-industry-establish-setup)=\n\n## Collaboration Set-up\n\nA new academic-industry collaboration will require developing and scoping a scientific/research strategy. \nAlongside this, negotiating formal documents will require much discussion, such as legal contracts that consider intellectual property and data sharing. \nIts important to note here that although academics may have completed similar agreements for their research in the past, there will likely be additional barriers when brokering this with industry. \nFor more detail on developing a contract, governance and more, we recommend this comprehensive Academia-Industry Collaboration Best Practices Guide {cite}`academiaindustryguide` from the Coordinated Research Infrastructures Building Enduring Life-science Services [(CORBEL) Project](https://www.corbel-project.eu/home.html). \n\nIn the case of the Turing-Roche partnership, both the Turing Institute and Roche had a mutual commitment to open science principles which helped shape negotiations and set relatively flexible and collaborative terms around intellectual property. \nThe basis of the partnership was also to develop methodologies, rather than developing products or a collaboration on drug discovery, which would likely complicate contracting and therefore may be something you want to consider.\n\nPlanning a scientific strategy is also a necessity, allowing both sides to identify what is in scope, generating a research agenda and therefore also who should be involved.\nThis also allows you to identify any background intellectual property on either side. \nIt is important to review this scientific strategy on a regular basis and adapt as necessary in response to ongoing research.\n\nFor the Turing-Roche scientific strategy, the partnership approach was to brainstorm potential research topics from both parties to identify areas of common interest. \nFrom this a shared goal was developed to guide the direction of future research as well as a set of principles such as collaboration and open science which the partnership would operate under. \nBased upon these the partnership settled on research areas that fitted the priorities of both organisations. \n\n(cl-academic-industry-establish-governance)=\n\n## Governance\n\n### Team Charter \n\nWith any collaboration, its important to plan how you're going to work together. \nA worthwhile initial exercise can be collaboratively drafting a team charter. \nThis document allows you to map out team structure, who is involved from each organisation and their roles and responsibilities within the collaboration. \nThe activity of creating the charter can also allow you to align expectations and reflect on any cultural differences and ways of working. \n\nIn the Turing-Roche partnership, the [team charter](https://github.com/alan-turing-institute/turing-roche-partnership/blob/main/partnership-team-charter.md) also formed the basis of their governance model. \nThey developed an initial set of meetings which structured decision making processes for the partnership and running day to day activities:\n\n* **Joint Steering Committee**: Occurs twice a year and brings together all senior partnership members to review partnership strategic direction and to make any high level decisions\n* **Core Meetings**: Occur monthly and brings together senior partnership members to discuss strategic activities and get high level updates\n* **Operational Meetings**: Occur fortnightly and bring together deputy scientific leads and operational team to ensure delivery of partnership activities\n\nThey have since developed other meetings as needed, such as ad hoc strategy meetings to brainstorm new activities, ensuring they are on track for the partnership aims and to consider future opportunities and the legacy of the partnership; lab meetings to bring together the team and all researchers working on the scientific aims of the partnership and facilitate connections; and catch-ups between postdoctoral researchers for sharing preliminary work.\n\n### Core Team Membership\n\nThere are a number of considerations for establishing your core team for the collaboration:\n* How many people do you want from each organisation? Do you want equal numbers from each side?\n* Do you want to specify the specific amount of time each person will be contracted to work on the collaboration? It may be useful to consider a secondment model. \n* How will you split different responsibilities, such as operational versus scientific decisions? Who has overall decision making power? \n* Will core team members be doing the research or only responsible for strategy? \n* If you hire researchers to work on the collaboration will they need to form part of the core team? \n\nOf course there is no correct answer to any of these considerations and various factors will play a role into this, such as your funding model. It is really key to ensure anyone on your core team does have sufficient time to engage with the collaboration as they will be a key driver for your work and also a champion for the collaboration on their side, particularly in the beginning.  \n\nFor the Turing-Roche partnership they wanted to ensure parity in their partnership activities, for example ensuring equal representation of Turing and Roche colleagues on interview and funding call panels. \nAny new substantial project as part of the partnership is also drawn up as a project agreement document for signing on both sides, ensuring expectations are set out clearly and there is alignment.  \n\nFor the partnership (and indeed most collaborations) project management is essential and the partnership hired a full time project manager for the partnership based at the Turing Institute.\nTheir wide ranging role (from contracting, creating meeting agendas, budgeting, scoping new partnership activities and more) ultimately ensures smooth running of the partnership and that governance is implemented. \nThere is also a project manager colleague engaged on the Roche side which works very well for ensuring consistency.\n\nAdditional resources that may also be of use in these planning stages are the {ref}`Turing Way Project Design Guide <pd-overview>` and the {ref}`Ethical Consideratons when Choosing an Open Source Governance Model chapter <er-ethics-open-source-governance>`. \n(cl-academic-industry-establish-conflict)=\n### How to Manage Conflict\nDisagreements are inevitable in any collaboration. The team charter as part of the governance should outline a framework for addressing conflict constructively. While potentially distracting and unpleasant, planning ahead for disagreements can be a prudent way of managing limited resources for the project.\n\nHere are some options to consider:\n* Designated mediator: Identify a neutral individual within the collaboration or from a third-party organisation who can facilitate discussions and mediate any conflicts.\n* Escalation process: Establish a clear escalation process for addressing disagreements. This could involve initial discussions between directly involved parties, then escalating to team leads or a steering committee if necessary.\n* Conflict resolution principles: Outline principles for resolving conflicts, such as focusing on the issue at hand, respecting diverse viewpoints, and prioritising the success of the collaboration.\n\nBy incorporating these elements into your governance structure, you can create a more open and productive environment for your academic-industry collaboration.\n\n## Conclusion\nBuilding a successful academic-industry collaboration requires careful planning and clear communication from the outset. The key ingredients are: fostering open communication, establishing clear expectations, and having mechanisms in place to manage conflict. By following these steps and learning from the experiences of the Turing-Roche Partnership, you can increase your chances of establishing a long-lasting and productive collaboration that benefits both academic and industry partners. \n"
  },
  {
    "path": "book/website/collaboration/academic-industry/case-studies/BridgeAI_IndependentScientificAdvice.md",
    "content": "(cl-bridgeai-isa-case-study)=\n# BridgeAI - Independent Scientific Advice\n\n## Overview\nIn 2023, [Innovate UK BridgeAI](https://iuk.ktn-uk.org/programme/bridgeai/) was launched with a mission to drive the adoption of Artificial Intelligence (AI) and machine learning (ML) in sectors of the UK economy with high potential for AI growth. The programme promotes AI-driven productivity and efficiency gains, supporting the UK’s transition to an AI-enabled economy. The priority industries for the programme are transport, construction, agriculture and food processing, and the creative industries.\n\nThe programme aims to build meaningful relationships and bridge the gap between developers and end-users, fostering user-driven AI technologies. These relationships will enable knowledge sharing, support the development of new AI solutions to address sector-specific challenges, and address the technical and business skills gaps currently limiting the adoption of AI solutions.\n\n## Elements of Academy-Industry Collaboration\n\nAs a key partner in BridgeAI, The Alan Turing Institute provides independent scientific advice to companies encountering challenges associated with AI adoption and data science to the priority sectors.\n\nIndependent Scientific Advisors (ISAs) are academics or industry experts with a wealth of experience and expertise in different aspects of AI and data science, including but not limited to AI chatbots, causal neuro-symbolic AI, computational biology and linguistics, cybersecurity of cyber-physical systems, data management, machine learning, compliance-driven assurance, and generative AI. ISAs have experience at the crossroads of industry and academia and can drill down into the complex adoption challenges that organisations face.\n\n## How it works\nTo get access to bespoke advisory services, organisations from the priority sectors complete an expression of interest form on the BridgeAI website. They specify, among other details, the business challenges their organisation would most like to solve with data science and/or AI, and to what extent data science and/or AI might improve their business revenue and/or productivity. After a review process, organisations are matched with an Independent Scientific Advisor (ISA) and begin working together. They have regular sessions where they review their challenges, and the ISA can advise on solutions. Some examples of advisory support include assistance with understanding AI technologies, upskilling their teams, and providing guidance on recruitment. If needed, the ISA can also refer them to another ISA expert.\n\nAfter a maximum period of 16 weeks, the organisation will be empowered to progress on their AI adoption journey.   \n\n## Challenges\nSome of the challenges we currently face are associated with a common belief in the industry that AI can solve all problems, a lack of understanding of AI technologies, their uses and implementation, and the limited time and resources SMEs have.\n\nUnderstanding these challenges is helping us develop upskilling opportunities to overcome them and facilitate better advisory that impacts their operations and the sector in general.\n\n## Next steps\nBy June 2024, the ISAs have advised over 100 organisations, learning about the organisations' barriers and the sector's structural needs.\n\nThe team of ISA's, Sr Community Manager and Programme Manager are conducting an analysis to understand the organisations' characteristics, such as size and maturity level and their journey on AI adoption approaches. Additionally, case studies will be launched capturing the impact of the ISA support in the organisation's AI adoption journey. \n"
  },
  {
    "path": "book/website/collaboration/academic-industry/case-studies/practitioners-hub-case-study.md",
    "content": "(cl-practitioners-hub-case-study)=\n# Case Study: _The Turing Way_ Practitioners Hub \n\n```{figure} ../../../../figures/practitioners-hub-experts.*\n---\nheight: 500px\nname: practitioners-hub-experts\nalt: >\n  Cartoon-like sketch with text at the top in an arc reading \"practitioners hub - experts in residence\".\n  The Turing Way logo is featured in the centre.\n  Around the logo is a thick oval with different colour bands, each with an image.\n  These include a heart, a tree, a car, a spanner, a lightning bolt, a paint palette and a graph, representing various fields, such as transport, health, energy supply, sustainability, engineering, and creative industries.\n  Around the edge of the circle are lots of colourful stylised figures interacting with each other in groups.\n  Some appear to be talking, and some shaking hands, conveying inclusivity and community.\n---\nAn overview of the diverse industries and people comprising the cohort of The Turing Way Practitioners Hub Experts in Residence.\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n## Introduction to _The Turing Way_ Practitioner's Hub \n\n_The Turing Way_ Practitioners Hub is an extension of _The Turing Way_ project that engages and involves industry experts, called Experts in Residence (EiRs), from partnering organisations.\nThis initiative aims to advance their efforts in promoting best practices in data science and AI.\nThe Practitioners Hub serves as a platform for cross-sector collaboration, knowledge exchange, and strategic partnerships, spanning various sectors and data science initiatives, including but not limited to the small and medium-sized (SME) enterprises in the BridgeAI network.\nIt is an evolving example of academia-industry collaboration which could be recreated in other contexts. \n\nBy leveraging a cohort-based approach, the programme builds a shared understanding of open source principles, open data practices, cross-sector collaboration, research reproducibility, and ethical considerations in the context of data science and AI.\nEiRs are supported to develop case studies with stakeholders in their networks, sharing insights into the successes and challenges associated with the adoption of AI within their respective sectors.\nThis is combined with customised training, expert consultation and collaborative opportunities, contributing to the improvement and adoption of data science practices that enhance the quality, viability, and real-world impact of data science and AI technologies in their sectors.\nRegular events were held on Zoom/Teams, on a weekly/bi-weekly basis combining short-format training and day-long workshops. \n_The Turing Way_ Collaboration Cafe events were leveraged as opportunities to meet and discuss specific topics between the workshops.\n\n*This work was supported by Innovate UK BridgeAI. The Practitioners Hub has also received funding and support from the Ecosystem Leadership Award under the EPSRC Grant EP/X03870X/1 and The Alan Turing Institute.*\n\n## Case-studies \n\nIn 2023, _The Turing Way_ team partnered with five organisations as part of the inaugural cohort of this programme, running over 6 months. The organisations involved were: \n- British Antarctic Survey\n- Genomics England\n- Office of National Statistics\n- Energy Systems Catapult\n- DigiHaul\n\nDuring the first cohort of the programme in 2023, the Turing Way team co-created impact-based case studies about best practice open source science and AI adoption with each of the EiRs, with the help of scientific writer Stuart Gillespie.\nA meta-case study was also produced to bring together learnings about the organisational adoption of open and responsible AI from each participating organisation. \n\n```{admonition} Excerpt from Meta-Case Study from the Practitioners Hub, 2024\nEach EiR engaged in a range of activities between June 2023 and December 2023 to develop plans and strategies for their product development and/or team collaboration in the context of data science and AI projects.\nSpecialised workshops and training sessions included stakeholder mapping for community engagement, user journey mapping for responsible system design, skills mapping and pedagogy for technical skill building, systems mapping for identifying ‘leverage points’, and finally, road mapping for implementing best practices in their work in the long-term.\nIn addition, each EiR was offered personal coaching, consultation and customised support in advancing the impact of their work as open source/science, reproducibility and The Turing Way champions.\n\nDuring their participation in the cohort, the EiRs developed case studies exploring the state of best practices within their respective organisations across selected data science and AI projects and teams.\nFive case studies from the first cohort highlighted: 1) collaboration in open source energy projects; 2) AI for decarbonising road networks; 3) open practices for sensitive data; 4) promoting open working in government; and 5) intersection of data science and open practices.\n\n*Source: Sharan, M., & Gillespie, S. (2024). Organisational Adoption of Open and Responsible AI: Meta Case Study from The Turing Way Practitioners Hub Cohort 1. Zenodo. DOI [10.5281/zenodo.10777729.](https://doi.org/10.5281/zenodo.10777730)*\n```\n\nExplore all case studies and other materials from the first cohort on Zenodo: [zenodo.org/communities/the-turing-way-practitioners](https://zenodo.org/communities/the-turing-way-practitioners).\n\n## What went well \n\n1. The programme of activities was diverse, stimulating collaboration in different ways. It included but was not limited to training around open-source concepts and frameworks, co-hosting a fireside chat, and building impact-based case studies.  \n2. Different organisations had different levels of familiarity with open-source and best practices going into the programme. A kick-off workshop helped to 'level the playing field'. This was attended not only by the EiRs but other stakeholders and members of the BridgeAI network.\nDuring the workshop, there were breakout discussions, talks from speakers and a panel discussion. \n\n## Challenges and lessons learned \n\n1. 'Downtime' such as through open-agenda meetings or social events is useful. Some of the most productive conversations amongst the EiRs happened in the spaces between structured activities. As the programme went on, the curriculum incorporated allocated sessions for unstructured discussion.\n2. A challenge during the programme was for EiRs and trainers to be mindful of different levels of resource availability within the different organisations. \n\nFor more information about the Practitioners Hub including the case studies and more information about the cohort-based curriculum and activities, please visit the [programme website](https://www.turing.ac.uk/turing-way-practitioners-hub).\n"
  },
  {
    "path": "book/website/collaboration/academic-industry/case-studies/turing-roche-case-study.md",
    "content": "(cl-turing-roche-case-study)=  \n# Case Study: Turing-Roche Community Activities\n\n```{figure} ../../../../figures/turing-roche-partnership.*\n---\nheight: 500px\nname: turing-roche-partnership\nalt: Scriberia illustration showing the journey of the Turing-Roche partnership over 5 years. The image has two people shaking hands showing the collaboration between academia and industry and a road type image showing markers and research themes along the way. The missing data research theme is shown by binary numbers and a missing jigsaw piece and the predictive modelling research theme is illustrated by a crystal ball. At the end of the road are two patients with the text 'improved clinical care'. At the bottom of the image is the text 'better understanding patient and disease heterogeneity' which is the partnership's ultimate aim\n---\nThe Turing-Roche Strategic Partnership\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. Original version on Zenodo. [http://doi.org/10.5281/zenodo.8169292](http://doi.org/10.5281/zenodo.8169292) \n```\n\n## Introduction\nMy name is [Vicky Hellon](https://www.turing.ac.uk/people/vicky-hellon) and I am the Community Manager for the Turing-Roche Strategic Partnership. \nThis 5-year partnership is developing new data science methods to investigate large, complex, clinical and healthcare datasets to better understand how and why patients respond differently to treatment, and how treatment can be improved.\n\nI started as Community Manager for the partnership in October 2021, with my previous background in scientific publishing and health data science. \nThis personal story covers some of the communuity activities and spaces I and the team have set up for the partnership which we hope will be helpful to others working in similar collaborations.\n\n### Slack Workspace \nOur Turing-Roche Slack Workspace is one of the first spaces we set up for our community to connect.\nAfter we ran an initial workshop we wanted somewhere for participants to continue connecting that was easy to use, allowed asynchronous communication and a low barrier to join.\nSlack suited this purpose and we have since grown its use as somewhere to share partnership news, ask for advice and share interesting papers, jobs and opportunities, as well as its original purpose of allowing people to connect after events we have run. \nWe also have experimented with coffee chats.\n\nA learning that I think is useful to pass on is considering a strategy for growth of your Slack Workspace or other messaging/social media space. \nThe Turing-Roche Slack grew larger than we had expected, which meant that we had to implement things like an onboarding message and new channels retrospectively rather than considering these needs at the start.\n\nYou will also need to consider whether your Slack is open for anyone to join and whether its cost effective to sign up to a paid plan which has benefits such as keeping your message history. \n\n### Turing-Roche Knowledge Share Event\nFairly early on in the partnership we decided to set up a joint event as we felt this would be a great way of showcasing research and different perspectives from both organisations and creating a sense of joint ownership. \n\nWe scoped the format of a virtual Turing-Roche [Knowledge Share Series](https://www.turing.ac.uk/events/turing-roche-knowledge-share-series) which occurs monthly and each time tackles a different data science topic relevant to the partnership's aims. \nThe event has a Turing speaker and a Roche speaker giving a presentation for 15 minutes each on the selected topic before a 20 minute Q&A session which generates good audience engagement.\nWhilst we experimented with the format in the beginning we found this really worked ,and its been really great to see the similarities and differences between Turing and Roche perspectives on a number of topics such as synthetic data, AI in clinical trials, missing data, health equity and more.\nWe also have managed to achieve an audience of around 50% colleagues from Roche and 50% colleagues from Turing and wider academia.\n\nWe have also run workshops for our research themes (you can read our reports on these [here](https://www.turing.ac.uk/research/research-projects/alan-turing-institute-roche-strategic-partnership#downloads)) and are considering joint journal clubs and symposiums/conferences.\n\n### Monthly Newsletter \nAnother initial activity was setting up a joint monthly newsletter for the partnership. \nI pull this together and we feature partnership news and events, jobs and opportunities from across Turing and Roche and beyond that would be of interest to the partnership community. \nWith increasing activity from our partnership team members and funded projects, we've been featuring more of them which has been nice to have a bit more of a sense of team identity to the newsletter.\n\n### YouTube Channel \nWe initially started a [YouTube channel](https://www.youtube.com/channel/UCtDFLOFg1QBVfPUl5Ei9-Mg) as a place to host our recordings of our Knowledge Share Events. More recently we've added some other video content such as a 'demystfying' video series- 5 minute videos demystifying a concept relevant to the partnership's research and a 'versus' video series where someone from Turing and someone from Roche debate data science topics from their perspective. \nIts been a great way to get researchers involved in creating interactive content, though we would flag that if you are considering doing something similar it will be useful to consider branding requirements of each organisation and whether you'll need any specialist equipment and/or editing for a more 'professional' look.\n\n### Ambassador Scheme\nMany organisations, such as the [Software Sustainability Institute](https://www.software.ac.uk/programmes-and-events/fellowship-programme), [ELIXIR](https://fairplus-project.eu/) and the [Turing Institute ](https://www.turing.ac.uk/work-turing/studentships/enrichment) have developed programmes that allow external researchers to develop skills or projects and become part of that organisation's community. \nOften these type of schemes focus on early career researchers, allowing them to develop skills that can benefit their future careers. \n\nWe decided this scheme would be good to develop for the Turing-Roche Partnership as it would give participants experience of two organisations and further bolster our community.\nIt has been a lot of work to set up around financial, legal and contractual frameworks, as well as considering how the programme will work in practice- such as balancing the time of PhD students with tangible benefits for them such as travelling to a conference and building up career skills by working on a community based project.\n\nWe launched the scheme in September 2023 and you can find out more about it here- {ref}`Turing-Roche Community Scholar Scheme Personal Story <cl-ambassador-schemes-personal-story>`\n"
  },
  {
    "path": "book/website/collaboration/academic-industry/case-study-library.md",
    "content": "(cl-academic-industry-case-studies)=\n# Case Studies in Academic-industry Collaboration\nThis is a library of case studies in academic-industry collaboration projects. Each case study consists of a description of the academic-industry collaboration, and discussions about best practices followed, challenges, and lessons learnt in navigating the collaboration. Tags will be added to each case study for easy referencing and navigation.\nYou are encouraged to contribute to this library if you currently are or have been involved in academic-industry collaborative projects. We will soon release a template for reporting case studies in academic-industry collaboration, but in the meantime, please include a description of the collaboration, best practices followed, challenges, and lessons learnt in a {term}`Markdown` file and add a new entry to the table with your case study.\n|Title|Link|Description|Tags|Author|\n|----|----|----|---|---|\n|Turing-Roche Partnership|{ref}`Link <cl-turing-roche-case-study>`|This 5-year partnership is developing new data science methods to investigate large, complex, clinical and healthcare datasets to better understand how and why patients respond differently to treatment, and how treatment can be improved.|to be added|Vicky Hellon|\n|Turing Way Practitioner's Hub|{ref}`Link <cl-practitioners-hub-case-study>`|A project that engages and involves industry experts, called Experts in Residence (EiRs), from partnering organisations. This initiative aims to advance their efforts in promoting best practices in data science and AI. The Practitioners Hub serves as a platform for cross-sector collaboration, knowledge exchange, and strategic partnerships, spanning various sectors and data science initiatives, including but not limited to the small and medium-sized (SMEs) enterprises in BridgeAI network.|to be added|Lucy Stephenson|\n|Bridge AI Independent Scientific Advice|{ref}`Link <cl-bridgeai-isa-case-study>`|As part of the InnovateUK BridgeAI programme, The Alan Turing Institute provides expert advisors to help organisations overcome AI adoption challenges, fostering productivity and efficiency. These sessions bring an opportunity to better understand the organisations and sectors needs. |to be added|Alexandra Araujo Alvarez|\n"
  },
  {
    "path": "book/website/collaboration/academic-industry/intro-case-studies-and-best-practices-in-academic-industry-collaboration.md",
    "content": "(cl-academic-industry-best-practices)=\n# Case studies and best practices in industry-academia collaboration\nThe creation of this subchapter was motivated by a need to address the realities of navigating the complex relationship between Open Science and Industry, particularly in cases where research is partly or fully funded by industry. A balance must be struck between producing research that meets the priorities of the sponsoring organisation and producing research that is open, shareable, and beneficial to the community. \n\nResearchers and practitioners championing Open Science could benefit from case studies and lessons learnt from others who have successfully and/or unsuccessfully navigated this aspect of Academic-Industry collaborations.\n\nThis subchapter is a continuously growing resource library of case studies in academic-industry collaboration, as well as a collection of existing resources on academic-industry best practices.\n\n(cl-academic-industry-best-practices-who)=\n## Who this subchapter is for\n\nThis subchapter could be especially useful for anyone who is conducting or has conducted research in the context of academic-industry collaboration. This could include:\n- Academics who have an opportunity to work with an industrial partner and are looking for guidance on how to best navigate the relationship to ensure a productive and open collaboration.\n- Industrial practitioners who have an opportunity to work with an academic partner and are looking for guidance on how to best navigate the relationship to ensure a productive and open collaboration.\n- You have experience in academic-industry collaboration and wish to share your experiences with the Turing Way community so they can benefit in the future.\n\n(cl-academic-industry-best-practices-structure)=\n## Subchapter structure\nThis subchapter is divided in two sections:\n- A {ref}`library of case studies on academic-industry collaboration <cl-academic-industry-case-studies>`, showcasing best practices and lessons learnt for each particular case study.\n- A {ref}`library of existing resources on the web <cl-academic-industry-online-resources>` that address best practices in academic-industry collaboration\n\n(cl-academic-industry-best-practices-engaging)=\n## Engaging with this subchapter\nYou are encouraged to read through the resources in this subchapter and use them as you need for your personal purposes.\n\nYou can also contribute to the subchapter by submitting a case study (following The Turing Way's contribution guidelines), or by suggesting new resources that could be added to the Resources section.\n"
  },
  {
    "path": "book/website/collaboration/academic-industry/online-resources-best-practices.md",
    "content": "(cl-academic-industry-online-resources)=\n# Online Resources\nThis document provides valuable resources for you to implement in successful academia-industry collaborations. It offers practical guidance through a curated list of \"Turing Way Resources\" and explores relevant academic publications. Additionally, the document includes resources for writing case studies of such collaborations.  \n\n## Academic Resources\nThe continual tension of rigour vs. relevance remains both the opportunity for new knowledge while also serving as one of the many reasons collaborations sometimes struggle to provide meaningful value. The following is a list of academic publication exploring the benefits and challenges of academic-industry collaborations. \n|Title and link| Journal/Parent Resource|Year|\n|--------------|--------|----|\n|[Academic–industry collaborations and knowledge co-production in the social sciences](https://journals.sagepub.com/doi/abs/10.1177/1440783313492237)|Journal of Sociology|2013|<!--- -->\n|[When Collaboration Bridges Institutions: The Impact of University–Industry Collaboration on Academic Productivity](https://pubsonline.informs.org/doi/abs/10.1287/orsc.2018.1235)|Organization Science|2018|<!--- -->\n|[Academic Collaborations with Industry: Lessons for the Future](https://journals.sagepub.com/doi/abs/10.1136/jim-2020-001636)|Journal of Investigative Medicine|2020|<!--- -->\n|[Research Collaborations between Academia and Industry](https://ieeexplore.ieee.org/abstract/document/4221610)|Future of Software Engineering Conference|2007|<!--- -->\n|[The double-edged sword of industry collaboration: Evidence from engineering academics in the UK](https://www.sciencedirect.com/science/article/abs/pii/S0048733315000347)|Research Policy|2015|<!--- -->\n|[Mapping the field: a bibliometric analysis of the literature on university–industry collaborations](https://link.springer.com/article/10.1007/s10961-017-9637-1)|The Journal of Technology Transfer|2017|<!-- -->\n|[A Spatial Temporal Exploration of Factors Motivating Academia-Industry Collaboration](https://link.springer.com/article/10.1007/s13132-021-00729-6)|Journal of the Knowledge Economy|2021|\n|[Challenges and best practices in industry-academia collaborations in software engineering: A systematic literature review](https://www.sciencedirect.com/science/article/abs/pii/S0950584916301203)|Information and Software Technology|2016|\n|[University‐industry collaboration: Grafting the entrepreneurial paradigm onto academic structures](https://www.emerald.com/insight/content/doi/10.1108/14601060710776734/full/html)|European Journal of Innovation Management|2007|\n\n## Industry Resources\n|Title and Link|\n|--------------|\n|[Data Science: From Academia to Industry](https://es.catapult.org.uk/report/data-science-from-academia-to-industry/)|\n|[Academia-Industry Collaboration Best Practices Guide](https://eatris.eu/wp-content/uploads/2019/12/CORBEL_Academia_Industry_Collaboration_Best_Practices_Guide.pdf)|\n\n## Case Study Writing\nCase study templates are crucial for ensuring clear and consistent reporting of academia-industry collaborations. They provide a structured framework to capture key details and effectively communicate the project's goals, methods, and outcomes. Below are some resources from The Turing Way to help you effectively communicate your collaborations.\n\nA case study writing template for industry-academia collaborations is currently being developed and will be shared here as a resource. This would then become the preferred case study reporting template when contributing to the [case study library](https://github.com/f-rower/the-turing-way/blob/Case-Studies-and-Best-Practices-in-Academic-Industry-Collaboration/book/website/collaboration/academic-industry/case-studies-and-best-practices/case-study-library.md)\n"
  },
  {
    "path": "book/website/collaboration/academic-industry.md",
    "content": "(cl-academic-industry)=\n# Academic-Industry Collaborations\n\n(cl-academic-industry-prerequisites)=\n## Prerequisites\n\n\n| Prerequisites | Importance | Skill Level | Notes | \n| -------- | -------- | -------- |-------- |\n| {ref}`Project Design <pd-overview>`  | Helpful    | Beginner     | This guide has lots of useful information that would be helpful to consider when starting a collaboration\n| {ref}`Community Managers: Overview<cl-infrastructure-community-managers>` | Helpful  | Beginner | An overview of the Community Manager Role |\n| {ref}`Guide to Planning a Community<cl-new-community-guide>` | Helpful | Beginner | The Guide to Planning a Community are helpful context for the Community Building Subchapter in this section |\n\n```{figure} ../../figures/academic-industry-partnership.*\n---\nheight: 500px\nname: academic-industry-partnership\nalt: Scriberia illustration showing the collaboration between academia and industry. On the left hand side is an academic middle-aged man in a suit sitting at a desk with certificates on the wall and a 'world's best prof' mug. On the right hand side is a young professional woman, standing up on the phone with a fancy computer in front of her and sleek looking buildings behind her. Beneath those two panels are the academic man and the industry woman having a conversation- behind them are speech bubbles, a globe and the text 'real-world impact'\n---\nAcademic-Industry Partnership\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. Original version on Zenodo. [http://doi.org/10.5281/zenodo.8169292](http://doi.org/10.5281/zenodo.8169292) \n```\n\n\n(cl-academic-industry-summary)=\n## Summary\nAcademic-Industry collaborations can take many forms, but put simply they are when an academic institution or university collaborates with a corporation or business such as a pharmaceutical company, a consulting firm or a technology company. \n\nWhilst academia and industry are often viewed with having differing cultures, research aims and ways of working, there can be many advantages of bridging this perceived gap and working collaboratively. \n\nSome of these advantages include:\n* Access to and leveraging resources on both sides, such as funding, research expertise and skills and real-world data\n* Combining foundational research (often the academic focus) and applied research (often the industry focus)\n* Accelerating innovation and societal impact through working together on a shared research problem\n* Experience and increased career opportunities for students and researchers working as part of the collaboration\n\n(cl-academic-industry-motivation)=\n## Motivation and Background \nAcademic-Industry collaborations are becoming more popular, with the [number of them more than doubling between 2012 and 2016](https://www.nature.com/nature-index/news-blog/the-shifting-corporate-academic-relationship-in-pictures). \n\nWe wanted to create a chapter as a starting point for those looking to set up an academic-industry collaboration, however a lot of the chapter content can be applied to any collaboration. \nSimilarly, a lot of existing content in _The Turing Way_ also applies and we have signposted to this throughout. \nMany academic-industry collaborations are very similar in nature to academic research projects, with some small nuances that we have tried to capture. \nOverall we hope the chapter will give insights into how to set up for success in practice for a partnership between academia and industry, through navigating expectations, ways of working and bringing in elements such as community building. \n\nThe basis of the following subchapters are mainly from the experience of the [Turing-Roche partnership](https://www.turing.ac.uk/research/research-projects/alan-turing-institute-roche-strategic-partnership). \nWe would welcome any further input and content from other academic-industry collaborations.\n\nIn this chapter we are using the terms 'collaboration' and 'partnership' interchangeably but understand these may confer different meanings depending on the context.\n"
  },
  {
    "path": "book/website/collaboration/ambassador-schemes/ambassador-schemes-establish.md",
    "content": "(cl-ambassador-schemes-establish)=\n# Establishing and Running an Ambassador Scheme \n\n(cl-ambassador-schemes-establish-setup)=\n\n## Setting up the Scheme\n\nTo launch an ambassador scheme, you will likely need to work with and get approval and sign-off from different departments in your organisation, such as finance, legal, communications and project management.\n\nThis may require thinking about how the scheme will contribute to organisational priorities such as capacity building, wider engagement of research and/or training so you can secure leadership buy-in. \nIf the scheme will have financial implications then you will need to think about how you will measure and demonstrate its impact. \n\nEnsure you leave plenty of time for these processes and document your plans clearly so others can easily understand the vision.\n\n(cl-ambassador-schemes-establish-planning)=\n\n## Planning the Scheme\n\nWhen it comes to planning an ambassador scheme, a good starting point is to think about what you want to achieve and what you can provide to participants. \nSchemes can vary widely in format, length and facets.\n\n* What will you offer ambassadors and what will they be doing?\n    * You could provide a financial fund for them to travel to a conference or run their own event, you could run a training programme, they could be representing your organisation at their home institution or they could be creating their own resources.\n      You could combine one or multiple of these elements into a scheme.\n* How will ambassadors take part in the scheme? \n    * Consider the advantages and disadvantages of a virtual cohort as opposed to in-person activities or whether you want to incorporate both elements.\n      Think about how you will create a sense of community with your cohort, how often and which tools you will use to connect with your ambassadors and them with each other. \n* What size will the scheme be and how long will it continue for? \n    * Consider how much capacity you have to support ambassadors.\n      If the scheme has an ending point, think about how you will offboard people and/or maintain contact through a potential alumni scheme. \n* What will be the benefits of your scheme? \n    * You may have scope to provide financial benefits, although many schemes are volunteer only.\n      Think about what meaningful benefits would entice people to take part.\n\n(cl-ambassador-schemes-establish-application)=\n\n## Application Process\n\nYou will need to set up a website or webpage (for example on your organisation's website) with detailed information about the scheme, how it will work, benefits, timelines and the application process. \nIt may be useful to put this information in a call document for ease, alongside any other documentation such as an FAQs and a copy of the contract participants will need to sign if they are successful.\nYou could also run an information webinar to give more context on the scheme and give an opportunity for questions from people interested in applying. \nYou can make a recording of this available afterwards for increased accessibility. \n\n(cl-ambassador-schemes-establish-running)=\n\n## Running the Scheme\n\nA useful start to the scheme is holding an onboarding meeting where you can bring together your ambassadors as a group to give information on how the scheme will work and let them get to know each other. \nIt may also be sensible to organise individual onboarding calls where you can set up participants on systems as needed and help brainstorm their work/activities for the scheme. \nAdditionally you can provide an onboarding document or website, which participants can refer to throughout the scheme. \n\nAfter this initial onboarding, plan how often your cohort will meet and how you will all communicate during the scheme - asynchronous tools like email or Slack are practical for this. \nThis will also feed into how you create a sense of community within your cohort. \nAt the end of your scheme, it may be nice to run a celebration or graduation type style event to celebrate everyone’s hard work.\n\nOnce you’ve launched the scheme you can plan some communications around it to boost the profile of your ambassadors and to encourage the wider community to engage with them and their activities. \nYou may also want to make things like their project milestones and documentation open for good practice. \n\n(cl-ambassador-schemes-establish-impact)=\n\n## Capturing the Impact of the Scheme\n\nThroughout the running of the scheme it is important to capture the impact. \nThe impact of the scheme may determine whether the scheme can be run again in terms of organisational or financial support. \nThis information is also important to record for reporting purposes for any organisation. \n\nRecording impact could be done by keeping a spreadsheet of metrics such as how many events happened, how many people attended, how many resources were created and so on. \nIt could also involve qualitative metrics such as blog posts on projects and capturing testimonials from the ambassadors themselves or people in the community that have been involved in their activities.\n\n(cl-ambassador-schemes-establish-end-of-cohort)=\n\n## End of Ambassador Cohorts\n\nWhether you are continuing your ambassador scheme or only running one cohort, it is important to think about what needs to be done at the end of each cohort to close it down.\n\nAs mentioned above, capturing metrics and testimonials for impact is important and will be part of this closing down process, but it is also important to get feedback. \nThis can be done verbally or through an electronic form.\n\nIt is also important to archive the materials created for the scheme. \nThis will include the process documentation used to run the scheme and also outputs developed by the ambassadors. \nIt is best practice to make these resources openly available by depositing them in a FAIR manner using an open repository such as Zenodo- {ref}`Steps for Making Research Objects Citable <cm-citable-steps>`.\nThis ensures that others who might want to run similar schemes can access them and also all of the outputs, as well as providing a citable output for you and the ambassadors so that you get credit for the work that you have all done.  \n\n\n\n"
  },
  {
    "path": "book/website/collaboration/ambassador-schemes/ambassador-schemes-personal-story.md",
    "content": "(cl-ambassador-schemes-personal-story)=  \n# Turing-Roche Community Scholar Scheme Personal Story\n\n## Introduction\n\nMy name is Vicky Hellon and I am the Research Community Manager for the [Turing-Roche Strategic Partnership](https://www.turing.ac.uk/research/research-projects/alan-turing-institute-roche-strategic-partnership). \nThis 5-year partnership is developing new data science methods to investigate large, complex, clinical and healthcare datasets to better understand how and why patients respond differently to treatment, and how treatment can be improved.\n\nThis personal story covers my experiences of establishing an Ambassador Scheme, which we named the [Turing-Roche Community Scholar Scheme](https://www.turing.ac.uk/research/research-projects/alan-turing-institute-roche-strategic-partnership/community-scholars). \nI co-led this scheme with my colleague and partnership lead Sarah McGough, Head of Technical Innovation & Shared Platforms, Computational Catalysts, gRED Computational Sciences at Roche, and with assistance from our partnership project manager, Maria Anagnostopoulou. \n\n```{figure} ../../../figures/ambassador-program-roche.*\n---\nheight: 500px\nname: ambassador-program-roche\nalt: Scriberia illustration showing 10 students pictured in a circle who are the Turing-Roche Community Scholars. Around them in bubbles are their 9 projects represented- a book with risk of bias written on it, a book with a jigsaw piece, a data scientist and clinican shaking hands, a seminar series, a buzzer, a youtube logo, a podcast microphone logo, a technical seminar series and an image of a cell. Turing and Roche logo are in a love heart with an arrow through it and scholars are pictured talking to others with the love heart logo. They are also pictured chatting with each other in graduation gowns and caps and travelling round the globe on a plane.\n---\nTuring-Roche Community Scholar Scheme\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. Original version on Zenodo. [https://doi.org/10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807)\n```\n\n## Motivations and Background\n\nOur initial ideas around the scheme were born out of discussions about having more conference representation from the partnership and whether we could run a scheme that funded travel for students to attend conferences.\n\nFrom this discussion, we realised we actually had the capacity to run a scheme where early career researchers could travel to a conference but also engage further with the partnership and run their own community activities.\nIt was also an ideal time to set it up (around two years into the five year partnership), as it meant we had research projects up and running that participants could integrate into their community activities; I think we were not established enough to run the scheme any earlier. \nThe principal benefit of the scheme for us was increasing the reach and engagement of the partnership by working with students in relevant research areas, connecting with their networks and overall bolstering our community. \n\nAt that time, if you wanted to engage with the partnership as an external researcher the main ways you could do this were through our open research funding calls or through existing community activities, such as attending our virtual seminars. \nTherefore, in addition, we also felt this scheme would support me, as the Research Community Manager, to add ways for the growing external community to participate through the new community activities. \n\nLastly, the scheme would be a great opportunity for us as an academic-industry collaboration to play a role in supporting the career development of early career researchers and giving them experience of organisations from two different sectors (academia and industry), which we felt passionate about. \nThis type of cross-sectorial experience is hard to come by for early career researchers and a particular area in need of upskilling, highlighted in various UK government reports, such as the [UK's National Data Strategy](https://www.gov.uk/government/publications/uk-national-data-strategy/national-data-strategy).\nThis also would deliver more tangible impact and legacy for the partnership beyond the research collaboration itself. \n\n\n## Scheme Set-up\n\nThe Turing Institute had a student scheme in place ([the Enrichment Scheme](https://www.turing.ac.uk/work-turing/studentships/enrichment)) but this worked quite differently to what we wanted to do for the scholar scheme, so the set up was as a brand new programme, which with documentation and processes, was a huge undertaking. \nAs with any new project or activity, it was useful to think about what we wanted to achieve with the scheme and work backwards from there to brainstorm how it should work in practice. \n\nWe put together an initial scoping document, ensuring objectives of the scheme were in place and the roles and responsibilities supporting its implementation were well defined. \nWe took this to the partnership leadership team to get some early feedback. \nThe decision was taken to ensure that the activities would be community based, rather than research based due to intellectual property agreements in place between the Turing and Roche.\n\nWe also shared the document with the finance, legal and project management teams at the Turing to understand what details we'd need to provide and finalise for approvals. \nGetting the scheme signed off with each department turned out to be what took the longest in the set-up phase. \n\nWith the finance team, we had initially wanted to open the scheme to PhD students and postdoctoral researchers, however we felt strongly about paying a stipend to the scholars and this proved tricky for people on a non-student contract, so the decision was taken to open to PhD students only. \nWe also settled on only PhD students based in the UK for the same logistical reasons.\n\nWith the legal team, we put in place a framework and discussed issues around data protection, time commitment for students, sign off from their supervisor and using Turing-Roche branding for things that would be made externally available from the community activities.\n\nFor project management, we have a full time project manager working on the partnership, so this was easier to plan with them - we discussed logistics around processing expenses for the scholars and a delivery action plan on how to launch the application process. \n\nOverall approval from all the departments required a lot of documentation on how things would work in practice and how we would navigate any potential issues. \nWhilst this felt like a lot of work up-front, it was actually very helpful down the line to have pre-planned.\n\nThe format we finalised for the scheme was for a year-long programme, welcoming 10 PhD students based at UK institutions. \nThe scholars would embed themselves within the partnership community, attend a relevant conference and undertake a selected, community-based activity, with a £3000 stipend- £2000 paid directly (at the halfway and finish mark) and £1000 to use for conference and project expenses. \nThe scholars would continue their PhD studies whilst being part of the scheme, with the aim of the scheme being a low time commitment of around 3-5 hours a month. \n\nWe felt running the programme on an academic year timeline (September to September) would be helpful for students. \nWe also took the decision not to open up the scheme to students in the first year of their PhD as we felt the time commitment of the scheme may be overwhelming for them. \n\nWe put together various documentation when we opened applications for the scheme, which you can find [here](https://www.turing.ac.uk/work-turing/open-call-turing-roche-community-scholar-scheme-2023-2024). \nThese documents include: a call document, FAQs, letters for the university department and students PhD supervisor to sign; so we could ensure they were on board with the student taking part and a student agreement; which sets out responsibilities.\nWe also ran an information webinar with a Q&A session, which was helpful to see the level of interest from registrants and also gave us insights into what we needed to provide more information on. \nWe put a recording of this event on our YouTube channel for anyone who couldn't attend to make the information more accessible.\n\nWe opened applications for the scheme for 6 weeks over the 2023 June/July period. \nThis was probably the minimum amount of time we would recommend having the applications open. \nFor the application process, we tried to ensure it was fairly light-touch, so as not to overburden the students. \nWe provided some example activities that students could choose in their application, but also gave them the option to apply with one they had designed, with no penalties either way.\n\nWe discussed having an interview process, but in the end decided that we felt the application form would contain sufficient information for us to make a decision. \nThe shortlisting panel was a diverse group from the partnership core team and we used the following criteria to assess the applications:\n\n1. Relevance (in research/interests/education) - applicant has a good understanding of the partnership research and how their own research is relevant to this\n2. Proposal (quality/scope) - applicant clearly identifies how they will put their project into action, how past experience will help with this\n3. Motivations (clear or unclear) - applicant demonstrates clearly why they want to be a Community Scholar, how they will contribute\n\nFor unsuccessful applications, we provided some short feedback and our project manager worked with the successful applicants to execute the necessary legal agreements ahead of the scheme launch which was in September 2023. At the time of writing, we are just over halfway through the scheme. \n\n\n## Scheme in Practice \n\nBefore our first onboarding call, we sent across a detailed onboarding document about the scheme that could also be referred to throughout the year. \nAt the virtual group onboarding call, we spent time giving information on how the scheme will work and also scheduled the last portion of the call as breakout rooms for socialising, which we felt was important for the scholars to get to know each other as a cohort. \nWe led with a virtual first approach as our scholars were located across the UK and therefore this was a much more inclusive approach.\n\nIn the weeks after this group onboarding call, we then scheduled individual onboarding calls with each scholar to make sure they were set up on the correct systems (such as our Slack Workspace, Google Drive and our GitHub Repository) and helped them start to plan their activities and set out milestones on [template documents](https://github.com/turing-roche/turing-roche-documentation/tree/main/community-scholars) we had prepared.\n\nEvery two months, we scheduled a virtual group cohort call where scholars filled in a document in advance with:\n\n- A short activity and conference update\n- A rose: a line on something that has been going well\n- A cactus: a line on something that has been tricky/not been going well\n- Any asks you have for the group\n\nAt the call we would go through this document, encouraging the group to give advice and support to each other. \nThe second half of the call would feature a guest speaker(s) from Turing and/or Roche on a theme we asked for scholars input on. \nSome of the topics we've had so far are 'Advice on how to become a better Data Scientist', 'Alternative career paths from the Turing' and 'Methods development: collaborations beyond industry'. \n\nIn between these calls, our communication with the scholars was ad hoc as needed. \nTheir main point of contact was me, Sarah McGough, partnership lead from Roche, and our project manager Maria Anagnostopoulou, for logistical queries such as expenses. \nThe scholars could connect with us and with each other through the Turing-Roche Slack Workspace in a dedicated channel and by individual messages. \nWe had online calls with the scholars fairly regularly to support them fully on developing their activities. \nDifferent activities developed at different timescales so we found the support we were providing each scholar wasn't linear.\n\nThe activities the scholars developed varied widely. \nYou can find the full list of activities [here](https://www.turing.ac.uk/research/research-projects/alan-turing-institute-roche-strategic-partnership/community-scholars), but some examples are a tech-talk event series, a Turing Way chapter on risk of bias, a one day conference bringing together data scientists and pathologists, a health data science podcast and a video animation series explaining partnership research. \n\nFor their sponsored conference, we asked scholars to select one relevant to the partnerships’ research but also to their own studies. \nWe encouraged them to present their research at the conference for experience, but this wasn't mandatory. \nEach scholar then produced a post conference output to feed back to the community about their experiences.\nAn example blog from our scholar Syafiq Ramlee can be found [here](https://www.linkedin.com/pulse/turing-roche-community-scholar-conference-wcrme/?trackingId=Y93IZUzd1wmtPPoNA6OTqA%3D%3D).\n\nIn terms of communications around the scheme, we announced the launch through a [webpage](https://www.turing.ac.uk/research/research-projects/alan-turing-institute-roche-strategic-partnership/community-scholars) and also made the scholars milestone documents and conference tracking document available through our [GitHub Repository](https://github.com/turing-roche/turing-roche-documentation/tree/main/community-scholars). \nIn our monthly partnership newsletter, we also featured a different scholar every month to raise their profile. \n\nAt around the halfway point of the scheme was AI UK; a national conference of data science and AI organised by the Turing. \nThe partnership was exhibiting a demonstration booth at AI UK and we used this as an opportunity to invite the scholars to the conference to meet each other and the partnership team for the first time in-person. \nAfter the conference, we also organised a social event to extend the networking opportunity. \nWe found this a really valuable experience for everyone getting to know each other better and making the cohort feel more cohesive. \n\nAs mentioned earlier, the scheme has not finished at time of writing, but we are planning a final in-person celebration event at the Turing to celebrate the scholars' achievements. \nThe scholars will also be writing a summary of their experiences, which we plan to incorporate in an online yearbook. \nWe also plan to gather formal feedback from the scholars on what we can improve for next time.\n\n\n## Learnings\n\nOverall, we are really proud of the scheme and very happy we established it. \nIt was hard to predict what we would achieve from our first cohort, but what the scholars have produced through their creative and scientific backgrounds is phenomenal and wouldn't have been able to be created by our team alone. \nThe success of the scheme has in essence been because it's mutually beneficial - we have gained outputs that cover the breadth of the partnership and link to our research in a new engaging way, whilst the students have gained new skills and experiences outside of their PhD studies.\n\nA key learning for us is the time commitment for the scheme on both sides. \nIt was really valuable to have two people from the partnership team co-leading for support. \nHaving 10 students was really a bit of a guess on our part as the right number, but we have found whilst this is a small group it was about right for supporting each student and encouraging a cohort feel. \nOn the other side, it's good to be clear about timings for the scheme for your participants and be wary that they have other commitments. \nThis is also why it's useful to include activity planning as part of the application process (to get applicants thinking early about what's feasible in the timeframe) and the milestone plan we developed with students at the start.\n\nFurthermore, if you are having outputs from your participants, think about how and when these will be released. \nIt may be impactful to release everything at the end of your scheme, or in our case a lot of the multimedia outputs we aimed to stagger throughout the year for more individual impact.\n\nA key consideration should be around how to build a sense of community in your cohort, which is always tricky. \nWe found a shared Slack channel really helped for casual ad-hoc communication, particularly as our cohort was virtual first. \nHaving a halfway point in-person meet up also helped a cohort feel, although this is balanced with the advantages of virtual such as accessibility and inclusivity.  \n\nOur final bit of advice is to build flexibility into your scheme. \nWhilst planning is a must, we found once the scheme was up and running we did need to make some changes. \nExamples of this being teaming up two scholars for a joint activity to combine their strengths and the aforementioned halfway in-person meet up, which we initially hadn't planned on but felt like it was a good opportunity. \n"
  },
  {
    "path": "book/website/collaboration/ambassador-schemes.md",
    "content": "(cl-ambassador-schemes)=\n# Ambassador Schemes\n\n(cl-ambassador-schemes-prerequisites)=\n## Prerequisites\n\n| Prerequisites | Importance | Skill Level | Notes | \n| -------- | -------- | -------- |-------- |\n| {ref}`Managing a New Community and Team <cl-new-community>`  | Helpful    | Beginner     | This chapter has lots of useful tips around managing a new community which can apply to ambassador schemes \n| {ref}`Organising Coworking Calls or Meetings <cl-mec-remote-coworking>` and {ref}`Chairing Events <cl-mec-chairing>`  | Helpful    | Beginner     | These chapters may be useful if you are planning to host events and/or co-working during an ambassador scheme\n| {ref}`Tools for Collaboration <cl-mec-event-tools>`  | Helpful    | Beginner     | This chapter gives a useful overview of collaboration tools which can be deployed in an ambassador scheme\n\n```{figure} ../../figures/peer-learning.*\n---\nheight: 500px\nname: peer-learning\nalt: Scriberia illustration showing an ambassador or scholar in action in these types of schemes. On the left hand side of the image is a woman in a graduation gown shaking hands with a glass type structure representing an organisation. On the right hand side of the image the woman is seen in a few different settings- working at a computer, brainstorming ideas and chatting with others and talking about the glass structure- therefore spreading the word about the organisation she is part of through the scheme.\n---\nAmbassador Schemes\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. Original version on Zenodo. [https://doi.org/10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807) \n```\n\n(cl-ambassador-schemes-summary)=\n## Summary\n\nAmbassador schemes are growing in prevalence in data science settings. \nIn academic and related organisations, they are programmes that allow external researchers to develop skills or small projects and become part of that organisation’s community. \nOften these schemes focus on supporting early career researchers. \n\nTo be successful, these schemes require careful planning and consideration to ensure participants engage with the scheme, feel supported and also that the scheme is mutually beneficial. \nAmbassadors may receive training or mentorship to effectively carry out their responsibilities. \nAmbassadors often play a crucial role in building positive relationships and conveying the values and strengths of the community they have joined within their own organisations and other related communities.\n\nWe recognise that the term 'ambassador scheme' does not have one definition and can span more widely, such as a 'brand ambassador' in corporate settings, so we are using the term ‘ambassador scheme’ as defined above for the purposes of this chapter. \nWe also are aware that these schemes can have a number of synonyms such as fellow, scholar, champion, but for this chapter we will be using the term ambassador. \n\n(cl-ambassador-schemes-motivation)=\n## Motivation and Background \n\nAn increasing number of data science related organisations, such as the [Software Sustainability Institute](https://www.software.ac.uk/programmes/fellowship-programme), [ELIXIR](https://elixiruknode.org/activities/fellowship/) and [Women in Data Science Worldwide](https://www.widsworldwide.org/join-us/ambassador-program/) have developed and launched successful schemes of this nature. \nThe [Turing-Roche Partnership](https://www.turing.ac.uk/research/research-projects/alan-turing-institute-roche-strategic-partnership) launched its [Community Scholar Scheme](https://www.turing.ac.uk/research/research-projects/alan-turing-institute-roche-strategic-partnership/community-scholars) in September 2023 and the team wanted to share their experiences and learnings from developing and running this scheme in the Turing Way as well as hearing from others. \nWe hope this chapter will be a useful starting point for anyone looking to establish their own ambassador scheme. \n\nAlthough there are often similar aspects to these schemes, they can vary widely in practice and we would encourage anyone who runs or has been part of one of these schemes to contribute a case study to this chapter on their experiences.\n"
  },
  {
    "path": "book/website/collaboration/collaboration.md",
    "content": "(cl)=\n# Guide for Collaboration\n\n***This guide covers topics related to effective and inclusive collaboration.***\n\nData science is defined by its interdisciplinarity.\nOur work can only reach its highest potential if there are diverse teams of people involved in designing and delivering the research or product.\n\n```{figure} ../../figures/collaboration.*\n---\nname: collaboration\nwidth: 500px\nalt: An iceberg sitting in the sea with the image label above it saying there is more to collaboration than you might think. There is an arrow from the image label pointing to the larger part of the iceberg that is under the sea. A small part of the iceberg is sticking out of the water and has a few people sitting on it. This part of the iceberg is labelled with project related technical terms including the words different teams, common goals, exchange of knowledge and production. There are a few divers exploring the much larger part of the iceberg under the water. This part of the iceberg is labelled with community oriented collaborative terms including treat each other kindly, build diverse teams, code of conduct, inclusive workspace and explicitly open for contribution.\n---\nThere is more to collaboration than we see. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\nThere are many different skills required to work well in groups with a wide range of expertise.\nIn this guide, we welcome contributions in developing guidance on the following (but not limited to) topics:\n\n* Designing a project that welcomes contributions\n* Distributed collaboration with git\n* Reviewing team member's contributions\n* Remote working\n* Running an inclusive event\n* Chairing a meeting\n* Defining explicit expectations\n* Participatory co-creation\n\nCheck out our [contributing guidelines](#ch-contributing) to get involved.\n"
  },
  {
    "path": "book/website/collaboration/github-novice/github-novice-advanced.md",
    "content": "(cl-github-novice-advanced)=\n# Advanced GitHub features\n## More collaboration\nGitHub makes it easy to collaborate and create and manage teams.\nYou can add collaborators to your organization or project and manage permissions using the Teams settings.\nBranches, pull requests and merges further facilitate streamlined, version-controlled, collaborative work.\nTake a look at the next chapter on {ref}`Maintainers and Reviewers on GitHub<cl-maintain-review>` for more information on how to use these features.\n\n## Turn your project into a web page\nYour GitHub repo can be turned into a web page for your project by enabling GitHub pages in the settings.\nYou can customise the web pages using one of the templates in GitHub or you can choose your own [Jekyll](https://jekyllrb.com/) theme.\n\nThis resource - [GitHub for collaborative documentation](https://cassgvp.github.io/github-for-collaborative-documentation/) - has a [step-by-step guide](https://cassgvp.github.io/github-for-collaborative-documentation/docs/tut/4-2-Make-your-Pages-site.html) of how to make GitHub pages.\n\n## Link this repository with an online platform\n\n### Open Science Framework\n[Open Science Framework](https://osf.io/) is an online platform that enables researchers to link many different tools - such as Dropbox, GitHub and Google workspace - to create a completely open workflow.\nIt is like a one-stop shop for all your project work.\nHere is a link to why you might want to use [Open Science Framework](https://www.cos.io/blog/5-ways-to-optimize-your-research-workflow-with-osf).\n\n### Code/repository publications\nMaking your code citeable is an important part of open science.\nSeveral platforms are well integrated with GitHub, reducing friction for creating versioned releases and publishing peer-reviewed research software.\n- [Zenodo](https://zenodo.org/) allows you to easily (and automatically, once you've set it up and linked it to your repository) create version-specific and tool-concept level digital object identifiers (DOIs). This makes it easier for you and your users to cite your software, including the version used in a workflow, with unique DOIs.\n- [Journal of Open Source Software (JOSS)](https://joss.theoj.org/) is an open access, peer-reviewed journal for publishing research software packages. Document the effort involved in developing robust software (including testing and documentation) with a peer-reviewed publication.\n"
  },
  {
    "path": "book/website/collaboration/github-novice/github-novice-features.md",
    "content": "(cl-github-novice-features)=\n# Using more GitHub features\n\nNow that your repo is set up, you are ready to add more stuff to it and use some of its useful features.\n\n## Adding more folders (directories), files and commits\n\n* You can add more files to your repo by clicking the \"add file\" button and either uploading files or creating a new one.\n* Each time you create a new file or upload files you will need to add a {ref}`commit message<rr-vcs-commit-messages>` to help you remember what changes you made.\n* Note that git (and thus GitHub) does not track folders/directories, so you cannot create an empty folder.\n\n\n**Create a new folder by adding a new file:**\n\n* Click on the \"add file\" button and then create a new file.\n* This will give you a blank file to edit.\n* When naming the file, first type in the name of the folder (existing or new) and then a forward slash, followed by the name of the file: \"folder-name/file-name.ext\".\n* Edit the content of the file.\n* Save your changes using the \"commit\" button. Remember to type a {ref}`commit message<rr-vcs-commit-messages>` to help you remember what changes you made.\n\nThis file will appear in the folder that you named.\nYou will be able to see the folder on your landing page.\nIf you click on the blue folder symbol, it brings you to the files within that folder.\n\n## Explore the ‘Insight’ features of GitHub\n\n* On GitHub, navigate to the main landing page of the repository.\n* Under your repository name, click \"Insights\".\n* In the left sidebar, click “Community”.\n  * Here you will find recommended files to include in your repo.\n  These files are especially useful when working with collaborators or members in your community.\n  * The \"License\" file is one of the most important, because it tells others how they can (or can't) use the materials in your repo.\n  * For collaborations, be sure to look at \"Contributing\" and \"Description\".\n  * Whenever possible, add a \"Code of conduct\" to make your project welcoming and inclusive for others.\n* Other interesting things to look at are “Contributors” (those who contribute to your project), “Traffic” (who visits your project page and when do they do so) and “Commits” (a timeline and number of commits made on your project).\n\n## Explore the ‘Projects’ features of GitHub\nProject boards on GitHub help you organize and prioritize your work.\nIt is a kanban feature to track your tasks with to-do, in progress and done columns.\nEach item can be linked to specific issues or pull requests to help you track your progress.\nThis feature is a great way to help others contribute to your repo or let them know what you have planned.\n\n\n## Using GitHub Features to foster collaboration\nThis is what a repository looks like when it is set up to include many of these features, making it a welcoming, collaborative workspace.\n\n```{figure} ../../../figures/github-project.*\n---\nname: github-project\nalt: Annotated diagram of a collaborative project repository. Explained in the caption.\nalign: left\n---\nAnnotated diagram of a collaborative project repository.\n- Labels on the left-hand side of the image:\n  - **1. Project:** This shows you the project boards for this repo.\n  - **2. Issues:** All the tasks that have been raised on this repo.\n  - **3. Files:** These are all the files in the repo.\n  - **4. Landing page or `README.md` file:** Your `README.md` file is automatically rendered as a landing page for your site.\n- Labels on the right-hand side of the image:\n  - **5. Insights:** This shows you all the activity that has happened on your repo. \n  - **6. Edit repo details:** You can write a short description of your project and add labels.\n  - **7. Description of the repository.**\n  - **8. Link for GitHub pages:** Website generated by this repo.\n  - **9. Topic labels:** Topic labels related to your repo can help other people find your project.\n  - **10. License:** The license that you have put on your repo.\n```\n"
  },
  {
    "path": "book/website/collaboration/github-novice/github-novice-firststeps.md",
    "content": "(cl-github-novice-firststeps)=\n# First steps on GitHub\n\nHere, we provide step-by-step instructions to get started with GitHub.\n\n## 1. Create a GitHub account\n\nGo to [https://github.com/](https://github.com/) and create a new account using the sign up to GitHub box.\n\n## 2. Create a repository\n\nWhen you have created a new account and you are logged in, you need to create a new repository.\n\nA repository or repo is the online space where you store all of the documents, data and other files for your project.\n\n* To create the new repository, you need to click on the + sign in the top right corner (in the black band at the top of your window) and then click New repository. This will take you to a page that looks like a form.\n* You will see the name of your account and you need to fill in a repository name next to it.\n* Also, leave the box ticked for “public” (so your repository is open to all) and then tick the box to create a “README file”.\n* Then click the green create repository button at the bottom.\n\nThis is what you should see now.\nIt is the landing page for your repository.\nThe diagram below explains what all the buttons, tabs and other things do!\n\n```{figure} ../../../figures/github-basic-diagram.*\n---\nname: github-basic-diagram\nalt: Annotated diagram of repository after its creation, explaining the main features. The main features are explained in the figure legend.\nalign: left\n---\nAnnotated diagram of repository after its basic creation, explaining the main features. On the left side of the webpage we have the following features:\n- **1. Username:** GitHub user’s name (account). In this example, the username is “EKaroune”.\n- **2. Repository:** project directory (also known as repo). In this example, the repository name is “trial-repo”.\n- **3. Code:** this tab brings you back to your landing page. It shows you the folders that you have made in the repo.\n- **4. Main:** this is your default development branch or active branch of your repository.\n- **5. Branch:** parallel version(s) of your repository.\n- **6. `README.md` file:** this file contains basic information about your project (in this case it only has the project name: “trial-repo”. When we plan to make a website, this will be rendered as a landing (front) page for your site.\n\nOn the right side of the webpage we have the following features:\n- **7. Green Code button:** click it to download your repository locally.\n- **8. '+' symbol:** where you can create new repository, import repos and create new issues.\n- **9. Fork:** create a personal copy of another user’s repo. The number shows how many forks there are of your current repository.\n- **10: Add file:** create or upload a file to your repository.\n- **11: Commits/clock symbol:** click to see the history of this file as a list of all the edits (commits) saved at different time points.\n- **12: Edit/Pencil symbol:** click this pencil symbol to edit your README.md file.\n```\n\n## 3. Edit your `README.md` file\n\nUnless you have added any other files or included a license file during repo creation, you should have one file in your repository now - README.md.\nWe'll need to edit this file to add information about the repo.\nThis file is a {term}`Markdown` file; you can see this because it has “.md” after the name of the file.\nThis is where you start to use the {term}`Markdown` formatting.\nWhatever you write in this file will be shown on the landing (front) page of your project on GitHub, so use it to tell people all about your project.\n\n### Navigating the GitHub editing interface\nTo edit your `README.md` file:\n\n* You can click on the pencil symbol in the top right of the central box on your landing page.\n\n**Or**\n\n* Click on the `README.md` file and then click the pencil symbol.\n\nYou can now edit the file.\nWe'll talk about how to save your changes after some pointers on writing a good README.\n\n```{figure} ../../../figures/github-readme-before-edit.*\n---\nname: github-readme-before-edit\nalt: Annotated diagram of README.md file, if you click on the file name on your landing page. The main features are explained in the figure legend.\nalign: left\n---\nAnnotated diagram of README.md file, if you click on the file name on your landing page.\n- **1. Repository and current file:** the repo name and the name of the file you are viewing.\n- **2. Main branch:** currently active branch (\"main\" is the default). Use to change to different branches of your repo (if there are more branches previously created).\n- **3. Contributors:** number of contributors (users) to your file.\n- **4. README.md file content:** the content of your README.md file appears here. This content will expand once we add more information..\n- **5. Raw file:** view the raw {term}`Markdown` text file.\n- **6. Blame:** view the last modification made to each line of the file. It can be used to track when and who made changes and go back to older versions of the file to fix bugs.\n- **7. Edit file:** click this pencil to edit your README.md file.\n- **8. Delete file:** click the bin to delete this file.\n```\n\n```{figure} ../../../figures/github-readme-after-edit.*\n---\nname: github-readme-after-edit\nalt: Annotated diagram of README.md file in edit mode – before editing. Explained in the title.\nalign: left\n---\nAnnotated diagram of README.md file in edit mode – before editing.\n- **1. Preview changes:** press to see your text rendered (how it would appear on GitHub or on a web page).\n- **2. Edit file:** press this tab to edit the content of your README.md file.\n- **3. Add content to README.md:** write the {term}`Markdown` text for your README.md file. You currently only have the repository title in this file.\n```\n\n### Tips for writing your README file\n\n* Keep it simple! When you’re working in any field, whether it’s software engineering or astrophysics, you’ll learn and use jargon – terms that have a special meaning to your field but likely won’t make sense to anyone who isn’t part of that field. Too much jargon can confuse newcomers, so use simple language and define all potentially unfamiliar terms here.\n* Share your project with others - describe what you are doing now and what you want to do in the future.\n* Tell people who you are and how you can be contacted.\n\n\n**NOTE: If you’re having trouble getting started, it’s a good idea to look at other peoples' `README.md` files.**\n\nIf you can’t get your raw {term}`Markdown` content to render in the way you want, it is also a good idea to find a file that has what you want and then look at the raw file.\nYou can copy and paste other people’s raw file content into your `README.md` file and then edit it.\n\nHere is an example of a really well formatted `README.md` file: [STEMM Role Models App](https://github.com/KirstieJane/STEMMRoleModels/blob/gh-pages/README.md)\n\nIf you click the link above, it will take you to their README file. You can use this as a template for your `README.md` file.\n\n* To look at the raw {term}`Markdown` file you need to click on the raw button (top right of the white box).\n* This takes you to the {term}`Markdown` raw file that is rendered into a nicely formatted `README.md` file on GitHub.\n* Now just copy and paste it into your `README.md` edit tab. You can now edit this for your project.\n* Remember to check what it looks like by clicking on the preview changes tab.\n* When you have finished editing, you need to scroll down to the bottom of the page and press the green commit changes button.\n\n```{figure} ../../../figures/github-edited-readme.*\n---\nname: /github-edited-readme\nalt: Annotated diagram of README.md file in edit mode – with a template added. Features are explained in the figure legend.\nalign: left\n---\nAnnotated diagram of README.md file in edit mode – with a template added.\n- **1. Using {term}`Markdown` to add content to README.md:** the Markdown (denoted by ‘.md’ in the file extension) text for your README.md file. This example shows the template file that has different sections (headers and subheaders are created by using one or more of ‘#’ symbol. See the {ref}`formatting consistency section of the Community Handbook<ch-consistency-formatting-hr-markdown>` for some more information on using Markdown.\n```\n### Committing - or saving - your changes\nCommitting your changes is like hitting the \"save button\" for a file.\nGitHub will not automatically save your changes, so it's important not to skip this step.\n\nWhatever changes you have made in the file will be deposited into your repository.\n\nIt is good practice to write a descriptive commit title and a short description of what you have done in the commit changes box.\nSo something like - commit title: ‘first edit of the readme file'; description: 'copied template from … and edited it with the details of this project’.\nThis information about the commit is called a “commit message”, and the commit title will enable you to quickly look through the history of changes for a file (which is why making them descriptive is so important - it's like leaving a helpful note to your future self).\n\nYou can see a list of your commits (or your \"commit history\") by clicking the clock symbol on your landing page or within the page for each file.\n\n## 4. Add a license to your repository\n\nIt is important that all of your work has a license from the very beginning or no one can reuse it. Licenses tell other researchers how they are able to reuse, modify and remix your work.\nNo license implies that others are *not* allowed to use your work, even with attribution.\nSo it is better to include a license that lets people know what they can and can't do and how to give you credit for your work.\n\nDepending on your field, much of your work may be documents with only some data or code.\nThe standard licenses offered on GitHub are most appropriate for software and won’t really be the right kind for documents.\n\n[Creative commons](https://creativecommons.org/licenses/) licenses are the best to use for this purpose, and the most open of these is the CC BY 4.0.\n\nTo add a license to your repository, the first thing to do is create a `LICENSE.md` file:\n\n* To do this, click on the Add file button, and click create file. This will give you a blank file.\n* Then, you need to name the file, so call it `LICENSE.md`. This makes it into a {term}`Markdown` file.\n* You can find all the creative commons licenses in the link above so copy the text of the license you want and then paste it into this file.\n* Don’t forget to press the green commit new file button at the bottom and write a commit message to describe what you have done.\n* You can also add a link to the license to the bottom of your `README.md` file. Here is a link to a repository that you can copy to add in a [CC BY 4.0 license](https://github.com/santisoler/cc-licenses).\nIt has a text file for your `LICENSE.md` file and also a shield (or badge) that you can put at the bottom of your `README.md` file.\n\nYou can find more information about licenses in the {ref}`rr-licensing` chapter of The Turing Way.\n"
  },
  {
    "path": "book/website/collaboration/github-novice/github-novice-motivation.md",
    "content": "(cl-github-novice-motivation)=\n# Motivation for Using GitHub\n\nGitHub is an online web interface for collaborating, developing, sharing and using {ref}`git<rr-vcs-git>` ({ref}`version control<rr-vcs>`).\nIt’s designed to be easily accessible (you do not need to be a coder!) to share your work and (if you want) allow other people to test, modify, remix and reuse it.\nIt also provides space and tools for collaboration and maintenance.\n\nGitHub is not the only available development platform, but it hosts this book and is widely used across disciplinary and private-public boundaries.\nThus, this chapter is tailored towards GitHub and its resources, though other platforms probably have analogous functions.\n\nSome key things to know about GitHub: \n\n- It has terrific project management features, a social platform and communication tools that are useful for any project where a group of people is working together on the same set of documents\n- It can be used to store documentation, data and make web pages for projects\n- It provides an easy-to-use interface for {ref}`version control<rr-vcs>` that allows all activities to be recorded so you can revisit past versions and you know who made each contribution to the project\n- It has many options for automating repeated project management tasks\n\n\n## Project Management\n\nYou can manage your project by creating project boards that include to-do lists and issues (problems or tasks that need to be done).\nDiscussion forums and flexibility in user permissions mean you can give team members (and/or the general public) the appropriate levels of access.\n\n## Easy to use\n\nYou can use GitHub directly in your web browser or download it to your computer. \nMost instructions about how to use GitHub will start with you downloading it to your computer.\nHowever, there is no need to download GitHub onto your computer; it is much simpler to use it in a web browser.\n\nIn order to use GitHub, you do not need to be a computer coder!\nTo format text, you only need to learn a very simple type of file formatting syntax called {term}`Markdown`.\nAgain, you do not need to download a {term}`Markdown` editor as it can all be written directly in GitHub in your web browser.\n{term}`Markdown` syntax {term}`Syntax` is designed to be human readable even if it isn’t rendered {term}`Rendered Output`.\nThis allows you to format your text into a nice-looking document, including adding in links, pictures, tables and web links.\nIn most cases, GitHub even provides a \"preview\" option that allows you to see what your rendered document will look like.\n\nFor example, if you want to put a heading in {term}`Markdown` you use a ‘#’ (hash symbol) followed by a space and the title.\nLike this `# heading 1`, this will produce the first level header style for that text.\n\n### Resources to help you learn Markdown:\n\n* How to write faster, better & longer: [the ultimate guide to Markdown](https://ghost.org/changelog/markdown/)\n* [Markdown cheatsheet](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet)\n* {term}`Markdown` guide: [Basic syntax](https://www.markdownguide.org/basic-syntax/)\n\nHow and when you use {term}`Markdown` formatting in your file will become clearer as you go through this chapter.\n"
  },
  {
    "path": "book/website/collaboration/github-novice.md",
    "content": "(cl-github-novice)=\n# Getting Started With GitHub\n\n## Prerequisites\n\n| Prerequisite |  Importance  |  Notes  |\n| ---------------- |------------------ | --------- |\n| {ref}`rr-open` | Helpful | Components are part of the open workflow |\n| Recommended skill level | Beginner   | To help a complete beginner |\n\n## Summary\n\nThis chapter introduces a step-by-step guide for using an online web interface called GitHub.\nThis platform is popular among researchers to store and share their code, small data and related information.\nHowever, it has evolved into a collaborative platform for developing documents and communicating them openly and transparently.\n\nMany of the new tools developed for reproducible research can seem daunting to researchers who have little or no experience with computational tools.\nHowever, if researchers have used online tools such as Google workspace and Microsoft Office, with a small amount of instruction they should be able to learn to use GitHub online platform fairly easily.\n\nIn this chapter, we describe the {ref}`motivation of using GitHub<cl-github-novice-motivation>`, explain the {ref}`important first steps<cl-github-novice-firststeps>`, discuss some {ref}`useful features<cl-github-novice-features>` and list resources to learn {ref}`advanced GitHub features<cl-github-novice-advanced>`.\n\nLessons learned in this chapter will enable researchers to work openly, collaboratively and with version control.\n\n***Chapter Tags**: This chapter is curated for the `Turing Data Study Group` (`turing-dsg`).*\n"
  },
  {
    "path": "book/website/collaboration/leadership/leadership-building.md",
    "content": "(cl-leadership-building)=\n# Building Healthy Leadership Skills\n\nBy healthy leadership, we mean creating an ideal environment that empowers, guides and stewards members of a team within a community, project, or organization where everyone feels safe, welcome, and valued.\n\nOpen leadership principles are skills that can be learned and applied by anyone building healthy teams and communities that involve and empower their members, not just reserved for open projects or work happening in the open.\n\nBelow we highlight some factors and concepts that contribute to building healthy leadership skills. \nThese are by no means an exhaustive list, or comprehensively described. \nPlease use them to identify what skills you might need to bring into your leadership.\nWe have intentionally avoided giving reading recommendations as those continue to evolve and change, and we instead recommend our readers ask for references within their teams and communities.\n\n## Some Important Skills that Leaders Should Build\n\n- **Leading by example**: Leaders take initiative. They demonstrate what something looks like in practice. \nTheir examples combined with clear directions for what needs to be done create opportunities for others to follow. \nThey support their team members to take on specific roles while working alongside each other. \nThey support them to identify new ideas and opportunities while working towards a shared goal, rather than telling them constantly what to do.\n- **Championing Equity, Diversity, Inclusion, Accessibility (EDIA)**:\nGood leaders champion EDIA in their teams and workplace.\nThey actively learn and build an understanding of how to operationalise EDIA in project goals.\nIdeally, EDIA is embedded in the work culture so it doesn’t become another item on the checklist, or given inadequate resourcing and attention. \nLeaders play a critical role in ensuring that EDIA efforts in the ways of working of a team as well as the work they do are intentional and meaningful.\nOpen and emergent leaders understand that research and communities are political, with members from various identities, backgrounds and political interests, who are affected by the social discourse.\nTherefore, they learn to hold safe spaces to have discussions and respond to the need for culture change with the members affected or oppressed by the status quo.\nLeaders should build crucial [ally skills](https://www.software.ac.uk/blog/2021-07-05-why-we-discuss-ally-skills-open-science) to learn how to use their privileges to step up for others in the teams.\n- **Ensuring Diversity**: Diverse teams are high-performing teams.\nData science and research projects are no exception to supporting diverse teams.\nDiverse teams are indispensable and inherently essential for ensuring benefits for people impacted by the processes and outcomes.\nEmpathic and effective leaders understand the importance of diversity, build diverse teams and centre the interests of marginalized interests in their projects and work.\nGood leaders respect and celebrate cultural differences and welcome everyone by providing inclusive approaches and policies. \nThis means understanding that people come from different cultural background and lived experiences and have different preferences or style of working (reference: [The Culture Map](https://erinmeyer.com/books/the-culture-map/)).\nLeaders should be intentional in designing projects and teams' ways of working to embed practices that welcomes and include all stakeholders.\nIf there are certain limitations for including specific groups of people such as external stakeholders, this should be clearly recorded and communicated.\nBeing kind, examining assumptions, and keeping an open mind to learn from the variability that enriches teams are essential to be a good leader. \nNo one in a team, group, organization, or event should have to speak too loudly to get their message across.\n- **Transparency and accountability**: Healthy leadership makes decisions as transparent as possible and builds accountability within the team.\nThis means that everyone is involved in the decision-making and feedback process, and kept updated on the status of the group's work. \nIt also means avoiding unpleasant surprises and uncertainties, and ensuring clear expectations for everyone's behaviour through participation guidelines and Code of Conduct.\nHuman relationships are complicated, and leaders must make consensus-led decisions, however, sometimes those decisions may not align with the scope and goals of the project. \nThis is where providing a clear governance process can help leaders in avoiding arbitrary decision-making, bring alignments and enable transparent governance.\n- **Continuous knowledge and skill building**: Leaders have deep knowledge of their projects and teams, and continue to build skills for themselves and others as needed.\nThey bring systems-level thinking and familiarity with the whole organisation where they lead, and the system within which they work with. \nLeaders’ goals also include identifying opportunities for and directly building complementary skills for the entire team, encouraging problem-solving as a team, developing a workflow that enhances the efficiency of the team (for example reusable and reproducible processes), and sharing knowledge with each other.\nAt the core of this is building diverse teams, bringing perspectives from diverse cultural backgrounds, and working with them to solve problems faster.\n- **Consensus**: Leaders act on as much consensus as possible, even when they do not agree with the decision individually.\nA healthy way to navigate the difference is to create spaces to have informed conversations where multiple perspectives are explored and the team can assess the pro and cons of each possible decision. \nThis also means that leaders provide a process for how decisions are made, and invite inputs from their team members on improving the process further.\nSometimes it may mean that they need to reach out to the people who don't actively engage, or feel left out of the consensus to make decisions that are best for the maximum number of people affected by them.\n- **Trust**: Healthy leadership trusts in the skills and ability of people around them and identifies the best fit roles or tasks for everyone to succeed.\nThey are aware of their own biases and avoid them intentionally, often by providing space to listen to different thoughts and perspectives. \nThey support people to [navigate and manage changes](https://www.linkedin.com/pulse/do-you-navigate-manage-change-barbara-kramer-zarins-mba/) by helping them understand where they stand in relation to coming changes particularly when leading large projects, with many moving parts and teams.\n- **Delegation**: Leaders should lead by example, but they will be unable to do everything themselves and should not do everything either. \nWhen a leader is in charge of too many aspects of a project they will become a bottleneck and blocker to the emergence of other open leaders as well as the overall progress of the project.\nDelegation goes hand in hand with building a trustworthy environment, this means that they communicate clearly the overarching goals, create smaller milestones, and delegate tasks meaningfully so different people can lead different parts of the work, nurturing healthy leadership habits within their teams.\n- **Understanding of power dynamics**: Power dynamics are relationships between people in an organisation with varying levels of privileges. \nLeaders hold power because of their position in the project (formally or socially) and hence have significant influence over how those power dynamics are experienced or manipulated in their teams and communities.\nLeaders with formal authority come with institutional power and open leaders often come with informal connections that can translate into social capital or power (even when they don’t have formal authority in the organisation).\nTherefore, leaders should understand how their positions affect the dynamics when working with others in their team, even when not overtly exerting their power.\nUnderstanding power dynamics helps leaders identify and resolve conflict, build consensus, and create a more effective team culture.\n- **Acknowledging fairly**: Leadership roles come with a lot of visibility.\nThis is partly earned by leaders' work as individuals but is often enhanced by the work of others in their teams. \nOpen leaders recognise and celebrate all kinds of work, appreciate and celebrate them openly and give appropriate credit to everyone, including those who take on invisible responsibilities for the sake of the projects' overall success.\n\n##  What Should Leaders Avoid\n\n- **Elitism and hypocrisy**: Open leadership in research in general benefits a lot from equity, inclusivity and diversity (EDI). \nThus, traits that sabotage EDI goals, should be avoided at all costs.\nAttitudes like elitism and hypocrisy can have unintended consequences on the project as well as on the leaders themselves.\nElitism is when leaders constantly reinforce their authority, status, and expertise, creating distance between themselves, experienced team members, and junior or newer members.\nHypocrisy is when leaders hold their team members to a different standard than that to which they hold themselves.\nLeaders should hold the same standards for everyone and create spaces for collaboration through egalitarian rather than authoritative means.\n- **Ignoring the personal side of the team**: People have multiple sides of their lives and only part of it might be visible when they contribute to a project or team.\nLeaders should set an environment where their team members feel safe to disclose as much or as little they want from their personal lives. \nBut it is up to the leader to ensure that their team members feel safe to express the issues that affect their work such as their physical or mental health, and understand each others' challenges, such as those caused by invisible or visible disability or caring responsibilities outside work.\nThey should also ensure people know where and how to ask for help, whether that help comes from colleagues or professionals. \nIf leaders don't make it ok for their team members to share their challenges, team members, particularly newer members, will not know what is appropriate and won't ask for help even when they need it. \nThis will likely have a negative impact on the overall project/team/organisation dynamics, decrease opportunities for building trust, and affect people's mental health, which may result in burnout.\n- **Tunnel vision**: Leaders should be aware of the research landscape, trends, and state-of-the-art technology/approaches relevant to their teams. \nEven if the organisation or a project might focus on one line of work, awareness about and an understanding of what is 'going on around' at the broader level help create a better direction for the project.\nThey engage their team members and engage them in discussions that go beyond finding quick solutions.\n- **Hide weaknesses**: Weaknesses should be something we should embrace and work on, not something to hide - especially leaders. \nLeaders should not put unrealistic expectations on their team members to know everything, unicorns do not exist!\nInstead, they should encourage complementing skillsets and create teams where everyone can learn from and build on each others' skills.\nSometimes people's strengths can be their 'weaknesses' in other situations, and vice versa.\n- **Micromanage**: Leaders don't try to personally control and monitor everything that their team members do. \nInstead they learn to delegate, ask what their team members need and trust that their team members would complete the task assigned to them. \nThey should be available to talk to without interfering with the work directly and slowing the operation down.\n- **Trying to be a leader everywhere**: The same person should not be a leader everywhere.\n People in one or several lead positions would ideally leave room for others to take on leadership positions. \nGood leadership takes a lot of time. \nIt is often not possible to lead well if you are leading several projects. \nLeadership and limited time allocation are often incompatible.\n\n## Address Conflict of Interest with Feedback Process\n\nA conflict of interest is a situation in which the leader (or one of their team members) has a private or personal interest, directly or indirectly, that influences, or appears to influence, the delivery of their duties as a leader, to the detriment or benefit of the team.\n\nIf a person participates in several projects or spaces (professional or personal), they will likely have overlapping interests.\nBased on the nature of their roles in those projects, the nature of their relationship with different project teams (sometimes with overlapping groups of people) will differ.\nIt is the core responsibility of individuals to identify and declare their conflicts of interest proactively.\nThey should make it clear in what capacity or in what role (from the multiple 'hats' they wear) they are operating.\nThey should separate the conversations to avoid confusion for people they work with and if needed, they should step away from a situation, transferring the leadership responsibilities to others.\nIt is also important to remember that you may have different levels of power depending on which “hat” you’re wearing - for example, as a friend, you might be entitled to ask someone things about on a personal level that would be inappropriate to ask if you are acting as their manager.\nIn [this video](https://www.youtube.com/watch?v=HQjRnWVmL28), Carol Willing explains how it is critical to abstain from decisions as a leader when you have a conflict of interest.\n\n## Learn from mistakes \n\n> With great power comes great responsibility\n\nWe are all humans and make mistakes. \nHealthy leadership recognises, accepts and apologizes when they make mistakes.\n\nA good leader owns their mistakes, takes responsibility for the harm caused by their error, rights the wrong, and learns from mistakes going forward. \n\nA substantial component of visible vulnerability will only make leaders better. \nGenuine vulnerability builds trust.\n"
  },
  {
    "path": "book/website/collaboration/leadership/leadership-features.md",
    "content": "(cl-leadership-features)=\n# Important Features of Leadership\n\n```{note}\n\"A leader is anyone who takes responsibility for finding the potential in people and processes and has the courage to develop that potential. \nLeadership is not about titles or the corner office. It's about the willingness to step up, put yourself out there, and lean into courage.”\n\n-- Brene Brown, [Dare to Lead](https://brenebrown.com/hubs/dare-to-lead/)\n```\n\nLeaders empower others to identify solutions and make their own decisions to address the challenges they face.\nLeadership skill is involving the members of a group (that a leader aims to impact) in decision-making processes and not taking individual decisions for them ([Leader as an Activist](https://www.management-issues.com/opinion/6087/the-leader-as-activist/)).\nLeadership is different from operating individually, managing a task or administering a role in isolation.\nIt is about understanding and enabling the purpose of the project and the process through which people within a team work with each other to reach the overarching goal.\n\nWith this basic understanding of leadership, we discuss some essential leadership features, in contrast to task management, in this subchapter.\n\n## Assigned Leadership\n\nLike a project manager in a team-based research project or a tech company CEO, there are formally-assigned leadership positions.\nA company CEO have the power to make decisions to provide organisational resources which can impact the overall efficiency and the ability of teams to deliver on organisational goals.\n\nThey hire and assign leaders to lead different teams.\nIndividuals within those teams also inspire other members, and play huge role in keeping team motivated as they make progress in their own rights, and take on leadership roles themselves.\n\n## Emergent leadership\n\nLeadership opportunities in the context of data science often appear in spaces where human interactions happen.\nAs soon as there is more than one person involved, for example, in a group project, community discussions, or collaborative events like hackathons, there is fertile ground for leadership roles to emerge.\n\nSuch emergent leadership opportunities allow individuals to explore, learn, and exhibit leadership skills and ultimately become leaders themselves.\n\n### Emergent Strategy for Open Leaders\n\nLeaders don't come with fully formed strategies.\nOften open leaders don't identify or call themselves leaders and don't engage with projects with the intention to take on leadership roles.\n\nThis is where the concept of emergent strategy can help open leaders to navigate their roles in the ever-evolving world of data science, research and open science communities.\nWe have mentioned [Emergent Strategy](https://adriennemareebrown.net/book/emergent-strategy) by Adrienne Maree Brown at the beginning of this handbook (in a `document by Kirstie<fw-emergent-strategy>`) chapter and recommend this as a practical handbook on mobilising communities, activism for social change, and nurturing deeper kinder connections in our communities through open leadership. \n\nEmergence is when new ideas emerge with time in a project or a community and as a result of bringing diverse members/perspectives into the team. \nEmergent Strategy asks leaders to embrace the changes and evolve our planned strategy as leaders based on what seems sensible and needed to facilitate/guide/lead the team towards their shared goals.\nA [summary](https://fortelabs.co/blog/emergent-strategy-organizing-for-social-justice/) by Forbes Lab describes emergence as practical instead of theoretical.\nBrown’s definition of emergence comes from Nick Obolensky: “Emergence is the way complex systems and patterns arise out of a multiplicity of relatively simple interactions.” \nThe principles described by Brown has also informed and shaped _The Turing Way_ project as discussed in {ref}`fw-emergent-strategy`\n\n## Leadership is Granted by Others\n\nOutstanding leadership is often sought and studied because teams, organisations, and people work at their highest potential, building extraordinary results when following good leaders.\nYet, one main characteristic of leadership is that it is granted by others who decide to follow someone as a leader in a specific setting.\nThis means that even leaders with formal authority need to build trust and psychological safety within their team to earn leadership.\nIt also means that the ideal environment and culture is established to enable different members to take on roles that align with their skills and interest, and be granted open leadership roles by the formal leaders or the other members of the team.\n\n### Creating Structure in Leadership\n\nA clear structure (often described with an [organigram](https://pingboard.com/organogram)) about different stakeholders involved in the project and how they influence decision making helps everyone understand how they work with each other.\nProjects without structures can become a victim of what Jo Freeman describes as [the tyranny of structurelessness](https://www.jofreeman.com/joreen/tyranny.htm).\nThis term describes the authoritarianism that can emerge in human groups due to the lack of structure and rules, with an implicit and opaque hierarchy developing. \nA way to fix structurelessness is by bringing governance, policies, or rules in writing accessible to everyone.\n\nGovernance is the set of formal and informal practices through which an organisation sets goals, assigns responsibilities, establishes systems, and assesses outcomes of organisational action (find theoretical details in the [Handbook of Economic Organization by Grandori, A. (2013).](https://econpapers.repec.org/bookchap/elgeebook/14110.htm]).\n\n```{note}\nOrganisations that have good governance use clear decision-making processes, behave openly by reporting on their activities, actively engage with their stakeholders, effectively manage the risks they face, and take responsibility for controlling and protecting their assets, including their reputation. Each of these areas of governmence activity contributes to an organisation’s success.\n\nThe governance process should help identify and create accountability for:\n* Who makes decisions, and how?\n* Who gets to participate, and how?\n* Who is responsible to address risks/challenges, and how?\n* Who controls and protects the outcome, and how? \n\n**References**: \n1. Chartered Governance Institute, UK & Ireland, Discover Governance - [What is governance?](https://www.cgi.org.uk/professional-development/discover-governance/looking-to-start-a-career-in-governance/what-is-governance)\n2. Sharan, M., & Sánchez-Tapia, A. (2022). Community Governance: Representation & Intersectionality with examples from the Open Science Community. Zenodo. doi: [10.5281/zenodo.7038553](https://zenodo.org/record/7038553).\n```\n\nGovernance helps any team-led project to function well, particularly during times of change.\nThis tutorial by Carol Willing on [Open-source governance and leadership](https://github.com/jupytercon/2020-willingc/) (supplementary [video](https://www.youtube.com/watch?v=HQjRnWVmL28)) is an excellent starter for learning more about forms and models of governance.\nWe have also described governance in the different guides of The Turing Way, especially in the context of data science and open source projects, for instance {ref}`er-ethics-open-source-governance`.\n\n## Leaders are Made, not Born\n\nAs with any other human aspect, leadership skills can be learned through practice and time.\n\nNo fixed formula for leadership works in all scenarios with the same effectiveness.\nHowever, individuals can learn some specific traits and adapt these traits as needed in a given situation.\n\nGreat leaders in one project or environment, say a data science journal club, may not be leaders in other contexts such as leading a research project independently.\nIt doesn't mean that specific skills required for a specific profession can't be learned.\nLeaders must bring humility and understand where their knowledge might be limited.\nNo matter how many books about leadership a person reads or how many (often expensive) workshops a person attends to learn how to become a leader, no method will guarantee leadership at all times in all contexts.\nTherefore, in new contexts, leaders should give space to people who are closer to the situation/problem and may have a better understanding of their environment and needs.\nIndeed, trying to become the leader of too many projects or in all contexts is often one of the aspects to avoid in healthy leadership as we mention in the next subchapter.\n\nThe final takeaway here is that learning to become a good leader is a creative process that one can also learn through practice and willingness to learn from failures.\n"
  },
  {
    "path": "book/website/collaboration/leadership/leadership-opportunities.md",
    "content": "(cl-leadership-opportunities)=\n# Creating Leadership Opportunities\n\nWhile leadership opportunities can emerge, it can be helpful to create clear pathways to invite individuals to lead, acknowledge their work and formalise their roles.  \nThis can be done by inviting people for individual contributions and facilitating a culture where people feel empowered and trusted to lead when opportunities arise.  \n\nOnce a community or project team has grown to a certain size, a more formal structure can help to ensure leadership responsibility scale accordingly to keep everyone supported.\nBeing clear about the roles people can take on and the commitment that is expected from them will allow people to manage expectations around skills, workload, and responsibilities.  \n\nOne way to do this is to have people commit for a certain period and re-evaluate leadership regularly. \nThis allows active leaders to reflect on their contributions and offboard if necessary and is an opportunity to identify if more or other community members have emerged and should be formally recognised for their work.\n\nIn the context of data science, in *The Turing Way* we have discussed the {ref}`Research Infrastructure Roles<cl-research-infrastructure-roles>` describing the roles of members in a research team who provide specialised skills, expertise and services required for effectively carrying out and delivering high-quality research.\nYou can explore the chapter in detail, which spotlights the roles of Research Community Managers, Research Applications Managers, Research Engineers, Data Stewards, Data Wranglers, Project Managers and more as open leaders.\n\nFor community projects, The Carpentries' community leadership documentation in [The Carpentries' Handbook](https://docs.carpentries.org/topic_folders/governance/index.html) makes a good set of resources.\n\n## Onboarding, Nurturing and Offboarding Gracefully\n\n### Onboarding new leaders\n\nOnboarding leaders is a process through which new members join an organisation at a leadership position.\nOnboarding occurs after a new member has agreed to join the organisation upon invitation by the current leadership team or via a formal election process.\nA set of guidelines can be provided in a written format as a formal or informal document to ensure that new members have the opportunity to familiarise themselves with the processes and resources they can use in their work, as well as people in the organisation they can collaborate with. \nOnboarding is particularly important to make the new members or leaders feel welcome in their organisation.\nHere are a few steps that may be involved in the onboarding process:\n- Updating internal and external documents to communicate the new position or active status of newly onboarded members with the appropriate party\n- Sharing documents with details on organisation policy, project details and job responsibilities with the onboarding person\n- Giving access to platforms and documents to ensure required/permitted details are transparently shared\n- Explaining roles and responsibilities of other members and leaders in the organisation\n- Scheduling meetings with all stakeholders in the project who the newly onboarded member can collaborate with\n\n### Nurturing the next leaders\n\nIn data science and research, leaders are often too busy leading (admin tasks, reporting, funding, and project meetings) and hence leaders rarely have time to learn about the latest advances both at technical and human levels. \nTherefore, leaders need to allow members of their team to work independently, while also supporting them in exchanging knowledge among themselves.\nSenior leaders should commit to building diverse teams with members and leaders from various backgrounds and levels of experience. \nIt is then their responsibility to mentor and support them, and create a path for them to excel and grow in their roles. \n\nNurturing these next-generation leaders requires building trust through authentic connections, and providing opportunities for upskilling.\nProviding the right level of support while challenging and nudging their team members towards new directions helps **them**, the team, upskill and experience personal growth.\nThe best way to nurture potential leaders is to allow them to take on meaningful leadership responsibilities and find solutions for their problems or challenges through collaboration. \n\n### Offboarding gracefully\n\nOffboarding is the process that leads to the formal separation between a leader or team member and the organisation through resignation, termination, or retirement. \nOffboarding ensures there are no communication gaps or information loss when someone leaves the organisation. \nThe process is also important to ensure that the contributions by members are fairly recorded and attributed in the future, as well as to improve the ways of working for the current and future team members.\n\nOffboarding gracefully means providing clear guidance for members in key positions on how and when they can step down. \nWritten documents or formal policies for offboarding allows leaders to be aware of their options and prepare to step down on time, avoiding burnout.\n\nHere are a few steps that may be involved in the offboarding process:\n- Contacting the responsible member of the organisation who will help in the offboarding process\n- Documenting any ongoing responsibilities that will be delegated to other members for continuity\n- Updating internal and external documents to communicate the change in status of offboarded members to team or community\n- Revoking access to platforms and documents to ensure the safety of data and information that should remain accessible only to active members\n- Conducting an exit interview for the organisation to seek feedback about a member's experience and identify areas for improvement\n- Finishing paperwork required to conclude the offboarding process and create an organisational record for future reference"
  },
  {
    "path": "book/website/collaboration/leadership/leadership-story-data-librarian.md",
    "content": "# Personal Story of Leadership by a Data Librarian\n\n## What does leadership for research infrastructure roles look like?\n\nAs formal career paths for many research infrastructure roles are currently not yet defined, formal leadership positions are limited and often tied to managing people or budgets.\nIn the ten years I have worked in the open science space in research infrastructure roles (research data librarian might come closest to describing it), I have not formally managed a team, though I hope that I have led and enacted change and hopefully inspired some people along the way to work more openly.\n\n*So, how do people in research infrastructure roles lead?*\n\nMany of these roles contain a degree of coordination and project management, so our leadership brings people together, facilitates conversations that otherwise might not happen and while we might not be decision makers, we certainly can get others to make decisions and hold them accountable for enacting them.\n\nI have managed a range of services (data repositories, services to support [data management planning](https://book.the-turing-way.org/reproducible-research/rdm/rdm-dmp.html)) working closely with software developers on delivering a smooth service to users.\nAs I prefer decision making by consensus, it often feels more like a collaboration and less like me leading the team and service development. \n\n\n## Inspirations\n\nMany of my leadership inspirations and ways how I acquired skills where not  part of my day to day jobs or formal certifications, but communities I joined to grow my professional network.\nI also often lead on projects that are based around ideas mentioned on Twitter.\nNot all of them are followed up on, but I have organised events and started collaborations based on others co-leading with me.\nLearning about the [Mozilla Open Leadership principles](https://foundation.mozilla.org/en/initiatives/mozilla-open-leaders/) was life-changing for me. \nWhile the program taught me technical skills like how to use GitHub, it also highlighted that thinking about workflows, project contributors and documentation are just as important as the technical skills.\nIt also brought me into the Turing Way core team when it was initially set up. \n\n## Addressing my weaknesses\nOne of the main skills leaders should have is the ability to understand their weaknesses and actively work on them.\nThey should also bring other people into the space they lead in that might balance out areas of weakness.\n\nI personally struggle with delegating and often just did tasks myself to make sure they are done the way I expected. \nJoining [Open Life Science](https://openlifesci.org/) as a mentor was crucial for me to learn that I can still be helpful to others without taking over. \nI learned the basics of mentoring and coaching helped me reflect where I can empower colleagues more.\n\nAnother important skill to learn is to say \"no\" and not take on too much. \n[FOMO](https://en.wikipedia.org/wiki/Fear_of_missing_out) is definitely an issue for me, but I got better at managing my energy. \nMozilla's resources on [personal ecology](https://foundation.mozilla.org/en/blog/new-movement-building-home-community-calls/) are a great reflection tool to sustain energy or identify if it is time to step away from certain projects.\n\n> A \"no\" from me is an opportunity for someone else to say yes!\n\n\n## Summary\n\nI hope that this case study inspires others to think about their leadership potential, especially if they feel they are not a leader because they are not in a formal leadership position.\nOften, others see us as leaders when we do not identify with that label yet, thus I encourage anyone to **tell the people that inspire you that you appreciate their leadership**! \n\n\n### Reading I found helpful:\n\n* [No Hard Feelings](https://www.lizandmollie.com/book/) by Liz Fosslien and Mollie West Duffy\n* [The Culture Map](https://erinmeyer.com/books/the-culture-map/) by Erin Meyer\n\n_This personal story is written by _The Turing Way_ contributor and founding member [Patricia Heterich](https://book.the-turing-way.org/afterword/contributors-record.html#patricia-herterich), based on a discussion she led at the Book Dash in May 2022._\n"
  },
  {
    "path": "book/website/collaboration/leadership/leadership-story-hackathon.md",
    "content": "(cl-leadership-story-hackathon)=\n# Personal Story from Running a Hackathon\n\n## Diving into Leadership: lessons from leading a hacktahon project\n\nHackathons can be quite intimidating scenarios to put yourself into.\nYou're probably meeting a whole load of new people and getting to grips with a new project or programming language.\nOn top of that, you probably only have a couple of days or less to demonstrate your skills by producing something that is either a prototype or a mock-up version of a product.\n\nNow imagine if you were to lead and coordinate a group of people to work on your project idea?\n\nYeah!\nThat is challenging for many!\nI've been there, and I was intimidated too!\nSo let me share some of the things I learned the first time I led a hackathon project at the [first Microsoft Research Software Reactor sprint](https://research-software-reactor.github.io/blog/sprint0).\n\n## Don't just focus on the code\n\nThere are lots of different things that go into making a project, beyond the code itself.\nSimilarly, there are lots of different people with different skills who may join your hackathon project - not just programmers!\nGood leaders can identify the strengths of their team, specifically where different skills can be put to best use on a project.\n\nThings like documentation are often left until the last moments of a project even though it's just as important, if not more so, than the code itself!\nIf you have someone on your team who likes to write, documentation can be kept up-to-date as your codebase changes through the hackathon.\n\nThe largest benefit of having a well-documented piece of software at the end of the hackathon is that it will be much easier for your team to continue to contribute to the project after the event is over.\nThe last phase of getting a project into a production ready state takes the most time and effort, but luckily you've already documented your scoping process and pathway to getting there! 😉\n\n## Find your style of leadership\n\nGiven this was my first hackathon as a project lead, I found it very beneficial to be operating as an overseer of the project, rather than taking a deep dive into the code.\n\nI felt much more able to keep track of the project as a whole and could more easily identify if everyone's skills were being utilised on appropriate tasks.\nI also found it much easier to mentally switch gears if a team member asked for help or input because I didn't have to disentangle myself from a coding mindset.\n\nHackathons can also turn GitHub repositories into a the Wild West of version control 🤠 - so it's not a bad idea to have someone managing issues and pull requests as new work comes in.\n\nNow just because this leadership style worked for me, that's not to say it's right for you.\nIt may take some time but it's important to test and find a style you're most comfortable with.\n\n## Summary\n\nIn short, I think hackathons put a lot of emphasis on the coding aspect of project development (helped along by the [unfortunate naming convention](https://github.com/hackseq/October_2016/issues/24), check out the last paragraph of the [Bio-IT Hackathon blog](https://grp-bio-it.embl-community.io/blogs/posts/2019-08-29-hackathon-report/)), but this is not the sole pillar on which a good project stands.\n\nSo my advice to you if you feel nervous about leading a hackathon project is: break the mould.\nYour project doesn't have to follow the rules of a typical hack event!\nWork on and in whatever manner is most suited to your teammates and the task at hand.\nAnd most importantly, _have fun!_\n\nHappy hacking! (Or not!)\n\n_The following blog post was written by The Turing Way contributor [Sarah Gibson](https://www.turing.ac.uk/people/researchers/sarah-gibson). To read a longer version of this blog, please see the [original post on Medium](https://blog.jupyter.org/diving-into-leadership-to-build-push-button-code-df2a075c9914)._\n"
  },
  {
    "path": "book/website/collaboration/leadership.md",
    "content": "(cl-leadership)=\n# Open Leadership in Data Science\n\n## Overview\n\nEvery team, every project and every collaboration has people who participate in a way that inspires others in the team to join efforts and accomplish shared goals together.\nThese people take initiative, guide others, ensure that diverse perspectives are involved, and that everyone has the right opportunity to build on each others skills and expertise.\n\nThis is called leadership and these people are leaders.\nSpecifically, in the context of open source/science and community projects, we call this phenomenon 'Open Leadership'.\nThis is also applicable to data science, research communities, and collaborations more broadly.\n\nIn formal terms, leadership is defined as **specific skills** \"encompassing the ability of **an individual or organisation to lead** or guide other individuals, teams, or entire organisations.\" (source: [Wikipedia](https://en.wikipedia.org/wiki/Leadership)).\nOpen leaders might not necessarily be the same people who have formal authority or the title of institutional leaders.\nNonetheless, open leaders work towards facilitating an environment that empowers others to collaborate equitably, identify shared challenges, develop shared goals, and address them with a shared sense of agency.\nIn the long term, their work contributes to the success of projects, and institutional goals and hence should be rewarded with formal titles, recognitions, and positive culture change.\n\n## Open Leadership Framework\n\n*The Turing Way* embodies Open Leadership and has its origin in Mozilla's Open Leadership Framework.\n\n```{note}\nMozilla's Open Leadership Framework describes open leadership as \"a set of principles, practices, and skills people can use to mobilise their communities to solve shared problems and achieve shared goals\" (See [Mozilla Open Leadership framework](https://mozilla.github.io/open-leadership-framework/framework/#open-leadership-framework)).\n\n[The Open Organisation Resources](https://theopenorganization.org/definition/open-leadership-definition/) defines open leadership as a mindset and behaviors that anyone can learn and practice.  \nTheir roles may not be permanent or predestined but emerge as needed for the task at hand. \nOpen leaders uphold transparency, inclusivity, adaptability, collaboration, and community.\n```\n\nThe Open Leadership Framework states that leadership is about involving members and mobilising communities to solve problems and achieve goals that are beneficial for everyone. \n\nIndividuals who lead their work (project, organisation, communication, resources) openly design different aspects of their work to promote openness and social good throughout their work life cycle.\n\nThe key principles of openness are: **design**, **build**, and **empower** for **understanding**, **sharing**, and **participation and inclusion**.\n\n-   **Design:** You plan projects for contributors and users’ specific needs and capacities.\n-   **Build:** You create systems and solutions that maximize a project’s clarity, usability, and inclusiveness.\n-   **Empower:** You help contributors own the work through transparency, accountability, and shared decision-making.\n\nThe emphasis is on ensuring that the members of an open project understand the project so well that the project can run without leaders because all the members are empowered to take on leadership tasks.\n\n_The Turing Way_ is built upon Open Leadership principles, which involve and support its members to apply these principles when developing content for its book or supporting its community.\n\n## Understanding Leadership in Data Science\n\nData science is **broadly and inclusively** considered as study of data to draw meaningful insights, contribute to the technological advances and benefit society by informing decisions across all sectors.\n\n```{figure} ../../figures/leadership-wordcloud.jpg\n---\nwidth: 500px\nname: leadership-wordcloud\nalt: Word cloud of terms related to leadership, where the size of each word reflects its frequency or emphasis. Central and most prominent words include “leadership,” “group,” “relationship,” “organization,” “goal,” “followers,” and “traits.” Other notable terms include “leadership style,” “team,” “self,” “emotional intelligence,” “task,” and “assertiveness.” A mix of concepts appear, ranging from theories like “contingency theory” and “trait theory” to contextual terms such as “women,” “employees,” and “informal organization.” The words are displayed in varying shades of blue and orange.\n---\nWords that stand out in a word cloud from [the Wikipedia entry](https://en.wikipedia.org/wiki/Leadership) about leadership.\n```\n\nTheoretical frameworks from business schools, executive training and resources often explain, define, or assess leadership skills as traits such as \"popularity, power, showmanship, or wisdom\" which are not the essence of leadership ([Harvard Business Review](https://hbr.org/2004/01/understanding-leadership)).\nThere is no such thing as a fixed set of leadership skills and not all great leaders have the same traits, strengths or [leadership styles](https://www.skillsyouneed.com/lead/leadership-styles.html).\n\nIn the context of data science, where we strive to advance our knowledge through validated scientific methods based on data, talking about leadership, essentially a nuanced and fuzzy concept, is challenging to define.\nIn data science and research, discussions and upskilling in leadership are extremely important as:\n* Researchers and data scientists constantly navigate fast-changing demands of 'innovative' approaches in technological development.\n* They manage and coordinate collaborations with their peers as well as external stakeholders across multiple disciplines. \n* Leadership is one of the toughest non-technical skills to learn without guidance.\n* Leadership is rarely discussed openly in research environments, despite being everywhere.\n* (Open) Leadership is one of the keys to healthy and inclusive communities that we are striving to build in data science.\n\nIn this chapter, we explore different aspects of (open) leadership skills that are applicable in the data science and research contexts. \nAfter all, \"technical skills are just one aspect of making data science research open, reproducible, inclusive and ethical for all\" (as stated in the [Welcome page of The Turing Way](https://book.the-turing-way.org/)).\n\nWe hope that by discussing leadership here, we will:\n* Spotlight on important points that everyone in research should know\n* Inspire those who think leadership is not for them to review their assumptions (and maybe see themselves with abilities to lead a project).\n* Ignite reflection and spark conversations about the leaderships we want to promote in data science.\n* Evaluate if leadership in our workplace or communities are healthy, compassionate, and inclusive, and how we can improve it.\n\nIn this chapter, we will introduce and discuss: \n- {ref}`important features<cl-leadership-features>` of leadership when experiencing and exercising them in data science,\n- what we mean by {ref}`\"healthy\" leadership<cl-leadership-building>`, how we can build open and healthy leadership approaches and what they should avoid/address,\n- how we can create {ref}`leadership opportunities <cl-leadership-opportunities>` in our projects,\n- finally, our community members provide examples of open leadership from their own professions and experiences.\nWe invite you, the diverse group of leaders in *The Turing Way* (readers, users, contributors, and community members) to provide more examples from your contexts in this chapter.\n"
  },
  {
    "path": "book/website/collaboration/maintain-review/maintain-review-maintenance.md",
    "content": "(cl-maintain-review-maintenance)=\n# Project Maintenance\n\nAn open source project allows many people to make contributions in the form of [issues](https://help.github.com/en/github/managing-your-work-on-github/about-issues) and [pull requests](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/about-pull-requests).\nCommunity members can also perform [reviews](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/about-pull-request-reviews) and provide feedback [comments](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/commenting-on-a-pull-request) on the ideas and changes which they or others have suggested.\nThese ideas and discussions lead to a better quality of resources that are developed collaboratively and bring new perspectives regarding a particular feature.\nSuch a review process is a common practice in small tech companies or start-ups where different teams work together to develop high-quality production level code or resources.\nThe major role of a maintainer is to provide support with keeping the existing code updated by keeping track of new contributions.\nWhenever a new feature is added or a new idea is proposed in a project, the corresponding changes must be made in relevant resources in the project and the documentation.\nIt requires [opening](https://help.github.com/en/github/managing-your-work-on-github/creating-an-issue),[deleting](https://help.github.com/en/github/managing-your-work-on-github/deleting-an-issue) and [linking](https://help.github.com/en/github/managing-your-work-on-github/linking-a-pull-request-to-an-issue) important issues, [reviewing](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/reviewing-proposed-changes-in-a-pull-request), [labelling](https://help.github.com/en/github/managing-your-work-on-github/labeling-issues-and-pull-requests), [changing the stages](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/changing-the-stage-of-a-pull-request), [merging](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/merging-a-pull-request) and [closing](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/closing-a-pull-request) important pull requests.\nA common understanding of version control systems, [Markdown](https://guides.github.com/features/mastering-markdown/) and open source [workflow](https://guides.github.com/introduction/flow/) helps to a great extent in carrying out all these tasks.\n"
  },
  {
    "path": "book/website/collaboration/maintain-review/maintain-review-merge.md",
    "content": "(cl-maintain-review-merging)=\n# Merging Contributions\nPull requests made by contributors can be approved or merged by maintainers after the review.\nThere are different ways of merging a pull request:\n- *Merge pull request*: Merges all commits to base branch.\nIt keeps all commits made in the PR as separate and merges them as they are, through a single merge commit to the base branch.\n- *Squash and merge*: Squashes all commits created in the pull request into one commit and merges them as a single commit (with the help of a merge commit) to the base branch (see this [blog for details](https://github.blog/2016-04-01-squash-your-commits/)).\n- *Rebase and merge*: Rebases all commits individually to base branch (integrating changes from one branch to other) before merging.\nIn the prompt message, the maintainer can provide a merge message along with comments(if any) and then press the “confirm merge” button.\n"
  },
  {
    "path": "book/website/collaboration/maintain-review/maintain-review-permissions.md",
    "content": "(cl-maintain-review-permissions)=\n# Ownership and Permissions\nIn any team or organisation owned project, there are different contributors.\n\nOwners of a project are individuals or teams who generally start a project, or join it at the time of project creation with a defined vision and goals.\nThe owners have the right to give different [levels of permission](https://help.github.com/en/github/setting-up-and-managing-organizations-and-teams/repository-permission-levels-for-an-organization#permission-levels-for-repositories-owned-by-an-organization) to outside contributors.\n\nIn Github, there are five levels of permissions: read, triage, write, maintain, and admin.\n* Readers are non-code contributors who are read the content or join discussions on GitHub issues.\n* With triage permission, contributors can manage issues and pull requests without write access.\n* Write permission allows contributors to push changes to the project.\n* Maintain permission is for project managers but have no access to sensitive or destructive actions (such as project deletion).\n* Admins are people who have full access to the project, including sensitive and destructive actions, and are responsible for granting permission to make other contributors.\n\nThese roles are often defined in a project file such as a [CODEOWNERS file](https://help.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners) or a governance file (for example, {ref}`fw-governance-roles` as an example).\nThese files provide insight into the core project team and members responsible for maintenance roles in the project.\n\nIn this chapter, anyone with triage, write and maintain permission is referred to as maintainers.\nMaintainers are involved with creating issues and pull requests whenever required.\nThey keep the codebase or project updated and help in reviewing contributions.\nThey can often approve and merge pull requests.\nThey can also request reviews from someone else.\n\n*For more information on permission level, please see this [documentation on GitHub](https://help.github.com/en/github/setting-up-and-managing-organizations-and-teams/repository-permission-levels-for-an-organization).*\n"
  },
  {
    "path": "book/website/collaboration/maintain-review/maintain-review-resources.md",
    "content": "(cl-maintain-review-resources)=\n# Resources\n\n* [Community communications for open source](https://book.the-turing-way.org/open-source-comms/intro.html) has some relevant information for getting involved with this community-driven project.\n* [GitHub help](https://help.github.com/en) is a great resource to know about almost everything concerning collaborating on a GitHub project.\n* [Guide to Open Source](https://opensource.guide/) provides guides related to Open Source. Be it maintaining or contributing, most of the topics have been covered in these guides.\n* [An article on using Open source research tools](https://opensource.com/education/15/11/tools-analyze-collaborate-share-research)\n* [A guide on Pull requests](https://www.atlassian.com/blog/git/written-unwritten-guide-pull-requests)\n* [How to guide to workflows](https://www.atlassian.com/git/tutorials/comparing-workflows)\n* [A Blog on Open source and academia](https://opensource.com/article/19/9/how-open-source-academic-work)\n"
  },
  {
    "path": "book/website/collaboration/maintain-review/maintain-review-review.md",
    "content": "(cl-maintain-review-reviewing)=\n# Reviewing Contributions\n\n## Reviewing process\nIn a project or codebase, a set of changes must be reviewed before merging it to the main repository.\nIf the project is co-owned by many people, the review process handled by [code review assignment](https://help.github.com/en/github/setting-up-and-managing-organizations-and-teams/managing-code-review-assignment-for-your-team) in which certain members of the team are assigned this task.\nReviewers are often automatically suggested on GitHub pull requests based on a similar activity by other members on the same or different files in the project.\nHowever, often a project manager requests other maintainers for the review of a particular pull request based on their availability, willingness, or expertise.\n\nThe assigned or willing maintainers can review the pull request by checking the [changes locally](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/checking-out-pull-requests-locally) or on the online repository and suggest changes required.\nWhen the review process is completed, the reviews can be approved without any change, or [with required changes](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/approving-a-pull-request-with-required-reviews) or [dismissed](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/dismissing-a-pull-request-review) according to the quality of the contribution.\n\n## Guidelines for Review Process and Maintenance\nFor project collaboration on GitHub, it is important to follow a defined guideline with best practices for maintaining a particular project.\nThe maintenance process can be executed smoothly with the help of the following:\n\n1. *Documenting the process*: A comprehensive documentation on how contributors can get started with the project and how they can make meaningful contributions is the first step to be taken while maintaining an open source project.\nThese details should throw light on what the project is all about, why was it created in the first place, who maintains the project, what the community culture looks like, and who can provide guidance to new contributors.\n\nThese three documents are a good start towards building these documents:\n- A project should contain a {ref}`README.md file<pd-project-repo-readme>` that provides the important details and links to resources that one must know to become a member of the project.\n- A Code of Conduct (see _The Turing Way_ [Code of Conduct](https://github.com/the-turing-way/the-turing-way/blob/main/CODE_OF_CONDUCT.md)) must be provided in every project to establish that a welcoming and safe environment for community members while collaborating.\n- A well-written contribution guideline (see _The Turing Way_ [Contributing file](#ch-contributing)) is extremely important when the collaboration is done remotely on any project to ensure clear communication between contributors and maintainers.\n\n2. *Effective communication*: The conversations regarding any contribution can be made public for others to join for a discussion while working on small features and ideas.\nThis will involve more people and ensure transparency in open source work.\nIt is important to write messages and comments on the issue and pull requests, in a clear and easy to understand manner while doing a review to help the contributors in understanding the requirements so that they can make better commits to their pull requests.\nIt is better to mention important links in the messages if required.\n\n3. *Mentored contributions*: The maintainer's role is to make the contribution a process as easy as possible.\nOpen source contributions can be intimidating for a lot of new contributors.\nGuiding people by making friendly and encouraging conversations can make the onboarding process for new contributors comfortable.\nIt is better to create descriptive issues to resolve.\nFor significant contributions to be made, it is better to create different issues before resolving them with pull requests.\nLabeling issues and pull requests will help in getting more contributors involved in various tasks with different skill requirements.\nLabeling seemingly easy issues as [\"good first issue\"](https://help.github.com/en/github/building-a-strong-community/encouraging-helpful-contributions-to-your-project-with-labels) will help new contributors to pick up easy tasks like minor changes in code and content, bug and typo fixes and small design issues.\n\n4. *Maintaining the pull requests*: The maintenance of already existing pull requests on a project involves labeling them, reviewing them, changing their stages, merging and closing them.\nMaintenance of pull requests can be done by giving the right review at the right time.\nOn GitHub there are various ways to provide feedback while reviewing such as by giving feedback as a comment on the pull request, suggesting changes while reviewing, directly proposing changes in the branch of the contributors or discussing on the pull request how the contributions can be improved (see this [GitHub post for details](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/about-pull-request-reviews)).\nMaintainers may communicate a timescale within which they review and merge pull requests for an active project, for example, one week.\nThe labels can be changed over time and phases to correctly reflect the status of a feature under development.\n\n5. *Acknowledging other's work and respecting time*: Welcoming people who contribute to a project is one of the keys to make a collaborative project a success.\nWhenever a meaningful contribution is made and a PR is merged, maintainers should acknowledge it.\nA small message saying \"Thank you\" is often enough, especially for newbies in open source spaces.\nIt is always a good gesture to give credit to contributors in open source by adding them to the contributor's list.\nThe best way to do that is to create a dedicated file where all the contributors are mentioned with their contributions made in the projects.\nIf the project contributors are based in different parts of the world, the maintainers should be respectful towards their time and schedule work accordingly.\nIn case someone is not able to discuss ideas because of their schedule, maintainers and contributors should try to cooperate as much as possible.\nIt is also a good practice to actively ask contributors who are very busy to take a break and come back later or involve others from the community to keep track of their ongoing contributions.\n"
  },
  {
    "path": "book/website/collaboration/maintain-review.md",
    "content": "(cl-maintain-review)=\n# Maintainers and Reviewers on GitHub\n\n## Prerequisites\n\n| Prerequisite | Importance |\n| -------------|----------|\n| {ref}`Experience with version control<rr-vcs>` | Helpful |\n\n## Summary\nFor any open source project, one of the most challenging tasks for a new contributor is to identify ways to get involved by making online contributions to propose appropriate changes.\nContribution guidelines of open source projects outline how community members can make such a contribution, but they often do not explain how one can contribute to the project by becoming a project maintainer.\nDedicated project maintainers from the project's core team or volunteer community often take up the role of supporting such contributions by other contributors.\n\n```{figure} ../../figures/governance-maintainers-without-text-only.*\n---\nheight: 500px\nname: governance-maintainers\nalt: Scriberia illustration showing the role of maintainers in open source projects. A tree represents the project, and the people taking care of the three are the maintainers. \n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n``` \n\nThis subchapter sheds light on the role and tasks of such project maintainers who manage or coordinate community discussions, mentor contributions, support resource development, help in issue triaging, and review Pull Requests or PRs on an online collaborative GitHub project.\nIt also provides the best practices to be used while contributing to a project as a maintainer.\n\n### This subchapter covers:\n\nThis chapter will be particularly useful for the community members who want to provide support in maintenance and review work in _The Turing Way_  repository and or similar projects online.\n\nThe Git workflow is difficult to understand, especially when collaborating with a group of contributors for a project.\nHence, this chapter aims to guide the review processes so that all the contributions made on a GitHub project are regularly and properly done.\n\n### This subchapter does not cover:\n\nPlease note that it is not a \"how-to\" guide to how to make contributions but lists the major responsibilities of a project maintainer and how these responsibilities should ideally be carried out when working in online and collaborative projects.\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/chairing.md",
    "content": "(cl-mec-chairing)=\n# Chairing Events\n\nTo run an event smoothly, part of planning and preparation is to delegate tasks of leading and chairing different sessions of an event to different individuals.\nThe main duties of a chair are to moderate their session by introducing speakers and keep their sessions as planned - within the time limit by keeping their session on the topic, avoid distractors and help address any challenges that may appear.\nHowever, their roles may include other tasks depending on the purpose of the event, attendees, format and so on.\n\nIn this subchapter, we provide guidelines for the chairs of different types of sessions, which can be adapted and built upon by the event organisers and chairs to prepare ahead of time.\nThough we assume 'virtual first' approach for inclusive collaborations, these recommendations can be used for remote or in-person meetings as well with minor changes to adapt to a physical location or meeting formats.\n\n## Talks and presentations\n*Checklist for the chair of the designated talk*\n\n- Coordinate with the organisers regarding the schedule, exact responsibilities and other people involved in the event they'll chair.\n- Coordinate with a designated note-taker, or be ready to assign one at the beginning of the event.\n- Create a template document for sharing information and taking notes during the session either for individual or shared documentation purpose.\n- Share the link to the notes or shared document with all the attendees before the events.\n- Remind everyone of the Code of the Conduct contact person in case something needs to be reported.\n- Introduce the speaker and note-takers (and sign language interpreter if available).\n- Remind everyone if the video will be recorded.\n- When on video calls, you can ask attendees to keep their camera on whenever possible - but don't make it mandatory for several reasons, but primarily to avoid internet issues for people in low bandwidth areas.\n- Let the speakers know how you would indicate if the speakers should speed up or slow down, or if there is a technical issue that the speaker should check.\n- Help answer procedural questions in advanced by creating a frequently asked question list.\n- Direct any technical questions to the organiser when needed.\n- If there is an assigned note-taker, remind them to take notes to capture main points from the talk.\n- With note-takers, gather questions for the open discussion. This can be done on a document or by using interactive tools like [sli.do](https://www.sli.do/).\n- Ask people to add '+1' or 'thumbs-up' next to the points that they like or agree with.\n- Verbalise some of the popular insights, opinion and thoughts.\n- Close session in time by thanking the speakers and note-takers.\n- Take a moment to thank the speakers for their talks.\n\n## Short workshops, up-skilling or discussion sessions\n\n*Checklist for the session lead, helpers and note-takers of the designated session*\n- Share the link to the shared document.\n- Remind of the Code of the Conduct contact person in case something needs to be reported.\n- Introduce the helpers and note-takers (and sign language interpreter if available).\n- If recording the call, make sure to tell the participants before you hit the record button.\n- Allow them to turn off their video when recording.\n- To allow participation with the video on, don't record general discussions.\n- Help notetakers in documenting important outcomes from every discussion.\n- Encourage everyone to help the notetaker in documenting correct information.\n- With helpers and note-takers, gather questions, opinion and response, on the shared document for the open discussion.\n- Ask people to add '+1' next to the points that they like or agree with.\n- Verbalise some of the popular insights, opinion and thoughts.\n- Take note of any technical issue that the speaker or others come across and help troubleshoot them.\n- Help answer procedural questions like “where is this button that I should click”.\n- Direct technical questions to the organiser when needed.\n  - This can be done on a document or by using interactive tools like sli.do.\n- Create breakout rooms  whenever possible to ensure that people can connect while discussing mutually useful question or issues.\n- Facilitate fair discussion, don’t fixate on one argument.\n- In the last part of the session, take some time to collect feedback from the participants.\n- Ask people to volunteer to write short blogs about their experience.\n- Close their sessions in time by thanking the speakers and note-takers.\n- Take a moment to celebrate the session and everyone involved in running it.\n\n## Lightning talks\n\n*Checklist for the designated chair of these sessions*\n\n- Share the link of the shared notes for the session along with the link to the pre-recorded lightning talks (see details in the subchapter on {ref}`organising conference<cl-mec-organising-conferences>`).\n- Ask presenters who are attending the session to write down their names so that other attendees can ask questions specific to their talks.\n- Allow enough time for everyone to check out multiple Lightning Talks.\n- Run an open question and answer period where anyone can ask questions to any presenters; remind everyone to keep their questions and responses short.\n  - Use a shared document or Slido for taking questions.\n- Keep the format informal and allow flexibility for participation.\n- Finish the session by thanking all the participants, and ask everyone to leave encouraging words, gifs or emojis to celebrate the session and presenters' work.\n- If the feedback for the session is available, use the last few minutes to gather those from the participants.\n\n## Poster sessions\n\n*Checklist for the designated chair of these sessions*\n\n- Share the link of the shared notes for the session along with the link to the gallery where the posters can be browsed (see details in {ref}`organising conference<cl-mec-organising-conferences>`).\n  - If short pre-recorded lightning talks on the posters are available, allow time to watch a few videos.\n- Ask presenters who are attending the session to write down their names so that other attendees can ask questions specific to their talks.\n- Allow enough time for everyone to ask questions on the shared document, dedicated channel (Slack or sli.do) for poster discussions.\n- Keep an eye on the document to see if everything is going well.\n- Remind everyone of the time at regular intervals.\n- At the end, run an open question and answer session where anyone can ask a question to any presenters in that session. Remind everyone to keep their questions and responses short.\n  - Use shared documents or [Slido](https://www.sli.do/) for taking questions.\n- Keep the format informal and allow flexibility for participation.\n- Finish the session by thanking all the participants, and ask everyone to leave nice words, gif or emoji to celebrate the session and presenters' work.\n- If the feedback for the session is available, use the last few minutes to gather that from the participants.\n\n## Social events\n\n*Checklist for the session lead, helpers and note-takers of the designated session*\n- Host loosely themed social events so that the participants know what to expect, most importantly keep the theme and format informal.\n- Keep these sessions longer than what they would be in an in-person event, for example, 2 hours lunch instead of 1 hour.\n- Don't keep these sessions too late in the day, remember that your attendees may not want to spend extra hours for a variety of reasons.\n- Open the the event location at least 15 minutes before the actual event starts, and keep the call running for 5-15 minutes after the main event is over.\n- Share the collaborative notes with an agenda or a plan, links to join the call from the session or a social event chat system (for example, Slack) - an agenda will help attendees to be prepared of what to expect at the event.\n- Start with an informal ice breaker - allow everyone to introduce themselves to everyone on the call.\n- Follow participation-based format, such as \"show and tell\" in the session format as much as possible.\n- Host social games that are not too hard to explain and can be played by multiple people.\n- When organising for virtual participants, parallel activities such as online treasure hunt, virtual museum or movie viewing can be organised.\n- Conference dinners or social meals can be organised for small groups by different hosts in multiple locations.\n- For online events, perhaps a care package with ingredients can be sent out before the conference to host a cooking and dining session, or provide a budget so participants can order their favourite meal.\n\n## Handling breakout rooms\n\n*If using breakout rooms in Zoom (or similar tool), make sure that the organiser helps you create Groups*\n\n- Create groups that are more diverse (they will have a better discussion).\n- Remind everyone to give others a fair chance to speak.\n- Ask them to write notes from their discussion in the shared document.\n- Send messages periodically reminding everyone of how much time for discussion is left.\n  - Remind them to move on to the next person if only one person has spoken so far in their Groups.\n- When people come back from their breakout rooms, ask them to share main points from their discussion.\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/event-tools.md",
    "content": "(cl-mec-event-tools)=\n# Tools for Collaboration\n\nMany free and commercial tools exist to improve people's experience of planning, organising, and hosting online and hybrid collaborations with teams or at events.\nFor effective collaboration, it is important to choose tools that can maximise the overall success and reduce the risk of things going wrong during the event.\nWe should also consider how user-friendly they are and how they impact the engagement of different stakeholders such as organisers, helpers and attendees.\n\nHere is a list of some popular tools for facilitating different aspects of collaboration discussed in the other chapters.\nPlease note that we are not a listing conference or webinar-related tools, but only providing those tools that facilitate interactive (hence, collaborative) formats.\nThough we assume 'virtual first' approach for inclusive events, these recommendations can be used for remote or in-person meetings as well with minor changes to adapt to a physical location.\nIf you are looking for more information on how to facilitate collaboration within a research team, see the {ref}`team manual<cl-team-manual>`.\n\n## Task management tools\n\nEvery collaboration or event has several stages of planning and organising that involve numerous tasks as discussed in the Guide for Collaboration.\nTherefore, it is important to track those tasks in an online task or event management tool, where the responsible individuals can see their to-dos and deadlines, and collaborate with others.\n\n- [Trello](https://trello.com/): online kanban like tools to assign tasks and checklists to individual users and monitor their progress.\n- [Asana](https://asana.com/): online kanban tool that can be used for creating different teams create tasks, set deadlines and send reminders.\n- [Jira](https://www.atlassian.com/software/jira): useful for large event teams to help them track tasks before, during, and after the event.\n- [GitHub project board](https://github.com/features/project-management/): every repository on GitHub can have a project board where tasks can be issues and Pull Requests that can be coordinated, tracked, and updated transparently by all contributors.\n- [notion.so](https://www.notion.so/): This is a high-level project management tool that allows storing reports, creating documents and integrate different tools.\n\n## Finding a common availability\n\nMeeting scheduling platforms help find a common availability without having to check multiple times with all the intended participants.\n\nSome commonly used options are [Doodle](https://doodle.com/poll/) and [when2meet.com](https://www.when2meet.com/).\nSee more options [here](https://zapier.com/blog/best-meeting-scheduler-apps/).\n\nIt is particularly crucial to use meeting links like [arewemeetingyet](https://arewemeetingyet.com/#form) or [create/send calendar invitations](https://www.calendar.com/blog/how-to-send-a-google-calendar-invite/) to communicate these schedules to invitees from different countries and time zones.\n\n## Creating shared notes\n\nA document that can be edited collaboratively in real-time allows all attendees to participate equitably during the meeting or online call.\nThis is especially important for creating an opportunity for those who can not (or do not feel comfortable to) actively speak up in group meetings, especially for hybrid formats.\n\n- [Google docs](https://en.wikipedia.org/wiki/Google_Docs): Google Docs is a word processor included as part of a free, web-based Google Docs suite offered by Google within its Google Workspace service.\n- [Etherpad](https://etherpad.org/): Etherpad is an Open Source customisable online editor.\n- [HackMD](https://hackmd.io/): HackMD is an online collaborative document that can be written in {term}`Markdown` format.\n- [HedgeDoc (previously CodiMD)](https://demo.hedgedoc.org/): HedgeDoc is the community-driven fork of CodiMD, which is the open source version of HackMD.\n\n## Maintaining shared notes\n\nIt is important to create shared notes, but also to save them to share with others and to make them available to refer back to later.\n\n- [Google Drive](https://en.wikipedia.org/wiki/Google_Drive): Google Drive is a file storage and synchronization service developed by Google.\n- [DropBox](https://www.dropbox.com/): Dropbox is a widely used file hosting service.\n- [owncloud](https://owncloud.com/): ownCloud is a suite of client-server software for creating and using file hosting services. ownCloud functionally has similarities to Dropbox.\n- [GitHub](https://github.com/), [GitLab](https://about.gitlab.com/free-trial/) and [BitBucket](https://bitbucket.org/product): Platforms for hosting, sharing and collaborating on documents and software with a version control system (see [this post for detail/difference](https://stackshare.io/stackups/bitbucket-vs-github-vs-gitlab)).\n- [Proton Drive](https://proton.me/drive): Proton Drive is a secure cloud storage platform for sharing notes and other important documents. \n\n## Managing participant confirmations\n\nOften online calendars sent out to all invitees allows them to accept, decline or tentatively indicate to organisers if they can attend a meeting or an event.\nIt's especially important when the events are intended for a large group of people.\n\nOther way for formal registrations can be set up to collect centralised statistics or data regarding the participants' availability, as well as if they have specific requirements such as related to meals, accessibility, travel requirements or accommodations if the event is taking place online:\n- [Zoom](https://support.zoom.us/hc/en-us/articles/204619915-Scheduling-a-Webinar-with-Registration): Zoom provides an automatic brief form before receiving the link to join your webinar.\n- [Eventbrite](https://www.eventbrite.com/): An event management and ticketing website that allows use of standard forms with customised questions that organisers might need to know about their attendees. The service charges a fee to event organizers in exchange for the online ticketing services, unless the event is free.\n- [Google Form](https://en.wikipedia.org/wiki/Google_Forms): Google Forms is a survey administration software that allows registration/data collection that can be automatically entered into a spreadsheet.\n\n## Hosting online calls\n\nVideo conferencing is probably the most important aspect of organising and hosting an online event.\nAn effective software allows the creation of a meeting link or dial-in number that can be shared with others who can join scheduled or in-progress calls.\n\n- [Zoom](https://zoom.us): Zoom is a cloud-based video conferencing service that can be attended either by video or audio-only or both, with live chats that can be recorded to view/share.\n- [Google Meet](https://en.wikipedia.org/wiki/Google_Meet): Google Meet is a communications platform that facilitates messaging and video chatting.\n- [Skype](https://www.skype.com/en/): Skype is a telecommunications application that specializes in providing video chat and voice calls.\n- [Jisti](https://meet.jit.si/): Jitsi is a collection of free and open-source multiplatform voice, videoconferencing and instant messaging applications for the web platform.\n- [Webex](https://www.webex.com/): Cisco Webex develops and sells web conferencing and videoconferencing applications.\n\n## Facilitating informal interactions\n\nA communication platform and chat system is a good way to connect all the attendees before, during and after the event.\n- [Slack](https://slack.com/): Slack offers real-time chat features, including persistent chat rooms organized by topic, private groups, and direct messaging.\n- [Gitter](https://gitter.im/): Gitter is a chat and networking platform for messaging for communities.\n- Web-based or phone applications like WhatsApp and telegram ([see more](https://www.makeuseof.com/tag/messaging-apps-phone-computer/)).\n\n## Web-based timers\n\nAn online timer that can be created on a web-browser and shared with a distributed team to have more productive meeting formats.\n- [cuckoo.team](https://cuckoo.team/)\n- [vclock](https://vclock.com/timer/)\n\n## Online polling\n\nEvent Polling tools can be used for asking questions and receiving feedback from attendees in real-time.\nThey create an interactive experience for the participants through question and answer (Q&A) sessions during the event.\nA dedicated link can be created for each event to share with the participants who can post their questions to be discussed in the meeting or respond to polls set by the speakers or organisers before the event.\nSuch tools not only collect answers but also analyse, summarise and visualise them as word clouds and plots in real-time that can be shared with everyone.\nTwo commonly used tools are:\n\n- [sli.do](https://www.sli.do/)\n- [mentimeter](https://www.mentimeter.com/)\n\nRead more about event polling in [this post](https://www.encore-anzpac.com/event-services/live-polling-for-events) and find more apps with feature analysis in [this post](https://www.worksup.com/event-interaction-app-feature-comparison/).\n\n## Pre- and post-event surveys\n\nPre-event surveys can be used for managing day-to-day work with the organisers, inviting ideas and suggestions from different stakeholders of the event and setting expectations by communicating about your event beforehand with everyone.\nPost-event surveys are used for gathering feedback from everyone regarding their experience from past events and suggestions to improve future events.\n\n- [Google Form](https://en.wikipedia.org/wiki/Google_Forms): Google Forms is a survey administration software that allows data collection that can be automatically entered into a spreadsheet.\n- [Survey Monkey](https://www.surveymonkey.com/): This is one of the most popular tool, available with limited features (10 questions and 100 respondents for free) and provides many features including templates for the paid version.\n- [Typeform](https://www.typeform.com/surveys/): Allows developing surveys in a more creative manner. The free version can be used only for a small group.\n\n***Chapter Tags**: This chapter is curated for the `Turing Data Study Group` (`turing-dsg`).*\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/hybrid-collab/hybrid-collab-challenges.md",
    "content": "(cl-mec-hybrid-collab-challenges)=\n# Challenges faced during Hybrid Collaboration\n\nCollaborating in a hybrid setting presents a key challenge of establishing a consistent experience and equal level of inclusion for both online and in-person participants. \nThis means overcoming the hurdle of bridging the gap between in-person and virtual interactions. \nAchieving this balance between online and in-person participants is crucial for fostering effective teamwork and maximizing productivity in a hybrid environment.\nSome of the challenges faced in hybrid settings are highlighted in this chapter.\n\n## Social networking in hybrid settings\n\nBuilding and maintaining a local network becomes more challenging in a hybrid work setting due to limited natural social interactions and a systematic imbalance between in-person and online groups. \nIt can also be a challenge for the in-person participants to simultaneously manage interactions with people online and people in the same in-person setting.\n\n## Communication tools used for hybrid environments\n\nA mix of synchronous and asynchronous communication tools are used for hybrid environments.\nSynchronous communication tools enable real-time interactions where participants communicate simultaneously via video and voice calls or live messaging and are helpful for immediate feedback and dynamic discussions.\nAsynchronous communication tools enable interactions where responses do not occur in real time, allowing participants to engage at their convenience. \nTools for asynchronous communication include traditional methods like emails and collaborative software platforms  like forums other other messaging platforms where updates and messages can be posted and responded to over time.\n\nThe variety of communication tools used in hybrid work presents challenges for inclusiveness, especially when using asynchronous communication tools.\nPoorly organised hybrid events can isolate online participants, and incorporating communication tools into hybrid collaboration can be complex.\nHybrid meetings require different etiquette, and unequal access to communication tools may exclude some individuals, especially those at early career stages who might still be exploring navigating such spaces.\n\n## Lack of space to focus and be attentive\n\nThere are disparities in facilities and services between in-person and online settings.\nDistraction comes easily with an online setup.\nWhen online, individuals may encounter higher levels of noise and distractions due to personal responsibilities that are not immediately apparent, such as caring for children or elderly family members. \nIn addition to the communication challenges discussed earlier, individuals may not be aware of the support resources available and may struggle to ask questions or access the necessary assistance.\nThis is particularly problematic for individuals with caregiving responsibilities who may need a quieter space to participate in remote conferences, workshops, trainings, and events. \nIn essence, the lack of essential facilities and support needed to participate attentively can discourage online participants from attending the event remotely.\n\n## Coordination and scheduling\n\nThere are also challenges in coordination and scheduling, especially across timezones.\nAn important concern is finding common times for synchronous hybrid meetings among participants in different timezones.\nPersonal schedules and commitments further complicate this coordination.\nWhile asynchronous communication helps manage these differences by allowing participants to contribute at their convenience, it requires careful planning to ensure that all team members can participate effectively without feeling overwhelmed or excluded.\nAdditionally, relying on asynchronous communication can impact the immediacy of real-time collaboration, slowing down engagement levels, decision-making processes, and resolving issues, as participants needed for feedback or support are not always immediately available.\n\n## Accessibility in hybrid collaboration\n\nHybrid meetings introduce additional complexity in ensuring that audio, video, and meeting materials are accessible to all participants, whether physically present or attending remotely.\nAudio issues can arise from poor microphone quality, background noise, or inadequate internet bandwidth, while video issues might stem from poor camera placement or low resolution, affecting the accessibility of audio and video for both remote and in-person participants.\nEnsuring that meeting materials are accessible to in-person and remote participants can also be challenging, as physical attendees may not have easy access to digital resources, and online participants may miss out on physical demonstrations.\nAdditionally, there is an added responsibility for accessibility for the organisers, who must select communication tools that provide accessibility features and enable these features.\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/hybrid-collab/hybrid-collab-guidelines.md",
    "content": "(cl-mec-hybrid-collab-guidelines)=\n# Guidelines for Hybrid Collaboration\n\n## Chairing Hybrid Events\n- The Facilitator should take care of either both in-person and online, or there could be a separate online facilitator to make sure that the online audience is not lost.\n- For all sessions, chairs should receive instructions on how to include both types of participants.\n- See [An honest* guide to facilitating hybrid events](https://www.sessionlab.com/blog/hybrid-events-guide) for more information.\n\n## Organising Hybrid Conferences\n\n### Scheduling\n\n- Organising a hybrid event is like organising two events: in-person and online. \n    - It might be easier to handle if you're separating in-person and online (a couple of days in-person and a couple of days online).\n    - If both modes take place simultaneously, it takes different planning, and it is more challenging as you will be running two events simultaneously. \n\n- Online participants might have to join at times that are not core working hours.\nKeep this in mind, especially for interactive parts.\n- If some aspects of the agenda only apply to one participant group, be clear about this.\nFor example, do not schedule a networking session that turns out to be an in-person coffee break without being clear about how you expect online participants to network.\n- Organize multiple sessions or select strategic times to accommodate online participants from different timezones to address possible scheduling challenges.\n\n### Location\n\n- Reserve rooms for break-out interaction with online participants.\n- For in-person attendees, it might take some time to physically move to other rooms physically, whereas for people online, it might be faster to move to a different breakout room.\nPlease consider such time requirements when switching rooms either physically or virtually. \n- Make sure technical set up is in order: online audience should be able to hear the speaker and questions asked and see the slides. \n    - Check microphones, video and/or slide sharing before.\n    - Make sure everyone in the room uses microphones when speaking.\n    - Ensure speakers introduce and identify themselves otherwise, it can be difficult for remote participants to identify who is talking.\n    - An online facilitator can message on the online platform each time a new person starts speaking (\"Person-A\" is speaking now).\n- Select a space with the facilities needed (internet, proper seating/desk). \n- Ensure that online individuals have the time and space to fully participate (space for focus time, food breaks).\n    - Check if there are free localities available in the areas of online participants (university, libraries) which might also provide good internet connection.\n    - Caring/child support may be needed for people with caretaking responsibilities (applies to both online and in-person participants).\n    - If someone is at their own university/workplace, they may be distracted by their colleagues who do not realise that someone is in an event. In such a case, consider reserving a quiet space in your university/workplace.\n \n### Accessibility of Communication Platforms and Content\n\n- Consider tools that comply with accessibility standards, such as the [Web Content Accessibility Guidelines (WCAG)](https://www.w3.org/TR/WCAG21/) for digital collaboration and communication.   \n- Test and use communication tools that support comprehensive accessibility features like screen readers, voice recognition software, and alternative input devices to plan towards the accessibility needs of participants.\nSee [Web accessibility evaluation tools](https://www.w3.org/WAI/test-evaluate/tools/list/).\n- No tool is perfect.\nPrioritise options for accessibility of digital content, like alternative text for images, transcripts for videos, and documents compatible with screen readers.\nAlso, materials should be offered in multiple formats to make them adaptable to the accessibility needs of participants.\n- Host pre-event orientation sessions to familiarise all participants with the technology and accessibility features available during the hybrid conference.\n\n## Organising Hybrid Meetings\n\n- Plan earlier so that people can block their calendars.\n- Plan on movement (time & space).\n- Plan for what you will do and how you will communicate with attendees if power or internet access is lost for you, your facilitators, or your attendees.\n- Consider recommendations in [holding accessible hybrid meetings](https://raw.githack.com/w3c/apa/9c9109f52551b42e27f77a61b30415602df39565/remote-meetings/index.html#holding-accessible-hybrid-meetings).\n\n### Ways to Reduce Distractions\n\n- Support online participants in booking co-working spaces near their location that are equipped with necessary basic facilities such as internet, electricity, and work desks.\n- Share comprehensive information about the available facilities and support resources and provide guidance on accessing them through facilitation documents.\n- Encourage speakers and attendees who are engaging online to blur their background and to limit background noise as much as possible.\n\n### Communication Tools for Hybrid Collaboration\n\n- Carefully select tools and technologies considering inclusivity and the impact on teams.\n- Avoid imposing unsuitable platforms on teams and be open to new options and tools.\n- Ensure virtual meetings can accommodate more participants.\n- Follow up with remote attendees after hybrid meetings to address their needs.\n- Set up and use a good quality microphone system for all the in-person groups so that those joining remotely can clearly hear speakers.\n- Support shared note-taking documents and/ or facilitation guides for in-person and remote groups to ensure both groups are included.\n- Establish a platform for asynchronous side chat to facilitate communication.\n- Ensure equal availability and access for both in-person and remote attendees in hybrid events.\n\n### Social Networking during Hybrid Collaboration\n\n- Recognise and address asymmetries in in-person and online settings to establish realistic expectations.\n- Create opportunities for social interactions both online and in-person to balance out the challenges.\n- Foster a positive atmosphere in-person and encourage an informal approach online to facilitate idea exchanges and connections.\n\n### Personnel and Staffing Planning\n\nDepending on your event or meeting, you may need to consider providing support for session facilitation, notetaking, and technical support. \nFor hybrid events, you will need both in-person personnel **and** online personnel to support both the online and in-person parts of your event, as it will be incredibly difficult for the same person to act as both an in-person and online facilitator.\n\nBelow are some examples of types of facilitators or contributors that your hybrid event might need to make it a success. \nFor each role, we have included some potential tasks & responsibilities. \n\n#### In-Person Technical Support\n- Ensures that the audio and visual set-up is working.\n- Supports presenters and speakers with presentation set-up and slide transitions.\n- Ensures that any audio or hearing induction loop technology is working and accessible.\n- Opens up polls or other interaction software used during the event.\n- Ensures the event is recorded correctly if you are planning on recording and sharing the session content.\n\n#### In-Person Facilitator\n- Ensures that attendees and any speakers are able to engage in the session using microphones or other audio equipment.\n- Works with a speaker or panellists to answer questions from the audience.\n- Ensures that questions taken from the audience represent the diversity of the attendees.\n- Provides the audience with information about any emergency exits or other physical locations of importance during the event.\n\n#### In-Person Notetaker\n- Takes notes during the session and capture the main points of discussion.\n  Depending on your event, this may also involve sending notes or making live notes available to attendees with sensory disabilities. \n\n#### Online Technical Support\n- Supports attendees and facilitators with sound or video focus difficulties.\n- Hosts the online platform and open the session if there is a waiting room.\n- Places attendees on mute if there is loud or distracting background noise.\n- Ensures the event is recorded and streamed with closed captions and transcription software.\n\n#### Online Facilitator\n- Supports the engagement of attendees and moderating conversation.\n- Provides discussion prompts and asks thought-provoking questions.\n- Introduces the meeting and event.\n- Facilitates Q&A and any polls that are used during the session.\n- Removes online attendees if there is any inappropriate behaviour that contravenes the event's Code of Conduct.\n\n#### Online Notetaker\n- Takes notes during the event's sessions and ensures that they are accessible to all attendees.\n- Summarizes information shared by online participants so that it may be communicated to, and shared with, in-person attendees.\n- Shares links in the chat as requested by speakers and the attendees.\n\n\n\n\n\n\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/hybrid-collab/hybrid-collab-resources.md",
    "content": "(cl-mec-hybrid-collab-resources)=\n\n# Useful resources\n\nHere are some useful guides, tips and tutorials on how to facilitate Hybrid collaboration effectively:\n\n## Further Reading\n\n- [How to Plan and Host a Hybrid Event](https://www.virtualtradeshowhosting.com/how-to-organize-a-successful-hybrid-event/)\n- [Best Practices and examples for managers](https://getofficely.com/blog/host-better-hybrid-events-at-work-best-practices-and-examples-for-managers)\n- Recommendations in [holding accessible hybrid meetings](https://raw.githack.com/w3c/apa/9c9109f52551b42e27f77a61b30415602df39565/remote-meetings/index.html#holding-accessible-hybrid-meetings)\n\n<!-- IMPORTANT!\n\n- Use this template to create your chapter's resources section. This is always the last part of your subchapter\n\nBEFORE YOU GO\n\n- Have a look at the Style Guide and the Maintaining Consistency chapters to ensure that you have followed the relevant recommendations on\n  - Avoiding HTML\n  - Consecutive headers\n  - Labels and cross referencing\n  - Latin abbreviations\n  - References and citations\n  - Title casing\n  - Matching headers with reference in table of content\n\n-->\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/hybrid-collab.md",
    "content": "(cl-mec-hybrid-collab)=\n# Hybrid Collaboration\n\nHybrid collaboration is a way of working where individuals collaborate from a place that they are most comfortable to work from - it be could remote, in-person, or through co-working spaces. This brings in more flexibility for individuals to choose from.\n\nThe COVID-19 pandemic brought in a paradigm shift in how individuals have been working. Recently, hybrid collaboration models are gaining popularity. This chapter will discuss some resources and tips of how to manage your work more effectively if you are collaborating in a hybrid setup.\n\n```{figure} ../../../figures/hybrid-collab.*\n---\nheight: 400px\nname: hybrid-collab\nalt: People are shown collaborating in a hybrid setting with facilitators, for both, those joining in-person and those joining remotely (from different time zones). All of them are collaborating and co-developing a shared document.\n---\nHybrid collaboration: The best of both worlds, if done with care. This image was created by [Scriberia](http://www.scriberia.co.uk/) for The Turing Way community and is used under a CC-BY 4.0 licence for reuse. Zenodo. DOI [10.5281/zenodo.7587336](https://doi.org/10.5281/zenodo.7587336)).\n```\n\n<!--- Add a summary of all the subchapters --->\n\n*This chapter is motivated from a speed blog written during the Collaborations Workshop 2022, authored by Saranjeet Kaur Bhogal, Ben Krikler, Lisanna Paladin, Dmitry Nikolaenko, Adam Jackson, and Simon Waldman, which is published under a CC-BY license. Read the original article on Software Sustainability Institute's Blog page: [Hybrid working: how can we avoid the “worst of both worlds” for early-career researchers/academics?](https://software.ac.uk/blog/2023-01-16-hybrid-working-how-can-we-avoid-worst-both-worlds-early-career-researchersacademics)* \n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/organising-coding-cafe.md",
    "content": "(cl-mec-organising-coding-cafe)=\n# Organising a Programming  CAFE\n\nA programming CAFE (Code Along, Feel Empowered) is a community event that brings together programmers and those interested in starting programming - both researchers and research supporters - to share knowledge about programming and learn with each other in an open and informal setting.\n\nFor both participants and organizers, a programming CAFE offers a fun and welcoming way to explore coding. At the same time, organising recurring events can be challenging, especially if the organisers do not have the event management background - most of us don't.\nThat is why a group of CAFE organisers from different Dutch institutions came together to create a [CAFE Playbook](https://code-cafes-nl.github.io/cafe_playbook/): an online guide, where you can find detailed information on how to organise a CAFE, as well as resources that help you with the organisation.\nThis chapter is a summary of the playbook with the most essential information. \n\n\n## Why start a programming CAFE?\n\nProgramming has become an essential skill for many fields of research. \nHowever, learning to code can feel challenging and at times isolating - especially for beginners. \nThat’s where a programming CAFE community can make a significant difference.\nHere's why you might want to consider starting a programming community in your institution:\n\n- **Share the burden of learning**\n\nProgramming is a collaborative activity, and having a community of programmers can help foster collaboration and knowledge-sharing.\nBy working together on projects, sharing tips and tricks, and discussing best practices, researchers can learn from each other and grow their skills faster than they would working alone.\n\n- **Discover what you don't know**\n\nYou don't know what you don't know - but others might.\nHaving a community of fellow programmers to turn to for support, advice, and encouragement can make all the difference.\nA programming community like CAFE can provide a supportive environment where researchers can connect with others who share their passion for programming and are eager to help them succeed.\n\n- **Access resources and opportunities faster**\n\nA programming community like CAFE can also provide access to resources and opportunities that might otherwise be difficult to find. For example, members of the community might share job or internship opportunities, recommend useful tools and libraries, or organize coding workshops and hackathons.\n\n- **Give a head start for those who need it**\n\nResearchers have different disciplinary backgrounds and programming experience.\nFor some starting to code feels intimidating.\nIt's not surprising, the programming world is often portrayed as highly competitive, male-dominated and full of tech jargon. \nA well-strcutured programming CAFE can help demystify coding and turn it into practical, approachable research tool.\n\n- **Have fun, together**\n\nCoding doesn’t have to be solitary or stressful.\nWhen done together, programming, and making and errors, debugging, failing and trying again can be rewarding, or even fun experience, rather than a daunting and demotivating task.\n\n\n## What is a programming CAFE?\n\nA programming CAFE can take on many forms, ranging from the niche application of a specific language in a specific field of research, to a language agnostic CAFE providing content to users of all skill levels.\nEach comes with benefits and drawbacks.\nToo niche, and you are catering to a very small potential audience, while being too generic may not engage people to join.\nIt will be harder to create the feeling of community if there is a lack of focus (but perhaps the goal is to distribute knowledge rather than create a community).\nThere is no correct answer.\nThe key is to explore the wants and needs of the community (see [Who is the target audience?](#cl-mec-organising-cafes-audience)).\n\n### Programming languages\n\nA programming CAFE can be focused on a single programming language, cater to multiple languages, or be language agnostic.\nFor example, you might start a CAFE that focuses exclusively on Python, or you might create a broader CAFE that covers several programming languages such as Python, R, and MATLAB.\n\n### Research applications\n\nFinally, you might choose to define the focus of your programming CAFE based on specific research applications.\nFor example, you might start a CAFE focused on R for genomics, or one that is dedicated analysing survey data.\nA more general example is a CAFE focusing on reproducibility of research.\n\n\n(cl-mec-organising-cafes-audience)=\n\n## Who is the target audience?\n\nKnowing your (intended) audience is key to providing content that will engage them and get them to actually turn up to events.\n\n### Skill levels and motivation\n\nYou might start a CAFE tailored to beginners, or you might create a more advanced CAFE that caters to experienced programmers.\nAlternatively, you might choose to create a CAFE that is open to researchers of all skill levels, with a focus on collaboration and knowledge-sharing.\nThe motivation of participants may be very different, even within skill levels.\nThe beginner programmer might just be interested in solving a problem in their research, or they have caught the programming bug (pun intended) and want to know more about the inner workings of programming.\n\n#### The beginner programmer\n\nThe beginner programmer is just starting to learn how to code and may feel overwhelmed by the complexity of programming languages and tools.\nThey might have a background in a non-technical field, such as the humanities or social sciences, and are interested in learning how to use programming to solve problems in their research.\nThey might have followed a generic introductory course, but get stuck as soon as they start working with their own data and therefore feel discouraged.\nA CAFE community can provide the beginner programmer with a supportive environment where they can connect with others who are also learning to code, ask questions, and get help when they need it.\n\n#### The advanced programmer\n\nThe advanced programmer has already developed a strong skill set in one or more programming languages.\nThey might be looking for opportunities to share their knowledge with others, collaborate on projects, or learn about new tools, techniques or best practices related to Open Science and FAIR data and software.\nA CAFE community can provide the advanced programmer with a platform to share their expertise, connect with other skilled programmers, and stay up-to-date with the latest trends in the field.\n\n#### The interdisciplinary researcher\n\nThe interdisciplinary researcher comes from a field of study that traditionally has not emphasized programming, but recognizes the importance of using computational methods to answer research questions.\nThey might have a basic understanding of programming concepts but lack the technical skills to implement them.\nA CAFE community can provide the interdisciplinary researcher with a supportive and collaborative environment where they can learn programming skills that are relevant to their research.\n\n#### The data specialist\n\nThe data specialist is a researcher or support staff who specializes in working with datasets.\nThey might be looking for opportunities to collaborate with other data experts, learn about new tools and techniques, or share their knowledge with researchers and others.\nA CAFE community can provide the data expert with a platform to connect with other researchers who share their interests, learn from each other, and collaborate on data-driven research projects.\n\n## What to consider before launching a CAFE?\n\n### Organizers\nBuilding and sustaining a community around learning how to program relies on a core team of organizers who can take responsibility for managing the community and ensuring that it runs smoothly. \nThe time commitment for each organizer may be around **0.1 FTE** (Full-Time Equivalent) per organizer, depending on the size and scope of the community. \nMake sure you can commit sufficient time for organization, before you commit to organising.  \n\n### Funding opportunities\nProgramming CAFEs usually work thanks to shared voluntary effort of many motivated individuals. \nThus having a financial aid for running such events is not strictly necessarily. \nBut it certainly helps providing some extra perks (such as refreshments or merchandise) that can help attract initial attention of your target audience.\n\nSecuring funding can be a challenge, but there are resources available to help.\nIn the Netherlands, there are several Open Science Communities that support initiatives like Programming Cafes.\nConsider reaching out to these programs to see if they would be interested in supporting your community.\nYou can also explore crowdfunding options, ask your department head for budget allocation, or look for sponsorships from organizations that are aligned with your community’s goals.\n\n### Internal communication\n\nOrganized internal communication is critical to the success of any community. \nIt’s important to have a clear and effective system for communication among organizers, including regular meetings and status updates.\nConsider using tools like GitHub project boards to track progress and assign tasks.\nIt’s easy to create a template for monthly meetings, for example, and share a checklist of tasks that need to be completed for each monthly meeting.\n\n### Considerations for meeting planning\nWhen it comes to planning community meetings, it’s important to stay organized and keep everyone informed.\nMake sure to have a clear plan for each event, and consider whether there will be a theme, who will be giving a presentation, and if you will be offering food or drinks.\nCreate a schedule of events that can be published online and advertised ahead of time, and make sure to stick to it.\n\n### Reaching your audience\nThere are many technologies and tools available that can help you manage your community more effectively.\nFor example, you can use Slack or Discord to communicate with members, create a website with GitHub pages to share resources and information, and use social media platforms like Twitter to promote your community and attract new members.\n\nIn conclusion, building and sustaining a community around learning how to program requires a dedicated team of organizers, clear communication, effective event planning, and access to resources like funding.\nBy relying on a core team of organizers to make key decisions and create an overarching vision, you can create a thriving community that supports and inspires each other.\n\n## Logistics\n\nOrganizing a coding cafe requires some logistics, as for every event. However, coding cafes may come with special requirements that you need to take into account.\nThe key message of this chapter is: *Know your audience!*\n\n### Frequency\n\nFinding the right frequency for you as an organizer AND your community is crucial for the sustainability of your programming cafe.\nYour cafe will not be a success if you are eager to meet as often as possible, but your community consists of programmers with extremely busy schedules.\nMeeting too often may be exhausting for you as an organizer, and frustrating for your community as being pushed to constantly declining events may feel overwhelming.\nHowever, meeting only once in a blue moon is certainly not frequently enough to build strong bonds in your community. \n\nFinding the right balance is important.\nTry to find out what frequency may be seen as a standard for your audience and live within the rhythm of your institution.\nYou can also reach out to partner institutions that already have experience and ask for advice.\nNothing is written in stone: you can later change the frequency based on your experience.\n\nAs a suggestion: most of our coding cafes are organized on a monthly basis with a dynamic audience.\nThat means that some people will join most of your events while others may only come irregularly for certain topics.\nHowever, some coding cafes do not follow a strict schedule but are organized ad-hoc once there are enough speakers, topics, or volunteers. \n\n### Best dates & times\n\nFinding your rhythm is important, but not enough.\nMaking exceptions to your frequency may be necessary.\nSome events may alter your planning such as for example:\n\n- **holidays** (your attendance will probably be low if you plan an in-person coding event on Christmas Eve);\n- **vacation season** (be mindful of potential school holiday breaks in your region if your community consists of programmers with families for example);\n- **exam or internship weeks at your institutions** (if you are inviting students to your events make sure that they are around to join);\n-**major events at your institution that will be prioritized by your community** (do not plan a programming cafe as an alternative to a major software related conference at your institution for example).\n\nAdditionally, planning around events that bring a lot of people together anyway may be beneficial.\nIf you know that your audience will come together for a shorter event, you may want to try to get them after the event for your programming cafe.\n\nFinding the right week day and the best day time is equally important.\nA lot of institutions are offering telework options.\nSome of your colleagues may work part-time, or researchers may split their time between multiple institutions.\nThat means that not everyone will be available to join an event on campus on certain days.\nIf you know your audience well, you may avoid some pitfalls with setting the date.\nMondays and Fridays may be preferred telework days for example, so plan accordingly on other days. \n\nDepending on your format, certain times during the day may be more suitable than others.\nIf you offer food and drinks for example, you may benefit from setting your coding cafe during lunch hours or organize it in the late afternoons as an early dinner option.\n\n\n### Food & drinks\n\nNo one likes to work on an empty stomach - same goes for programming.\nOffering food or drinks may help to increase the mood of the audience and may attract some additional people.\nThere will probably be a lot of events and meetings to choose from on busy days, and offering snacks or drinks may help people to decide to spend their time at your coding cafe.\nSome advantages of offering food and drinks are:\n\n- Increase of attraction\n- Increase of happiness\n- Works as an icebreaker since people come together at a potential buffet\n\nHowever, providing foods and drinks also comes with disadvantages such as\n\n- Increase of cost\n- Increase of organizational effort\n\nIf you order pizza for example for all participants, you need a higher budget and you have an additional effort of ordering and receiving pizza in time.\n\nThere is a vast amount of choices for selecting the right food and drinks for your audience.\nIf you organize an event for a vegan audience, offering steaks for barbecue seems an odd choice.\nThe same may be true for your audience.\nA traditional choice for programming events may be pizza and you probably can hardly go wrong with this all-time favorite.\nHowever, there may be better lunch options that can be distributed much easier, such as onigiri for example. \n\nDrinks can be organized in the same fashion depending on your audience’s preferences.\nDecide if you want to offer alcoholic options for example or if you need both, hot and cold drinks at the same time.\n\n\n### Room setup\n\nLast but not least, decide on the right room.\nA coding cafe can be organized online which comes with its own challenges.\nIf you decide to organize an in-person event, you need to book a room that fits the needs of your event. \n\nThings you may need to consider are:\n\n- Room size\n- Convenient location of the room\n- Accessibility of the room\n- Findability of the room\n- Number of power outlets\n- Number of tables\n- Are food and drink consumption allowed?\n- Presenter options\n \n\nAll in all, make sure that the idea of your programming cafe fits into the chosen room.\n30 participants may not fit in a common meeting room.\nA room at a non-central building may be a barrier for your community since they need to travel there.\nAlso make sure that your participants will be able to access the room, even if they don’t have access cards for example.\nInvesting time into printing way points may pay off since it minimizes the risk that your participants get lost on the way to you.\nAs an alternative, you can also provide a detailed description of how to get there in your invitation.\nMake sure that the room is fit for programming needs: check whether power outlets and tables are required.\nAs an alternative, you can organize extension cables or similar.\nThink also about your format: do you need a screen for presenting or a flipchart or room to freely move around.\nIf you order pizza, make sure you are not thrown out of the room for smuggling greasy food into an auditorium.\n\n## Format\n\nThere are several considerations for the format of the programming CAFE.\nThese include: Frequency, Timing, Agenda, Topics. These aspects may differ depending on the size of the community, the capacity of the organizers, and the needs of the community.\n\n### Frequency and Timing\nWe have successful experiences of running monthly and bi-weekly CAFE events.\nThey can be planned as lunch meetings, at the end of the working day or (partly) after office hours.\nThere are pro’s and con’s to each of these options.\nYou may initially start with something that works for the organizers and the initial community, and then adjust based on the needs of the community as the community grows.\n\n### Presentation component\nAt CAFE, we believe that knowledge-sharing is key to fostering a supportive and collaborative community.\nThat’s why we dedicate at least some part of the events on a presentation component on a programming related topic.\nThese presentations can be given by an expert in the field or by someone from within the CAFE community who has knowledge to share.\n\n#### Benefits of presentations\nThe presentation component of CAFE serves several important purposes.\nFirst and foremost, it provides a platform for experts and community members to share their knowledge and insights on programming-related topics.\nThis not only helps to deepen the knowledge and skills of individual community members, but it also promotes collaboration and mutual support among members of the CAFE community.\n\nSecondly, the presentation component helps to keep the CAFE community up-to-date on the latest trends, tools, and techniques in programming.\nBy staying abreast of new developments in the field, community members can continue to grow and expand their skills, and can also explore new research opportunities.\n\nFinally, the presentation component is a great way to showcase the diverse range of interests and expertise within the CAFE community.\nBy providing a platform for community members to share their knowledge and insights, we hope to foster a sense of pride and ownership within the community, and to encourage more community members to get involved and share their skills.\n\n#### Format of presentations\nThe format of the presentations will vary depending on the presenter and the topic being discussed.\nHowever, in general, presentations will be structured as a short talk followed by a Q&A session.\nThis will give community members the opportunity to ask questions, clarify any points of confusion, and engage in a dialogue with the presenter.\n\n### Examples of CAFE topics \nThe topics covered in the presentations will also vary depending on the interests and needs of the community.\nSome examples of potential presentation topics might include:\n\n- Introduction to Python/R/MATLAB\n- Data visualization techniques\n- Machine learning and artificial intelligence\n- Best practices for coding and software development\n- Tips and tricks for debugging and troubleshooting\n\nBy covering a diverse range of topics, we hope to provide valuable resources and knowledge to community members of all skill levels and interests.\n\n### Coding component\nWe also schedule time for coding during the CAFE events.\nThis is a great opportunity for community members to work on their own projects, collaborate with others, and ask questions about programming-related issues.\nWe also allow participants to code during the presentation component of the event if a presentation is not relevant to their interests or needs.\nIn this way the event is always open for a diverse audience with different interests and skill levels, which is valuable for interaction and knowledge sharing in the community.\n\n### Promoting interaction\nCommunity organizers can promote interaction by keeping an informal overview of the community members (and their projects, questions and skills) and facilitate connections.\nSnacks and drinks are a great way to promote interaction and collaboration among community members.\nThis helps to create a more relaxed and informal atmosphere where connections are made more easily.\n\n### Exercises\nExercises provide a great opportunity for community members to practice their programming skills and to learn new techniques.\nThey also help to reinforce the concepts covered in the presentations and to ensure that community members are able to apply what they have learned in a practical way.\nBesides, exercises can be a great way to get community members to interact with each other and to collaborate.\n\n## Community building\n\nProgramming can be a daunting task, especially when you’re just starting out, but it doesn’t have to be a lonely one.\nBy building a community of learners, you can support each other, learn from each other, and grow together.\n\n### Communication is key\n\nFirst and foremost, effective communication is key to building and sustaining a learning community.\nMake sure that everyone has a way to communicate with each other, whether it be through an online forum, a social media group, or a messaging app.\nEncourage members to share their experiences, ask questions, and offer advice.\nConsider setting up a regular newsletter or email list along with a list of upcoming meetings on your website to keep everyone informed about upcoming events and opportunities.\n\n### Event registration\n\nWhen it comes to registrations for events, make sure that the process is simple and easy to understand.\nUse a platform that is user-friendly and accessible, such as Eventbrite or Google Forms, and make sure that people know how to sign up.\n\n### Meetings\n\nWhether you choose to meet online, in person, or hybrid, a consistent schedule of meetups can be a great way to build connections and foster a sense of community.\nIce-breakers can be a great way to get people talking and help everyone feel more comfortable.\nSome good ice-breakers include “two truths and a lie”, “speed dating”, and “name games”.\nMake sure to create an inclusive environment where everyone feels welcome and valued.\n\n### Creating an inclusive atmosphere\n\nIt’s important to make sure that everyone feels included in the community.\nConsider assigning mentors or buddies to new members to help them get acclimated. Encourage members to share their experiences and to help each other out.\nCreate opportunities for people to connect and collaborate, such as hackathons or study groups.\n\n### Creating and maintaining connections\n\nTo help community members stay connected, make sure to provide ongoing opportunities for engagement.\nHost regular meetups or workshops, and encourage members to share their projects and successes.\nConsider setting up a Slack channel or other messaging platform to facilitate ongoing conversations and collaborations.\n\n### Swag!\n\nFinally, swag can be a fun and rewarding way to recognize and incentivize community members.\nConsider giving out stickers, t-shirts, or other branded merchandise to show your appreciation.\nNot only does it make people feel valued, but it can also help to spread the word about your community.\n\nIn conclusion, building and sustaining a learning community takes effort and dedication, but the rewards are worth it.\nBy fostering effective communication, creating a welcoming and inclusive environment, and providing ongoing opportunities for engagement, you can create a community that supports and inspires each other.\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/organising-conference/reg-form-template.md",
    "content": "# Template for Conference or Event Registration Form\n\nThis template includes all the different questions you might want to include on your registration form. \n\nThis does not mean you have include all of these questions for your event.\n\nPlease consider carefully what information you need to collect for your specific event and for reporting and monitoring purposes. \n\nTherefore, this document is intended to be modified to make it specific for your own purpose. \n\n```\n**Title:** *add title of event*\n\n**Description:** \n\n*add a short description of the event and include date, timings with timezone, location, online/in person only/hybrid.*\n\n*Example text*\n*We are convening a conference on ____ , which aims to bring together ________ to _______. This will include __________.*  \n\n*This event is invite only/by application/has a maximum of ___ attendees.  \n\nThe event is in person/online/hybrid at _____ on [add date here] between [add times] UTC.*\n\n*We will be sending out more information about the content and focus of the event shortly.* \n\n*Please register below to indicate that you will be attending.* \n\n*Data privacy*\n\n*No personal data/personal data is collected from you by this form but if you want to read our privacy notice for events at _______, please find it here: [add link to privacy notice]* \nor *We collect personal data about individuals registering for this event. This data includes your name, your email address, your affiliation, country and job title. We will retain this registration information in our server for a year after the completion of the event.*\n \n## Questions\n### Questions to gain permissions\n\n- Do you agree to our privacy notice?\n - [ ] Yes\n - [ ] No\n\n- Are you happy for us to publish audio/visual material of the general event that you may be present in? \n\nWe will use them for publicity for future events and reporting on this event.\n - [ ] Yes\n - [ ] No\n\n- To make this event fair and inclusive to everyone, you will need to read, agree to and abide by our Participation Guidelines/code of conduct/conference charter (add link to details of document)\n - [ ] Yes\n - [ ] No\n\n- Would you be willing to share your contact name and email with other conference attendees for networking purposes? (Select one) [compulsory question for all type of participants]\n - [ ] Yes, I am comfortable sharing my contact information\n - [ ] No, I prefer to keep my contact information private\n\n### Questions to collect attendees details for running the event (all information collected as open short answers)\n\n- Name (first name, family name/surname)\n\n- Title \n\n- Preferred pronouns\n\n- Affiliation/Home Institution/Organisation\n\n- Email address\n\n- Dietary requirements *(in person events only)*\n\n- Do you have any disability or accessibility requirements (for remote and/or in-person participation)?\n - [ ] Yes [Please describe your disability or accessibility requirements so that we can support your remote and/or in-person participation at our event]\n - [ ] No\n\n- Registration type *(if there is a choice)*\n - [ ] Online\n - [ ] In person\n\n\n### Questions for reporting and monitoring purposes \n- Job title\n\n- Career stage (Phases based on https://www.leru.org/files/UK-England.pdf)\n - [ ] Phase 1 (for example: PhD candidate, Research/Teaching Assistant, Junior Research Software Engineer)\n - [ ] Phase 2 (for example: Research Associate/Fellow, Lecturer, Research Software Engineer or Senior Research Software Engineer, Project Manager)\n - [ ] Phase 3 (for example: Senior Lecturer, Reader, Senior Research Fellow, Research Group Leader, Research Software Group Leader, Chief Technical Officer, Programme Manager)\n - [ ] Phase 4 (for example: Full Professor, Director of Research Computing, EU Project Coordinator, Director of Programme)\n\n- What is your research domain/field or area of work?\n\n- What is the closest JACS 3.0 Principal subject code (https://www.hesa.ac.uk/support/documentation/jacs) that classifies your research area?\n\n- Age\n\n- What is your ethnic group? (Options are from the UK census. \n\nWe recognise that these ethnic groups do not represent how all people identify. \n\nYou are encouraged to write in your ethnicity in your own words if you do not identify with any in the list.)\n - [ ] Asian or Asian British\n - [ ] Black, Black British, Caribbean or African\n - [ ] Mixed or Multiple ethnic groups\n - [ ] White\n - [ ] Other Ethnic group [Please write in your ethnicity in your own words.]\n - [ ] Prefer not to disclose\n\n- What is your gender identity?\n    - [ ] Woman\n    - [ ] Man\n    - [ ] Non-binary person\n    - [ ] Prefer to self-describe [How do you self-describe?]\n    - [ ] Prefer not to disclose\n\n- Do you identify as cis or trans gender?\" [compulsory question for all type of participants]\n - [ ] Cis gender\n - [ ] Trans gender\n - [ ] Prefer to self-describe\n - [ ] Prefer not to disclose\n\n- In which country do you reside?  \n\n\n- Which primary funding body/charity/organisation would you normally turn to if seeking financial support for your research/work?\n - [ ] AHRC (Arts and Humanities Research Council)\n - [ ] BBSRC (Biotechnology and Biological Sciences Research Council)\n - [ ] EPSRC (Engineering and Physical Sciences Research Council)\n - [ ] ESRC (Economic and Social Research Council)\n - [ ] MRC (Medical Research Council)\n - [ ] NERC (Natural Environment Research Council)\n - [ ] STFC  (Science and Technology Funding Council)\n - [ ] ERC (European Research Council)\n - [ ] My Institution/Organisation\n - [ ] Wellcome Trust\n - [ ] Other [Please add other primary funder.]\n\n- Why do you want to attend this event? \n\n*This could be left as an open question or have tick box suggestions if you want to know something more specific*\n - [ ] Relevant topic to my research/work\n - [ ] To hear talk from specific speaker/s\n - [ ] Professional development\n - [ ] Academic interest\n - [ ] I am part of this project/organisation/community\n\n- What other themes or topics would you be interested in attending?\n\n- How did you hear about our event? (can be an open question or with tick boxes)\n - [ ] Website\n - [ ] Newsletter\n - [ ] X/Twitter (add X handle)\n - [ ] LinkedIn (add LinkedIn account link)\n - [ ] In another of our events \n - [ ] Direct email\n - [ ] Email from a mailing list\n - [ ] Email from a colleague\n - [ ] I am staff member\n - [ ] Other [Please specify how you first heard about the event.]\n\n- How many of our events have you attended?\n - [ ] 1\n - [ ] 2\n - [ ] 3\n - [ ] 4\n - [ ] 5 or more\n\n- What do you hope to learn and/or gain by attending this event/conference/meeting? (Write in “N/A” or “None” if not applicable.)\n\n\n### Other conference organisation questions\n- Are you presenting at the conference? (Please select one):\n - [ ] Yes, as a speaker\n - [ ] Yes, a poster \n - [ ] No\n\n- Do you require overnight accommodation?\n - [ ] Yes - I will book this myself\n - [ ] Yes - I need help to book my accommodation?\n - [ ] No\n\n- Do you want to attend out conference dinner that will at [add venue] on [add date] at [add time]?\n - [ ] Yes\n - [ ] No\n\n- Would you like to apply for the conference childcare fund? \n\n*Provide details of the childcare fund including who can apply, how much and what details are needed to apply*\n - [ ] Yes, I wish to apply for the childcare fund to support my attendance at the conference - please specify [text box]\n - [ ] No\n\n- Would you like to apply for the conference’s accessibility fund? \n\n*Add details such as - The accessibility fund is designed to support attendees who need additional assistance to participate in the conference. \n\nWe can provide financial assistance (up to add amount/person) to help cover support costs for the duration of the conference, or for additional to support remote participation. \n\nPlease select one of the following options: *\n - [ ] Yes, I wish to apply for the accessibility fund to support my attendance at the Conference - please specify [text box]\n - [ ] No, I do not wish to apply for the accessibility fund\n```\n\n## Links to other templates of registration forms\n* Software Sustainability Institute's Collaboration Workshop registration form template: https://software.ac.uk/cw23/registration\n\nContributions to this template have come from Rachael Ainsworth's Collaboration Workshop registration form, Batool Almarzouq's AIM RSF Conference registration form, input from a discussion in the Research Community Management Team & Collaborators Meeting on 2 March 2023 at The Alan Turing Institute (Arron Lacey, Batool Almarzouq, Claudia Fischer, Eirini Zormpa, Emma Karoune, Sarah Gibson, Sophia Batchelor) and additional input from Vicky Hellon. \n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/organising-conference/reg-forms.md",
    "content": "(cl-organising-conferences-reg-forms)=\n# Registration Forms\n\n(cl-organising-conferences-reg-forms-host)=\n## Where will you host your Registration Form?\nThere are many different tools that can be used to collect registration data for events.\nYour choice of tool may be related to your access to the tool and also the requirements your organisation has in terms of data protection.\n* Simple tools like Google forms or Microsoft forms can be used for multiple questions to collect information into a simple spreadsheet.\n* Zoom has features that allow you to ask multiple questions, brand the emails and also send multiple response emails. \n* If you want to set up responses to your registration form and schedule multiple emails to be sent to participants before the event, then it may be useful to use a registration platform such as Eventbrite or MeetUp. These platforms store data centrally, they work on most browsers, and enable secure credit card payment as well as multiple marketing emails for participants.\n\n(cl-organising-conferences-reg-forms-data-protect)=\n## Data collection and data protection /privacy issues\nYou need to think about why you want to collect certain types of data and how you are going to use them. \nUnder GDPR (https://en.wikipedia.org/wiki/General_Data_Protection_Regulation), you are required to collect the minimum amount of data and especially when it comes to personal data. \nSo think carefully about what you really do require for the purpose of the event and also the outcomes of the event such as a report. \n\nYou might not think you are collecting sensitive or special category data in a registration form but this can be disclosed by attendee. \n- Questions about accessibility requirements can give answers that include health information.\n- Questions about dietary requirements can receive responses that record the religious belief of attendees and also health information such as allergies. \n\nYou must clearly explain why you’re asking for sensitive information and how you will handle this data.\nThis includes clearly stating what you will do with the data afterwards - will this be to inform you on equality, diversity and inclusion, will you use it to write a report?\n\nOrganisations usually have a privacy statement that can be used for this purpose. \nAn example of a privacy notice can be found on the The Alan Turing Institute website: https://www.turing.ac.uk/privacy-policy \n\n(cl-organising-conferences-reg-forms-data-must)=\n## Data you must collect\nYou will always need to collect participant details like their name, email and you could also collect organisation/affiliation. \n\nTo consider the accessibility requirements of attendees, you will need to ask a questions about their accessibility needs. \nThis is needed whether attendees participate online or in person events. \n\nFor in person events, you will also need dietary requirements if you are serving any type of food or drink.\n\nAs mentioned above, you must also ask all attendees to agree to your privacy notice about how your organisation will use their data. \n\nYou may also need to ask for consent on recording if you're recording speakers and/or discussions.\n\n(cl-organising-conferences-reg-forms-data-could)=\n## Data you could collect\nYou might also want to ask questions that you will use for reporting such as motivation for participating, what they want to learn from the event, other themes/topics the attendees would be interested in attending.\n\nTo learn more about who is attending your events, you may also want to collect information on their background, such as country they are based in, job title and research areas they work in.\n\nYou might also consider collecting information to inform equality, diversity and inclusion monitoring. \nThis can include age (or banded age categories), ethnic origin, gender. \nThis data is considered sensitive so should be restricted access and the collection should be minimised.\nHowever, this data is important for monitoring the equality, diversity and inclusion monitoring of your events and therefore important to track whether you are being inclusive.  \n\n(cl-organising-conferences-reg-forms-tips)=\n## General tips\n* Sequence your questions logically after each other.\n* If you ask an optional question, make it clear that it’s optional.\n* Do not rely on colour to communicate your questions.\n* Provide clear explanations for complicated questions to guide people towards choosing the correct answer/option.\n* Provide contact information of the committee member who can be contacted regarding any errors or questions related to registration.\n* Clearly state the next steps upon clicking the submit button.\n* Link the registration form clearly on the webpage and advertise across different community platforms.\n\n(cl-organising-conferences-reg-forms-template)=\n## Template registration form\n\nWe have made a template of all the different questions you might want to include on your registration form. \n\nYou can see this on the next page. \n\n\n\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/organising-conference.md",
    "content": "(cl-mec-organising-conferences)=\n# Organising a Conference\n\n*Recommendations listed in this subchapter also apply to longer collaborative events like sprints and hackathons.*\n\nEvent planning and organisation involves many roles, tasks and responsibilities, which can be challenging, especially for online/hybrid conferences or other collaborative events that have a large target audience.\n\nThis document lists the various tasks for organising such events, which will be useful for people who do not have any former experience or professional support available to them.\nIn this subchapter, we discuss different aspects of conference organisation, which are listed in chronological order and divided into sets of tasks and responsibilities \"before\", \"during\" and \"after\" the meeting.\nThough created for longer events, these detailed task lists can be used for planning smaller events that have fewer logistical requirements.\n\nThough we assume 'virtual first' approach for inclusive events, these recommendations have been drawn from in-person conference planning, and hence can be used for remote or in-person meetings with changes to adapt to a physical location.\n\n(cl-mec-organising-conferences-before)=\n## Before the event\n\nThe different subsections are marked as \"Earlier-phase\", \"Mid-phase\", and \"Later-phase\", based on their importance at the different phases of organisation.\nA few subsections are marked as \"Relevant for all phases\", as those aspects should be taken care of in all stages of event organisation.\n\n### The organising committee for the event\n\n***Earlier-phase***\n- To make organising truly inclusive, include different stakeholders from the community, organisation, and members from diverse backgrounds in the committee.\n- If the organising committee has members across different time zones, the event can be held in a distributed manner.\n- Have 1-2 committee chairs who can capture the overview of the entire team's work.\n- Divide the full committee into smaller subcommittees by different tasks and responsibilities.\n- Identify chairs for the subcommittees and allow members to join more than one subcommittee.\n- Have a common place for documentation and interaction channels to keep communication transparent.\n\n### Website for the event (preplanning)\n\n***Earlier-phase***\n\n*If possible, create a subcommittee dedicated for designing the website and maintaining online communication*\n\n- Take accessibility aspects into account (font size, colour, background).\n- State everything clearly and in simple words.\n- Provide contact details of people with clearly stated roles and responsibilities.\n- Grant edit rights to more than one member in the committee (or subcommittee) across different time zones.\n- Have clearly defined sections for different information, such as:\n  - General information and format of the event.\n  - Draft schedule.\n  - Theme and target audience.\n  - Details about the tools that will be used for connecting.\n  - Sponsors (if any).\n  - Registration details and deadline (if already available).\n  - Call for proposals and guidelines for submitting content.\n\n### Community participation and accessibility\n\n***Relevant for all phases***\n\n- Choose a Code of Conduct that captures your organisation and community values.\n- Describe your community participation guidelines.\n- Create possibilities for people to ask for support to attend your event.\n- Create a reporting guideline for any questions, concerns or breaches of the Code of Conduct.\n- Describe how you intend to create an inclusive event, for example, will there be a sign language interpreter or live transcription.\n- Consider allocating a budget that can be dedicated to addressing transportation needs for attendees who benefit from accessibility support. \n- Create one single location for all the information (like an A-to-Z) regarding the events.\n- Host a few community calls in different stages of planning to involve the audience in the process.\n- Invite volunteers who can help you troubleshoot some specific issues.\n- Allow flexibility for the participants to join the call from anywhere (including from home).\n  - Clearly state what are the size limits for the groups that join remotely (or if individual participation is preferred even when joining from the same location).\n\n### Communication channel\n\n***Relevant for all phases***\n\n- A dedicated Slack or Gitter channel within the organisation account for the event.\n- Have a private channel for the organisers.\n- If working in subcommittees, create channels for the subcommittees to post relevant progress.\n- Create a channel for the community where they can receive updates and engage with each other regarding the event.\n- Create appropriate channels for the registered participants (general, introduction, social, program).\n- Have an announcement channel that can be used for announcing important information by the committee members.\n- If the organisation account is not open for others to join, then create an open channel for participants.\n- Create a social media account on X/Twitter for announcements, branding, improving visibility and wider outreach.\n  - Assign 1-2 volunteers or committee members who can handle social media in collaboration with the committee.\n\n### Storing and sharing information within the organising committee\n\n***Relevant for all phases***\n\n- Use a common, and if possible, single resource management system (like GitHub, Google drive, website) that is easily searchable for storing **organisation related documents**.\n- Establish a common location for storing and sharing documentation.\n- All organisers should have access to all documentation used for planning and organisation.\n- Create a single page summary for the organisers listing the available resources with their links.\n- Have meetings periodically to list and create an overview of the immediate task(s), check with people who these tasks are delegated to and plan the next steps to take before the next meeting.\n- Maintain notes from each call and share with all the members in the organising committee.\n\n### Budget\n\n***Mid-phase***\n\n- Allocate sufficient budget for organising this event (for example for the tools, equipment and childcare).\n- The first place to confirm your budget and support for handling it is your organisation.\n- Looking for sponsorship early on is always a good idea.\n  - In the early phase, even though not all the information is sorted, use the website to attract sponsors.\n- Decide how big your event should be based on the available resource (such as online communication tools, assigned budget of the event, size of your community).\n- Calculate how much to make the registration fee if no sponsorship is gained.\n\n### Participation support grants\n\n***Mid-phase***\n\n- Allocate part of your budget for the participation support grant that can be requested by the applicants for the following support:\n  - Free or subsidized childcare during the event so that the participants can attend the event without worrying about taking care of their children.\n  - Software cost or subscription fee if the one being used by the event is not freely available.\n  - Hardware or equipment for facilitating participation, such as headsets, microphones, webcams (create a list of hardware that can be funded by the support grant).\n  - High-speed internet for the duration of the event.\n  - Other aspects that may improve the quality of participation of the applicants.\n- Consider the possibility of waiving the registration fee for people from a low-income organisation/country.\n- Create a rubric for selection.\n- Share the application form before the registration deadline.\n- Communicate clearly how many participation support grants are available and what they include.\n- Send decisions to participation support grant applicants as soon as possible so that they can decide if they can register to attend the event.\n\n### Event theme and duration\n\n***Mid-phase***\n\n- Identify your target audience within your community and organisation.\n- Invite community members to suggest ideas and collectively choose the most relevant theme.\n- Identify the most suitable time zone and the duration of the event.\n- Avoid scheduling your event on national holidays or religious and cultural days, you may also want to consider avoiding other days and timings that would make attendance difficult for your desired audience.\n- Use a standard time with a link to different time zones (like [arewemeetingyet](https://arewemeetingyet.com)) when communicating about the event.\n- Add the exact date, time, location (if any!) and choice of tool that will be used for communication.\n\n### Define timeline and invite applications\n\n***Mid-phase***\n\n*Establish a timeline for organising and planning the conference and share on the website*\n- Deadline for abstract submission.\n- Deadline for abstract selection notification and program announcement.\n- Deadline for application for participation support grant (equipment and internet cost).\n  - Include application for participation support grant in the registration (such as equipment for remote joining, internet cost, childcare).\n- Deadline for registration.\n- Deadline for announcing the selected participation support grant awardees.\n- Deadline for registration cancellation.\n- Establish a rubric for selection of the talks and sessions.\n- Invite abstracts for talks and sessions and share rubrics for selection.\n\n### Create a registration form\n\n***Mid-phase***\n\nIt is important to consider what information you need to collect and how you will do this in the registration form.\n\nFor more details, see the next sub-chapter on registration forms. \n\n### Community suggestion and feedback forms\n\n***Mid-phase***\n\n*Choose a standard platform to manage all your forms, for example, [Surveymonkey](https://www.surveymonkey.com/) or [Google forms](https://www.google.com/forms/about/), with a statement on how you ensure the security of the data collected*.\n\n- Theme suggestion form.\n- Speakers suggestion form.\n- Participation support application form.\n- Sponsorship interest form for those who need grants to facilitate their participation.\n- Abstract submission form for talks (options for the keynote, long, short, lightning talks).\n- Abstract submission form for workshop, up-skilling or breakout session (options for the different lengths of the session).\n- Ideas and leaders for social events.\n- Form to collect community vote on the submitted sessions and social activities.\n- Final feedback form for participants (can be created in the later stage before the event).\n- Feedback form for the chairs, helpers, speakers and notetakers (can be created shortly before the event).\n\n### Program\n\n***Later-phase***\n\n*Agree as a committee and what the rough agenda for the event's program will be. Create slots for keynotes, breakout discussions, workshops, poster and lightning talk session.\nProvide designated time slots for social events in the main program.\nMake sure that after each talk/session there is 5 minutes break to allow people to log in to the right online call link, switch rooms, and ask any logistics-related questions.\nProvide plenty of breaks, and treat those breaks as virtual coffee sessions.*\n\n- Identify speakers and sessions for the event from the selected abstracts for the talks and community voted sessions.\n- Create a well-balanced agenda that covers the intended theme of the event.\n- If the sessions are supposed to run in parallel, create an agenda based on the session topic/theme.\n- In addition to the talks, have plenty of slots for breakout discussions, short workshops and other opportunities to exchange skills.\n- Provide new and interesting topics that are not selected for long talks as an opportunity to present their idea in short or lightning talks.\n- Instead of having a live lightning talk and poster presentation, invite submission of pre-recorded lightning talks and talks on posters that can be assembled in a gallery (for example, a YouTube playlist) that can be accessed by everyone.\n  - For poster sessions, create a gallery of posters online that can be browsed easily.\n    * Use [F1000 Research](https://f1000research.com/posters/8-400), [Zenodo](https://zenodo.org/), [Figshare](https://figshare.com/) or [Open Science Framework (OSF)](https://osf.io/meetings) to ensure that a DOI is assigned to each submission and allows browsable collections.\n      Other options are Flicker, Unsplash and Google photos.\n    * Share link of each poster with their online video in the shared document.\n  - Decide the length of these talks (recommended length is 1.5-2 minutes),\n  - Create a designated slot in the program to ensure that people take time to check out these talks and posters.\n- Share program and agenda with everyone (via the website) on time.\n- Make sure that your online program is kept up to date.\n- Invite volunteers from the community to chair sessions.\n- Share speaker's and session guidelines with the selected participants.\n- Share the chair's guidelines and protocols with the selected participants.\n- Treat social events in your program as seriously as any other session; discuss this with the organising committee and agree on social events that are good fits for your community.\n  - Confirm leaders for these social activities.\n- Create shared documents for all the selected talks, sessions and social events to be shared with the participants.\n  - Save all the shared documents in one location (or create a common location with their link) so all the participants can browse them during and after the event.\n\n### Documents and tools for participants\n\n***Relevant for all phases***\n\n- Establish a dedicated location for all the shared documents for different sessions with participants so that they can access and edit online during the event.\n  - Use a standard template that can be similar for all the sessions with minor adaption.\n- If using a tool that is available only upon subscription, make sure that all the participants have access.\n- Share a how-to guide to ensure that everyone knows how to use the tool.\n- If possible, offer help with installation and testing of the tool.\n- Remind everyone to arrange a microphone or headsets.\n  - If possible, provide a grant to buy necessary equipment such as headphones, webcams, and/or high-speed internet.\n- Share the participation guidelines, code of conduct and contact information of people who can help with any issues regarding the meeting.\n- Send a reminder with the links to the document(s) and other important resources to all the participants a week and a day in advance.\n- Create slides or presentations that might be needed from the organiser's side (welcome, wrap up).\n\n### Organise a pre-event community call\n*Often referred to by different names such as installation party, coffee-hours or set-up test fest*\n\n***Later-phase***\n\n- Organise a pre-event call for the organising committee to cross-check if all the materials for the event are sorted and have been made available to everyone.\n- Arrange a conference call(s) with volunteers, speakers, session leads and chairs to communicate the guidelines and discuss their responsibilities during the event.\n- Create a collaborative document to collect questions from participants, document answers and share it with those who can't attend the call.\n- Arrange a separate conference call(s) with the participants to answer their questions related to the event and also use collaborative notes to share the main discussion points.\n- Test the technical infrastructure with everyone and help set up any software that is needed during the event.\n- Share important contact details (committee chairs, code of conduct contact person) with everyone.\n- Keep this meeting informal and have as many helpers as possible who can help individuals in breakout rooms.\n\n### Storing and sharing information with the participants\n\n***Later-phase***\n\n- Use a common, and if possible, single resource management system (like GitHub, Google Drive, or a website) that is easily searchable for sharing **information with the participants**.\n- Create a single page summary for the participants of the available resources with their links.\n- Clearly communicate where and how participants can access information and documents.\n- If not using a free platform, provide access to the participants.\n  - This can be communicated in the registration confirmation email and the pre-event community call.\n- Send out short emails with updates and reminders that point the participants to these resources (as people tend to look for all the information right before the event).\n\n### Branding and promotional materials\n\n***Relevant for all phases***\n\n- Use the organisation logo for promoting this event only if agreed by the organisation leadership, otherwise invite logo designs from the community.\n- Use social media to engage with the community.\n  - Reach out to them as frequently as possible during the decision making.\n- Use online store to sell swag to allow people to buy them before or during the event.\n  - If the overall budget is low, this can be used for inviting small donations from the community.\n  - If you have sufficient budget, send these to your organising committees before the event, and to the speakers and volunteers after the event as a *thank you* gift.\n- Design online posters and flyers to share with your community members who can help you promote the event in their networks.\n\n### Designated venues for participation\n\n*If there are physical office locations, or co-working spaces accessible for most members*\n\n- Reserve conference room(s) (or similar venues) with high-speed internet.\n- Share details on how members can access this venue.\n- When possible, use individual cameras to simulate remote participation so that others joining remotely don't feel left out.\n- If the reserved location has a webcam and microphone, check that they work properly.\n- Plan the seating arrangement so that people are facing to the main screen/camera.\n- Test the screen with different light intensity.\n- Arrange all the required materials and equipment, like extension cords or power strips.\n- Create a form to collect dietary requirements, interest in participating in a social event, mobility-related requirements and other location-specific requests.\n- Arrange for beverages/snacks for the breaks, and ensure that the catering service will label the food for contents/allergens.\n- If organising any location-specific social event, run that in parallel to the remote social event.\n  - Book social event venue, transfer, and catering and communicate them clearly.\n\n(cl-mec-organising-conferences-during)=\n## During the event\n\n### Kicking off the event\n\n*Checklist for the designated chair of the opening session*\n\n- Start the video call, or any communication channel 30 minutes before the event to check that everything works.\n- Share links to the documents and other resources for the event on the chat system like Slack.\n- Remind attendees of the community participation guidelines and the Code of Conduct.\n- Introduce the organising committees and the Code of Conduct contact person for the event.\n- Introduce the format of the meeting and when the breaks are scheduled.\n- Explain the basic protocols for participation.\n  - Muting microphone when not speaking.\n  - Using a chat system during the meeting - if there is one.\n- Remind the guidelines for participating in discussions.\n  - Raise hand - on chat, or virtually (like in [Zoom](https://zoom.us/)) or physically.\n  - Other ways to involve others in the discussion equitably.\n- Ask everyone to write down their name, contact (X/Twitter, email) and other relevant information.\n  - Provide a place to write down pronouns, but keep that optional.\n- Start the meeting with an icebreaker question.\n  - Create opportunities for everyone to share something personal (about their hobby, or experiences) on the document or verbally.\n- Communicate the ways to have inclusive discussions.\n- Remind everyone if the video will be recorded.\n- Provide an agenda with the names and contact information of the session chairs.\n- Remind session chairs of their guidelines in private and make sure that they have all the information and support they need.\n- Provide everyone with a way to keep track of sessions and time, for example, a shared link to [cuckoo.team](https://cuckoo.team) clock.\n- Share how participants can ask for help with troubleshooting, event information or feedback about the event.\n\n(cl-mec-organising-conferences-after)=\n## After the event\n\n- Consider how you will ensure that everyone is able to access return transport safely if your conference is hosted in-person or hybrid.\n- Create a debrief document to capture what went well and what could be improved in future events.\n- Create a small overview blog post to share the main highlights from the event with the community/participants immediately.\n- Collect any additional documents or information mentioned by others/speakers during the events.\n- If the event sessions and talks were recorded, process and publish the recorded videos within a defined time frame.\n- Send thank you emails to everyone with the link of the complete notes and all the relevant information.\n- Send a feedback form to all the participants with the thank you email.\n- Settle all the invoices from the event.\n- Host a post-event community call to thank people and share the lessons learned.\n\n## Resources\n\n- The *Checklist for running a meeting* is a summarised version of the [Gallantries (Galaxy+The Carpentries handbook)](https://galaxy-carpentries.github.io/gallantries/handbook) which is an expanded version of [The Carpentries workshop checklist](https://docs.carpentries.org/topic_folders/hosts_instructors/hosts_instructors_checklist.html).\n- The *Checklist for running a longer event such as a conference or sprint* is a summarised version of the debrief document written by the [chairs of the 1st CarpentryCon conference](https://2018.carpentrycon.org/) organisation committee.\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/ppie-events/ppie-events-comms.md",
    "content": "(cl-mec-ppie-events-comms)=\n# Planning Communications for PPIE Events\nHaving a good plan on how and when to communicate around your event is always important, but it can be even more relevant when inviting people with lived experience – who might be new to research events – to your own event.\n\nThis section provides guidance on what to consider when developing a communications plan for events involving people with lived experience. \nIt will not be able to replace an in-depth communications plan, but instead draws attention to what additional considerations may be needed to help make your event inclusive of people with lived experience. \nPlease refer to the {ref}`Planning your Event<cl-mec-ppie-events-planning>` section for more information about planning your event. \nYou can find a checklist at the end of this page for what key pieces of information need to be included in your event's core communications.\n\nFor this chapter, \"Communications\" refers to the information you share with potential attendees, the timings and schedule on which you communicate it, the channels you will use, and the content and information about the event. \n\nWhen developing a communications strategy, in addition to identifying the goals for your event, you will need to consider:\n- Who are you trying to reach?\n- Why are you trying to reach them?\n- What information do you need to include?\n- When do your attendees with lived experience need the information?\n- How will you convey the information to them?\n- What forms of communication does your target audience use (social media, email, in-person meetings)?\n\nDepending on the scale and resources for your event, your communications plan may include the development of websites, PDFs, flyers, banners, and social media posts in addition to email and calendar invites. \n\nBy carefully planning out what you need to communicate, when, and how you ensure that the information is received and understood, your attendees will be supported in spending their effort and energy taking part in your event.\n\n(cl-mec-ppie-events-comms-timeline)=\n## When to send Core Communications\nThe timeline for planning a communications schedule for your event will vary greatly depending on the size and type of event. \n\nWhen planning an event attended by people with lived experience, please be mindful that many people with lived experience might require information with more notice in order to plan their attendance.\n\nThe more advance notice you can give to people, the more flexibility people have to organize and make arrangements, and the more likely they will be to attend your event.\n\n(cl-mec-ppie-events-save-the-date)=\n### Save the Date\nConsider how early you will be able to send out a \"Save the Date\" for your event and when you will be able to finalize accessibility information and a reimbursement policy. \n\nFor people with lived experience who are attending your event, Save the Dates serve to give the advance notice required for attendees to plan and give notice that they will be attending your event.\nFor example, many professions require at least 2 weeks advance notice to process and approve leave to support a person taking time off work to attend your event, or people with caregiving responsibilities may need to arrange alternative care to support their attendance.   \n\nAdditionally, many people with lived experience of disabilities or medical conditions need to carefully plan their attendance as part of managing their condition, especially for in-person events. \nThis can be due to medication requirements, and managing conditions that involve fatigue or overstimulation as well as figuring out a plan for how they will manage physical barriers to arriving at an in-person event. \n\nProviding clear and timely information will help your attendees with lived experiences plan their attendance safely, and in a way that supports them engaging fully in your event. \nThis will also be supportive of attendees with busy schedules who may be booked out significantly in advance.\n\nYour \"Save the Date\" should include an overview of honorarium or reimbursement support, the date, and the approximate location of the event such as Zoom, or the name of the city where the event will take place. \nIt should also reference how long the event is likely to be, for example, if it's a multi-day event or a few hours. \n\nBy providing guidance along with a \"Save the Date\", your attendees would have appropriate time to be able to make arrangements, and also be able to make an informed choice about if they are able to attend. \n\nConsider sending out different forms of a \"Save the Date\" to support how different people use and interact with online calendars. \nFor example, depending on your attendees you may need to:\n* send out an online calendar placeholder,\n* send an email invitation written in plain language with simple formatted headings,\n* attach an accessible PDF flyer with \"Save the Date\" information to any emails,\n* and promote the \"Save the Date\" information through your usual communication channels such as Slack, LinkedIn or organization's newsletter, website, and social media. \n\nThis can ensure that people who use different communication channels are able to receive the information in a medium that is accessible to them and through the channel they are most comfortably using. \n\n```{admonition} Case Study\n:class: tip \nThe [Public and Patient Involvement and Engagement Community for people with experience of Multiple Long-Term Conditions](https://www.turing.ac.uk/research/research-projects/ai-multiple-long-term-conditions-research-support-facility) had asked event organizers to send out both calendar invitations compatible with Outlook and Google calendars, and email invitations. \n\nThis was to support the community members who often needed to manage event attendance around medical appointments, as well as support those who had visual impairments and would benefit from digital tools providing reminders.\n\nIn several of the group's community meetings, attendees expressed that they would not regularly check emails and instead would rely on their calendars, however, some members of the community expressed the opposite and did not use digital calendars but would download and print out flyers for their notice boards. \n\nBy adjusting communication to include both these requests, organizers were better positioned to engage people with lived experience.\nThey were also more successful in involving underrepresented people in community events.\n```\n\n(cl-mec-ppie-events-dress-code)=\n## Communicating Dress Code and Setting Information\nFor many attendees, especially those with lived experience, your event may be the first research event they have been invited to. \nAdditionally, the terms \"researcher\" and \"scientist\" may carry many stereotypes such as people wearing lab coats, tweed jackets, or formal robes. \n\nIt can be helpful to surface tacit information, such as what to wear, in your event information to help all attendees feel comfortable and to dispel any assumptions people may have about what a \"scientist\" looks like. \n\nConsider communicating if there is an expectation of business, business casual, or other dress code and if your event will host any particular social events that may require a different dress code.\nFor example, closed-toed shoes in a museum, or modest dress for a sacred site.\n\nAlso, consider including a short description of what that specific dress code means.\nYou can include examples or reference images if it is particularly important to be dressed a certain way, for example, a research event that may be visited by a Royal Family or other dignitary. \n\nWhere possible at your event, support the adoption of a casual dress code. \nBusiness or Formal wear can be cost-prohibitive and inaccessible to those with mobility difficulties or sensory processing differences.\n\n```{admonition} Dress Code Differences\n:class: tip\nWhat to wear to research events can often differ greatly between fields. \nFor example, some prominent researchers and a Nobel laureate have become known for not wearing shoes and avoiding formal wear at events. \nBy making clear expectations and supporting people with lived experience attending your event, you are also helping make your event more inclusive and welcoming to all attendees in a non-judgemental space.\n```\n\n(cl-mec-ppie-events-comms-website)=\n## Using an Event Website \nIt can be incredibly helpful to centralize information about your event in both online and offline locations.\n\nConsider if your event will need a website and dedicate a page on your site to information and a point of contact regarding accessibility practices and the steps you are taking to make the event inclusive.\n\nYou can also choose an event platform such as Eventbrite, Humanitix, or EventYay to host information about your event. \nWhen deciding on what platform to use please review the accessibility of a potential site, and follow any advice as to how you can make your content on their platform accessible. \nFor example, [Eventbrite provides accessibility guidance](https://www.eventbrite.com/blog/66754-2how-to-creat-an-accessible-event-listing-ds00/) for event pages hosted on their platform. \n\n```{note}\nWhen reviewing event platforms, please note that many organizations have recently changed their pricing and localization options.\n\nFor example, Eventbrite has been updated so that events larger than 25 people will need to pay a fee to host on their platform.\nYou will also need to check if the platform is available and offers support in the region that you expect participants from.\n\nYou will need to work with your team to identify the best solution for your event based on the resources you have available. \n\n```\n\n\n(cl-mec-ppie-events-comms-website-content)=\n### Website Content \nDepending on your event and where you host online information, you should ensure that the digital home for your event covers this information:\n- How to attend (joining links for online content and location information for in-person events).\n- When and where your event is.\n- What accessibility practices will be implemented for your event.\n- Who the event hosts are and who the session leads will be. \nThis can help attendees know what to expect. \n- Information about what your event is and what is expected from the audience. \nThis includes if your attendees are expected to have background information on a topic and if your event expects active participation from the attendees. \n- The program or agenda for the event including planned start and end times and scheduled breaks.\n- The event's Code of Conduct and Privacy notice.\n- Documentation or information about the honorarium, reimbursement, or renumeration policy for your event. \n- Information for a point of contact to get in touch with if there are any issues with joining or if attendees want follow-up information about the event.\n\nConsider also providing any content that is on a website in an offline format such as an information booklet or flyer. \nThis can help attendees access important event information without requiring internet access and can also help attendees who prefer to read information offline. \nHTML and plain text is often the most accessible format, and some PDF software provides several accessibility features such as Adobe Reader which can be accessed or downloaded for free. \n\n(cl-mec-ppie-events-comms-speaker-information)=\n## Speaker Information\nAll speakers need to be identified and invited with plenty of time to plan their presentations.\n\nSpeakers should receive information about the format of their talk (for example: panel discussion, slide presentation with narrative, video presentation, workshop), and guidance about what to expect from an audience and event that focuses on academic research.\nIt is important to identify and surface any tacit knowledge and be clear about the expectations both you as an organizer and your attendees may have about a talk or presentation. \n\nConsider providing introductions and supporting speakers to ensure that they are familiar and comfortable with the presentation technology, and are prepared to communicate scientific concepts to a general audience.\n\n(cl-mec-ppie-events-comms-speaker-diversity)=\n### Inviting Speakers with Lived Experience\nRepresentation is incredibly important and you may want to consider how you represent your attendees in your invited speakers and event facilitators. \n\nWhen inviting a speaker with lived experience to present, consider what barriers exist that would prevent their full participation in the event.\nFor example, you may need to provide details about the event ahead of when the information is scheduled to be sent to researchers or participants who are not speaking.\nThis is to ensure that the speaker can engage without barriers and make an informed decision about participation while leaving enough time for planning and finding alternative speakers.\n\nAsk your speakers what accessibility practices would facilitate their participation, communicate your decisions about accessibility practices, and collaborate with speakers to ensure that they can deliver their session effectively.\n\nAdditionally, when inviting a speaker or facilitator with lived experience, consider asking how they wish to be identified in relation to their expertise and experience. \nFor example, many autistic people, and the autistic community as a collective, have expressed a preference for using \"Identity-first\" language which places the disability first in the description. \nThis is contrasted with \"Person-first\" language which emphasizes the person before the disability, for example, __Person with epilepsy_. \nPeople may wish to be referenced as \"expert by experience\" or by the phrase we have used in this chapter \"person with lived experience\".\nThis can be an incredibly person and important distinction for many people so it important that you ask and clarify with your speakers ahead of time.\nMany people feel strongly about person or identity first language, and it is important to ask that individual about their preference as part of planning their introduction. \n\nYou may notice that both person-first and identity-first language has been used in this chapter. \nHow a person chooses to self-identify is entirely a personal decision, and it is the role of organizers and facilitators to support the choices of the speakers and attendees, as long as it does not contravene the event's Code of Conduct. \nConsider instead including a statement on the inclusive and compassionate use of both person-first and identity-first language when opening your event. \n\n(cl-mec-ppie-events-comms-speaker-preparation)=\n### Speaker Preparation\nDepending on the type of event you are planning, you may want to consider providing guidance for speakers, moderators, and presenters on inclusive communication, and requesting that any content delivered in the session can be sent to attendees before the event. \n\nIf your event has online or streamed sessions, consider developing an information pack and working with your speakers and event facilitators to ensure that content is accessible and inclusive of all attendees. \nYou can use this pack to highlight information about the audience that the speaker should know, and provide guidance on how to effectively communicate to an audience of people with lived experience.\nIn this resource, you can model how to talk with respect about the people with the type of lived experience that is the topic of your event, using the vocabulary the community chooses and avoiding assumptions related to that topic.\nMany early career researchers may not have received formal training in scientific communication and working with the public, so it can be helpful to emphasize the importance of using plain language and speaking clearly. \n\nYou can also prepare the speakers by asking how they would like to interact with any questions that are asked. \nMany research talks often follow a \"lecture\" format where a speaker talks on a topic and then takes 2-3 questions from the audience. \nConsider asking your speaker to break their talk into sections to allow for questions at different points in the session, or if your event is a lecture, consider using software to gather questions as the session progresses. \nThis can be helpful for people with lived experience of cognitive or sensory differences. \n\n(cl-mec-ppie-events-comms-attendees)=\n## Who will be attending\nMany people with lived experience and members of the public may experience additional anxiety due to being in an unfamiliar environment where they can often feel like their presence is tokenistic. \nIf you have planned your event well, attendees with lived experience should feel welcomed and able to engage fully in the event.\n\nIt can be helpful in your communications to state who will be in attendance.\nFor example \"researchers, clinicians, experts by experience, policymakers, and funding bodies\".\n\nFinally, consider including short introductions and background information about the speakers and session facilitators in your event information. \nMany people with lived experience may feel more comfortable engaging in an event where they know who they are speaking with and it can be a helpful way to build rapport. \n\n(cl-mec-ppie-events-comms-presentation-material)=\n## Presentation Slides and Event Content\nAlthough it can be common to prepare presentation slides at the last minute, to be as inclusive as possible, please work with your speakers and presenters to finalize session content before the event. \n\nBy working with speakers and requesting slides and presentation content ahead of the event, you will be best set up to support the involvement of people with disabilities and lived experience at your event.\n\nThis can help in two core ways:\n1) supporting speaking in developing both psychologically and physically accessible content, \n2) ensuring that your event's content is accessible to a diverse audience.\n\nFirstly, consider how you will support speakers in developing inclusive material that is pitched to the correct audience, which in this case will be members of the public and people with lived experience. \nThis may mean developing and sharing guidance on session content, or could also be giving feedback on presentation drafts. \nEnsure that you contact and confirm your speakers with enough notice that allows them to prepare and revise material. \n\nSecondly, it is best practice to send out content before the session or event to ensure that people with sensory impairments, or who may require more time to review and engage with the material, are able to understand and take part. \n\nIf this is not possible, please address the reasons why in the opening address of the event and make alternative arrangements.\nFor example, if the information is sensitive and unable to be shared due to Intellectual Property or Privacy reasons. \n\nFinally, if your event is a workshop that requires live input from attendees, ensure that questionnaires or any reference material that will be discussed are sent out at least two days prior to the start of the event. \n\n(cl-mec-ppie-events-comms-event-content)=\n### Collaborative Event Content\nIf content such as presentation slides, worksheets, and other materials are able to be shared but were not sent out before the event, consider sending it as soon as possible. \nFor example, during the event which can support people without internet access, or as soon as possible at the conclusion of the event. \nYou can also send out notes or session minutes taken during the event.\n\nTaking collaborative “live” notes can be very divisive based on different audiences. \nHaving a designated notetaker and being able to read and listen can be beneficial to many people who are encountering new material for the first time, or who may be listening to a presentation that is delivered in a different language. \n\nHowever, being able to engage in an event’s content and simultaneously read notes often requires attendees to have access to a secondary screen or device that can be used for typing, reading, and to view both written and presented material. \nMany members of the public may not have multiple screens set up in their homes, and they may be attending online events on their phones. \n\nEnsure that if you offer live notetaking at your event that your attendees are able to access both the session content and the notes, and that technology you use is one that your attendees are comfortable using and getting access to. Some examples include:\n- [HackMD](https://hackmd.io) provides collaborative editing that can be read by screen readers, but these people won't be able to contribute to editing the document.\n- [Google Docs](https://www.google.co.uk/docs/about/) have some accessibility features but screen reader access to editing depends on the user's operating system.\n- [Etherpad](https://etherpad.wikimedia.org/) offers full support for screen-readers, and cannot host images or hyperlinks \nAdditional guidance on tools for taking collaborative notes can be found in {ref}`cl-mec-event-tools`.\n\nThis is an example of how important it is to involve people with lived experience in your event planning. \nBy having representatives or by getting feedback from your specific community, you will be able to identify the best way to share notes and other materials with your audience. \nIt is preferable to ask more than one advisor, as the solutions used by individuals, as well as their level of experience with technology, can vary significantly. \n\n(cl-mec-ppie-events-comms-jargon)=\n## Avoiding Jargon\nResearch fields can often rely on acronyms and jargon to communicate effectively between colleagues. \nHowever, the use of jargon can make the involvement and inclusion of people with lived experience difficult. \n\nReflect on how, and where, your research field uses jargon that might not be understandable to the general public. \nAlthough you may be able to assume that many people with lived experience are familiar with any common acronyms or jargon used, it can benefit the inclusion of all attendees and experience levels if the amount of jargon used can be minimized. \nFor example, researchers, clinicians and people with a lived experience of arthritis may be more familiar with terms and medication names related to arthritis and associated conditions. \nHowever, many attendees may be unfamiliar with these terms can can feel excluded from conversation and event content that uses them.\n\nAs part of planning, consider how you can reduce the use of jargon and acronyms at your event, and create a strategy for encouraging speakers and facilitators to also avoid unnecessary jargon. \n\nYou may want to develop a Glossary of Terms that can be included in information booklets, and where possible, work with researchers to be mindful of, and review, language choices to ensure inclusivity, such as avoiding gender-specific terms and including language that recognizes the diverse identities engaged in your event. \n\nYou can find online examples of Glossaries developed by research funding bodies, or review the [NHS list of jargon and acronyms](https://www.nhsconfed.org/publications/acronym-buster) for inspiration.\n\n(cl-mec-ppie-events-comms-plain-language)=\n### Using Plain Language\nSimilar to avoiding jargon, ensure that your core communications are written using {term}`Plain Language` or are in an \"easy reading\" format. \n\nPlain Language, sometimes referred to as Plain English in the UK and North America, allows for communications and other information to be read and understood easier. \nConsider how you will encourage attendees and speakers to adopt clear and plain language communication throughout your event. \n\nFor example, you could address and encourage the use of Plain Language during the opening address or by signposting it in your event's shared information. \nYou could also consider an activity where researchers are paired with non-researchers and are asked to explain their research in under 3 minutes. \nThis can help to bring \"clear and effective communication\" to the forefront of attendee's minds and set all attendees up to communicate clearly throughout the event.\n\nUsing Plain Language is especially important in your registration and event information packs.\n\nIf possible, consider co-developing Plain Language and Easy Read content alongside community representatives or person with lived experience. \nIf this is not possible for your event, you can review guidance on how to write in Plain Language and ensure that core communications and event content are checked by using an external tool. \n\n```{note}\n* The Office for National Statistics in the UK has [published a short guide on writing with Plain Language](https://service-manual.ons.gov.uk/content/writing-for-users/plain-language). \n* There are also tools such as the [Hemingway App](https://hemingwayapp.com/) (an online tool that gives you feedback on the clarity of your writing), or Microsoft Word's reading level reviewer (if you have an account, Microsoft has provided [instructions on how to use it](https://support.microsoft.com/en-us/office/get-your-document-s-readability-and-level-statistics-85b4969e-e80a-4777-8dd3-f7fc3c8b3fd2?ui=en-us&rs=en-us&ad=us#__toc342546555)) which provides the reading level of your document's content.\n* You can also paste the URL of a website into a [Readability Checker](https://www.webfx.com/tools/read-able/) to check the overall content and layout of your event's webpage. \n```\n\nAim to have all core event communications be understandable by a general audience, and written in Plain Language. \nThis does not need to mean that your entire event is pitched to a general audience. However, by making all general information understandable you will be more inclusive and more able to engage all potential attendees, from research staff, researchers, organizers, people with lived experience, and other professions associated with your event's content. \n\nUsing Plain Language for your communications can help all attendees understand and engage in your event. \n\nAdditionally, consider how you will be mindful of, and review, language choices to ensure inclusivity. \nFor example, avoid gender-specific terms and include language that recognizes diverse identities in your event information and content. \nThis can help acknowledge and respect the cultural differences of your attendees. \n\n\n(cl-mec-ppie-events-comms-plain-language-summaries)=\n#### Plain Language Summaries\nIf your event has a large focus on research content, consider instructing presenters to write {term}`Plain Language` summaries of core content so that people with lived experience who do not have a background in research are able to engage in the sessions and understand the projects that are discussed. \n\nPlease refer to The Turing Way's chapter on {ref}`cm-lay-summaries` for more guidance, and you can view good examples of Plain Language summaries from the [AI for Multiple Long Term Conditions research projects](https://aim-rsf.github.io/Glossary-of-Terms/pages/aim-projects.html). \n\n\n(cl-mec-ppie-events-comms-during-event)=\n## At the Event\nConsider how you will communicate with your attendees throughout the event. \n\nFor example, relying solely on emails to send out information about a room change or delay in starting a session will require attendees to have an active internet connection and smart device at all times. \nMany people may use their phones to join online events and may not have a home computer. \nRelying solely on email communication would cause these attendees to miss out on core communications if they have joined the event on the hosting platform.\nSimilarly, for in-person events, people may not own a portable smart device capable of checking emails or online content. \n\nThere are many different reasons for needing to communicate on the day of the event. \nFor example to make attendants aware if there will be loud noises, content that may trigger photosensitive epilepsy, or to update attendees when your event sessions start after a break. \n\nIt is especially important to consider how you will communicate when there will be sensitive or potentially harmful content being shared. \n\"Harmful\" can mean a range of things depending on the context. \nFor example, “harmful” content could refer to flickering lights or material that would trigger photosensitive epilepsy, a response to discussion topics that may arise, or a video that could be difficult or uncomfortable for attendees with sensory processing differences to experience. \nConsider communicating an overview of a session's content before it begins to allow attendees to prepare or choose to leave the session. \n\nConsider what channels your attendees with lived experience receive information from and try to match those in your event communications. \nFor example, some attendees may need to be called on the phone to receive information, or they may require a text instead of an email. \n\nIn many cases, you may need to develop a strategy for how to ensure that all attendees are able to receive event updates, and plan to use multiple different communication streams. \n\n(cl-mec-ppie-events-comms-after-event)=\n## After the event \nFinally, once your event has finished, you may want to consider how you will engage with the attendees. \n\nThis may involve sending out thank you's, a feedback survey, gift packs, or closing event information such as links and slides for presentations, any summary notes, or other material that was delivered and able to be shared from the event. \n\nDepending on the size and format of your event, consider how you will communicate the timeline for when attendees can expect any follow-up information. \nIt may take a significant portion of time to manually transcribe sessions and add captions before uploading to a video hosting platform so it is helpful for attendees to know when to expect follow-up content.\n\nThis can be especially important if your event involves people with lived experience giving feedback or input into a project. \nIt can be demoralizing for a person with lived experience to volunteer their time and expertise in a focus group or for a grant application, and then receive no further information. \nInstead, consider setting a date when you or the research team will send an update, regardless of whether you have completed follow-up materials or whether a proposed project receives funding. \n\n(cl-mec-ppie-events-comms-conclusion)=\n## Conclusion\nBy demonstrating an open channel of communication about accessibility, and by being thorough in your communications plans, you will have a successful event that incorporates the expertise and experience of people with lived experience.\n\n(cl-mec-ppie-events-comms-key-information)=\n## Key Information Checklist\nThis is not an exhaustive list of what to include in core communication, however, it can be used as a reference in addition to the information above for what to include on a website or in an information pack. \n\n* **Information about the event** including:\n    * The Date and Time of the event.\n    * Event Agenda or Program.\n    * Location of the event.\n      Consider also sharing a map of the location and accompanying text instructions of the location and consider including details such as where parking would be available, where each of the session locations would be, and where to go in an emergency situation. \n    * Information about transport links and suggestions for how to get to the location from public transport.\n    * Who is hosting the event and a point of contact. Consider including information about the hosts or supporting organizations.\n\n* Information about any **Reimbursement or Honorarium Policies** you may have. This includes details on: \n    * What can be reimbursed.\n    * How to complete the process, as well as links to any forms that are needed. Consider writing a guide or instructions for any forms you may have. \n    * What is involved in the process.\n    * Who to contact about reimbursements.\n      When working with large research teams, it can become unclear who is responsible for what tasks.\n      Providing details on the reimbursement process, and who to contact if there are questions, can help make people with lived experience who take part in your event feel supported and understood and establish a clear expectation.\n      This is especially important if the member of your event team who is the main point of contact for accessibility questions is different from the person able to process financial requests. \n\n* **Contact information for support** or regarding special requests such as:\n    * The Event organiser. This may be the designated point of contact in an emergency.\n    * A person who is able to provide Accessibility information and help if you are able to support it for your event.\n      Try to make this contact available as soon as you announce the event, even if it is setting up a designated inbox.\n    * Any Catering or dietary requirements.\n      Because dietary requirements are protected information, not all members of an organizing team will have access to it or be able to answer questions. \n    * Accommodation or transport logistics.\n      This includes a point of contact for any hotels or customer support lines as well as a point of contact who can help secure bookings if needed, or call if there is an issue.\n      For example, a hotel being double booked or not providing step-free access for wheelchair users.\n\n* Information about the **Sickness Policy** and what the expectations are. For example: \n    * Information about what the policy and procedures are if an attendee tests positive for an illness that affects public health while attending your event.\n    * Reimbursement or support available if an attendee is unable to attend (such as ticket reimbursements).\n    * Guidance or expectations for attendance in the event of an attendee feeling unwell.\n    * Information about community transmission precautions and if any personal protective equipment will be supplied or available at the event (such as masks or hand sanitiser). \n\n* **Emergency Evacuation Plans:**\n    * Please ensure that information about how, and where to evacuate is provided for attendees to reference in the event of an emergency.\n\n* **Expected Dress Code**\n    * Include information about what expectations and requirements your event will have regarding dress codes and include a short description of what that specific dress code means.\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/ppie-events/ppie-events-location.md",
    "content": "(cl-mec-ppie-events-location)=\n# Location\nThis section provides guidance that is most relevant for in-person or hybrid events. \n\nThe location of your event plays a pivotal role in supporting or hindering how accessible and inclusive your event will be for people with lived experience. As with all planning, reflect on how you will get input and feedback from your attendees with lived experience in order to identify the best venue for your event.\n\n\n(cl-mec-ppie-events-choosing-venue)=\n## Choosing a Venue\nBefore deciding on a venue it is recommended to have an organizer or member of the team visit potential venues to do a walk-through and check that all rooms in the venue will work for your event’s needs. \nThis can be an essential step in ensuring that the venue will be suitable for your community and event. \nInclude people with lived experience in this process as they can have expertise in identifying barriers such as inaccessibility for wheelchair users, poor lighting, or sensory overstimulation. \nUnderstanding the venue can be helpful to both check the maintenance and layout of the space, and can also help you plan your event set-up such as where to put signs directing attendees to your event.\n\nThrough a {ref}`Universal Design<cl-mec-ppie-events-planning-intro>` lens, a venue that is able to support a diverse attendee list will be best for any event that involves both a research and general public audience. \n\nWhen reviewing potential venues, consider the ventilation of airflow, lighting and acoustics, and ensure that they are appropriate for the number of attendees at your event. \nA large hall with high ceilings may cause echoing and may not be suitable for discussion-based sessions. Similarly, a small room with limited ventilation may not be suited for long sessions with a large number of attendees. \nThese considerations will benefit all events, however may be more important to consider for events that are intended for people with lived experience. \nIt is important to ensure that a space can support the involvement of all its attendees. \nThis can be considering how to lay out tables (circular is best) so that all those seated are able to listen and contribute equally to the discussion, ensuring that there is enough seating for attendees, and can also be considering how the space itself will be laid out to ensure ease of movement and also sufficient places to sit and rest. \n\nCheck with a venue's child policy before booking and ensure that there are suitable arrangements made if a venue area does not allow children to be present. \nFor example, some museums and botanical garden greenhouses do not allow children to be present for private events. This may mean that attendees with child-caring responsibilities are unable to attend and engage with your event.\n\nDepending on the size of your venue, you may consider if there is space available to use as a multi-faith prayer room or a quiet room that reserves a space away from the event to relax, take medicine privately, and take a sensory break for those who need it. \nThese spaces can help make an event more inclusive and enjoyable for your attendees. \n\nFinally, consider if your venue is hosted in a space that is \"dual purpose\". \nFor example, a University Hall may also be used for lectures or by students as a thoroughfare to get to class. \nIf there will be people other than attendees using the space, identify how will you differentiate between staff, attendees, and others who are present in the space. \nYou could use name badges or have staff and organizers in a shared uniform which could help to avoid confusion of an attendee asking a bystander for event assistance. \nPlease also be mindful of how your event will use the spaces provided, for example, if your poster presentation space will also be used to serve food in, try to ensure that food smells are dissipated and plates cleared to support attendees engaging in the session.\n\nIf your event will be attended by people with disabilities, it is important to consider both the Universal Design suggestions made here, and also to ensure that access requirements are sufficiently met.  \n\n\n(cl-mec-ppie-events-location-venue)=\n## Venue Planning\n\n(cl-mec-ppie-events-location-signs)=\n### Signs and Navigation\nConsider how you will direct and guide people at the venue. If you plan to have banners that will displayed near parking and transport links that can direct attendees to the event registration, will you also have staff members who will be able to guide attendees with low vision or blindness.\n\nConsider where will you put signs at the venue to indicate where the sessions are taking place, and also where any facilities such as restrooms, elevators, kitchen space, and all breakout sessions are located. Signs should be clearly visible and identifiable to your attendees. \nTry to place signs and information before **and** at junctions so that people do not take a wrong turn down a corridor, and if there are locations at your venue that may be difficult to navigate, consider having staff visible to help direct attendees. Use directional arrows, and have signs distributed regularly along paths. \n\nAlthough they may help some individuals, remember that signs and visual information may not be accessible to all attendees and consider how to provide clear guidance at the venue to attendees with visual impairments. \nWhen assisting a disabled person, ask them how you can do this because it varies between individuals.\nDo not touch, grab, or move people with disabilities, their mobility aids, or service dogs without permission.\n\nIt is also important to be cognizant that attendees who are more familiar with the layout of university campuses may feel more comfortable navigating university-based locations. \nPlease consider how you will make members of the public feel comfortable in these spaces. \nThis may mean putting up posters or banners and decorating areas of the space to allow attendees to feel a sense of belonging and identifying where your event spaces are located within a larger venue.\n\nIf you are able to provide attendees with a map of the venue, make sure to identify how to navigate the location, where parking and restrooms are located, where to find staff members, and where all important locations will be (such as kitchen, break out rooms, and registration). \nAlso ensure that the location of any emergency supplies such as an automated external defibrillator (AED), epi-pen, first aid kit and a member of staff who will be able to act in the event of an emergency is marked on the map. \nAlthough it is not expected for staff and organizers to be medically trained, it is important to know who needs to be contacted in an emergency.\n\n(cl-mec-ppie-events-location-setup)=\n## Setting up the event\nIf your event is held at a venue where you are unable to alter the seating layout, avoid dedicating an entire row or completely separate seating area for these attendees. \nSegregated seating and single areas can make attendees with lived experience feel separate from their colleagues and singled out. \nBy distributing the seating throughout a space you can create a more inclusive and welcoming environment for attendees. \n\n\n(cl-mec-ppie-events-location-during-event)=\n## During the event\nConsider having printed maps for attendees to pick up and refer to during registration. \n\nAny maps and schedules of your venue should have been included in the invitations to attendees, but you should also consider having printed copies of the maps and schedules, with any important features or sessions highlighted. \n\n\n\n\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/ppie-events/ppie-events-planning.md",
    "content": "(cl-mec-ppie-events-planning)=\n# Planning your Event\nFor many projects, the involvement of individuals and communities with first-hand lived experience is critical to upholding and ensuring that the processes and outcomes developed are effective, inclusive, and equitable. \nThis can involve hosting different events that are attended by people with lived experience and other members of the public, as well as researchers, clinical staff, and other professionals. \n\nThis section provides guidance and considerations for how to design and host an inclusive event for a diverse audience of people with lived experience. \n\nThese recommendations are not an exhaustive list, and it is always important to include a specific representative or person with lived experience in the event planning to ensure that your event is tailored to the needs of your specific attendees and organized without barriers to participation.\nTheir inclusion in decision-making processes is essential to achieving an accessible and inclusive event.\n\nBy involving your community in the event organization, it also maximizes their contribution of expertise and experience to the event's field of study.\n\n(cl-mec-ppie-planning-prerequisites)=\n**Helpful Resources within The Turing Way**\n\n| Prerequisite                            | Importance | Notes                                                                                |\n| -------------                           | ---------- | ------                                                                               |\n| {ref}`cl-mec-organising-conferences`    | Essential  | Checklists and recommendations for planning conferences                              |\n| {ref}`cl-mec-remote-organising-meetings`       | Essential  | Checklist and suggestions for organizing meetings                                    |\n| {ref}`cl-mec-event-tools`               | Helpful    | Suggestions for tools that are useful when planning and running events               |\n| {ref}`cl-mec-remote-collab-guidelines`  | Helpful    | Guidance on running remote events                                                    |\n| {ref}`cl-new-community-differences` | Helpful    | Useful for thinking about how to be inclusive when collaborating with a diverse team |\n\n(cl-mec-ppie-events-planning-intro)=\n## Accessibility and Inclusion: What to focus on\nWhen designing and organising an event, it can be easy to focus on accessibility requirements at the venue, and overlook the steps needed to make an event inclusive and enjoyable for all participants. \n\nWe can think of this in terms of “**Universal Design**” which is about designing an event or environment so that it can be accessed, understood, and used by all people regardless of their background, age, size, ability, or disability. \nThis is different from “**Accessible Design**” which focuses on designing around specific accessibility requirements. \n\nAn example of Universal Design is the \"[Curb Cut effect](https://en.wikipedia.org/wiki/Curb_cut)\" which is where curbs on sidewalks and paths are sloped down to meet the main pavement. \nCutting the curb and adding a slope was originally suggested to allow wheelchair access to the street without having to step down from a high curb. \nThis change also benefits most other pedestrians, as well as people who use prams, cyclists, people with mobility aids, and young people meaning that adding curb cuts made walkways and street crossings easier to use for everyone. \nYou can read more about Universal Design on the [Universal Design Website](https://universaldesign.ie/what-is-universal-design/), however, you do not need to be an expert in design to organize an inclusive and accessible event.\n\nA core feature of PPIE is that members of the public and other non-researchers are actively involved in the research, and this will also be true for your events. When thinking about how to be inclusive of people with lived experience at your event, ensure that you plan beyond just the accessibility requirements that focus on disabilities. \nUsing Universal Design to plan your event allows you to take into account what changes can be made to make your event accessible to a wider audience. \nFor example, recording your sessions and using closed caption software can remove barriers for people with disabilities, and will also benefit a much wider audience.\nSimilarly, improving the signposting will benefit both members of the public who are new to research events, but also early career researchers that have less experience in attending events.\n\nThis chapter and the examples used in it focus heavily on aspects that are relevant when organising events in which members of the public are expected to attend, based on a universal design framework and an understanding of how the considerations benefit a wide audience as well as members of the public who may be attending your event as people with lived experience. \n\nThis chapter is not designed to replace general recommendations and guidelines for running accessible events for people with disabilities, as those will apply to your event planning regardless of whether members of the public are attending them or not.\nAt the relevant places, we have linked to the existing “Accessible Events” chapters and recommend referring to these for specific accessibility practices. \n\nIf your attendees have accessibility requirements, please ensure that those are planned for and met, in addition to taking a universal design approach.\n\n\n(cl-mec-ppie-events-planning-logistics)=\n## Planning - Logistics \nPlanning an event involves many stages that can vary in length depending on the size and resources required. \nThis section addresses some suggested areas for consideration for events that include people with lived experience as attendees. \n\nAt each stage, your planning documents should reflect an emphasis on accessible and inclusive universal design. \n\n(cl-mec-ppie-events-initial-planning)=\n## Initial Planning \nAn event that will be attended by people with lived experience may be different to events planned for an audience consisting only of researchers and research staff. \n\nBeing inclusive at the planning stages ensures that people **without** lived experience are not making decisions for people **with** lived experience. \nTo prevent this, consider and define how you will actively involve community representatives or people with lived experience in the event planning process.\nThis will help to ensure both a diverse perspective, and help your event uphold the research goals of co-creation and public involvement. \n\nExamples of how you can implement this would be to consider inviting and including representatives and public advisors into the event planning committee, or alternatively consider hosting town halls and feedback forums that can support and make space for a large audience of people with lived experience to share their perspectives and help steer your event towards success. \nYou could also consider hosting some focus group sessions at regular stages to get feedback on your plans.\n\n\nAt this stage it is important to consider who your event will be inviting and if there will be any promotional or \"product demonstration\" content at your event. \nFor example, there are ethical and potential consumer regulation considerations if your event hosts sales or promotional teams from medical device or pharmaceutical companies. \nDepending on the country, there may be regulations around direct promotion to consumers or users of a product which will restrict the amount of involvement that members of the public will be able to have at your event. \nSpecific thought should be given for how to include members of the public at events which may showcase regulated products. \nEnsure that you identify what considerations need to be made in order to facilitate appropriate knowledge sharing within an inclusive research space to make the most of our your event while also safeguarding all attendees. \n\n```{note}\nIf you are able to collaborate with members of the community, please consider how you will recognize or reimburse the time and contributions made.\nThis may involve an honorarium for attending planning meetings and for time spent reviewing policies and other documents.\n\nYou could also consider hosting some focus group sessions at regular stages to get feedback on your plans.\n\nWhere possible, the expertise and labour of people with lived experience should be recognized and renumerated.  \n\n```\n\n### Scoping the Event\nAs part of the initial planning, it is important to clearly define the event's goals, understand the intended audience and potential attendees, and identify how your event will ensure the active inclusion and involvement of people with lived experiences. \n\nWhen scoping these questions, consider establishing a planning committee that can represent the public and patient populations. \n\nTo identify the event's purpose and outcomes, carefully consider your target audience and the reasons behind their inclusion.\nConsider documenting this alongside your planning committee or with input from people with lived experience.\n\nIt is important at this stage to define and document the purpose of public involvement in the event, and doing so alongside a representative or members of the public with lived experience will help to identify how best to design an event that is beneficial and inclusive for your attendees. \n\n### Preliminary Content Planning\nBy involving representatives or getting feedback from members of the public you will also be able to scope and identify topic areas and event content that will be relevant and inclusive of your audience, as well as facilitating their contribution to the event.\nConsider how you can co-develop a program and identify event content that supports various perspectives, backgrounds, and needs. \nThis will allow you to create an agenda that fosters an inclusive and engaging experience for everyone involved.\n\n### Considering Accessibility Practices\nDuring the initial planning, it is also important that organisers identify the accessibility practices relevant to all attendees and establish plans to implement these practices.\nThese practices should be discussed and defined by the expected attendees, including people with lived experience. \nAccessibility practices to consider include those for cognitive, sensory, and physical disabilities, communication modes, scheduling breaks and allowing for participation from multiple time zones, use of plain language, as well as additional practices related to your specific event.\n\n\n(cl-mec-ppie-events-power-dynamics)=\n### Addressing Power Dynamics\nFor events where attendees are members of the public and non-researchers, acknowledging and addressing the power and privilege differences between the members of the public and researchers will be an important part of creating an inclusive environment where the attendees with lived experience can engage equitably at an event.\n\nIt can be helpful to acknowledge that people with lived experience are \"experts by experience\" to help establish equal footing with professionals and researchers who are \"experts by profession\". \n\nYour event may be the first event of this type attended by people with lived experience and members of the public, and many attendees may not have pursued higher education compared with attendees who may be researchers by profession. \nPeople with lived experience may be affected by systemic discrimination and may not have had similar educational and career opportunities, and may have experienced barriers like medical ableism and medical racism. \nThis can create a significant power imbalance due to comfort and experience at the event. \nIt is also important to recognize that people with lived experience can be researchers as well.\n\nNetworking and social components of the event may feel less welcoming to people with lived experience if they do not know anyone before attending. \nResearchers may attend with some of their regular co-workers or know other attendees already beforehand (especially in niche fields). \nThus, they may be more comfortable joining discussions with others at your event, compared to members of the public that are not embedded in such pre-existing social networks. \nTry to consider ways to open discussion between attendees to avoid a social separation between researchers and members of the public. \n\nAdditionally, many signifiers of social class can be learned and acquired by research professionals during their career, such as how to present and speak confidently, familiarity with technology and scientific advances, as well as general comfort navigating university campuses. \nWhen unaddressed, many members of the public with lived experience may feel unwelcome at research-focused events and feel unable to take part due to a perceived difference in experience and power. \nWhere possible, try to surface hidden knowledge such as what to wear, when to ask questions during a talk, and provide tutorials and instruction for all attendees if your event requires the use of a particular technology like Slack or Slido. \n\nThere are many ways to address the power imbalance and it is best to get recommendations from your community to tailor to your event. \nBuilding rapport and respect between attendees will help your event foster meaningful collaboration and knowledge exchanges between researchers and people with lived experience. \n\nDuring the opening session, set an expectation for open and respectful dialogue between all attendees and create spaces where attendees can ask questions, share their perspective, and engage meaningfully in conversations. \nUpholding a respectful dialogue throughout your event may require active facilitation of conversations to include attendees with lived experience having time to speak and to ensure that a respectful dialogue is maintained. \n\nIt can also be useful to allow attendees to self-identify and differentiate by interest rather than by profession. \nFor example by labelling networking tables with a topic, or putting only names and pronouns on name badges instead of including someone's name, profession, and university affiliation or workplace.\n\nConsider the ethos and values that your event and community holds when planning what research to invite and uplift at your event.\nResearch projects have historically been focused on academic interest and the pursuit of knowledge without considering the goals and needs of communities with lived experience. \nFor example, autistic and deaf people have emphasised that their communities do not prioritize searches for a cure because of the experience, culture, language they have and the validity of their identities. \nInstead their communities advocate for their involvement in research that addresses and improves their lived experience and quality of life. \nBy highlighting research that aligns with the goals and values of your community, your event can contribute to the balancing and awareness of the power dynamic between researchers and public contributors. \n\nDepending on the event length and the resources available, it may be helpful to provide training on effective communication and collaboration to both experts by profession and experts by experience in attendance. \nSupporting the development of scientific communication skills for all attendees can help bridge any gaps in understanding and enable all attendees to engage in discussion on an equal footing. \nTraining sessions could be part of the event promotional schedule if there are several months - and the resources available - before the event. \nAlternatively, training could also be featured in the program as one of the initial event sessions.\n\nEnsure that you organize the event session chairs, moderators, panelists, and presenters to come from a diverse range of people that includes people with lived experience, researchers, and professionals.\n\nThe equal representation of the attendees by the speakers and facilitators allows for different perspectives to be highlighted and can create a space where people with lived experience feel empowered to engage in sessions. \n\nFinally, as organizers, it is important to understand the power and responsibility you have in deciding how inclusive and accessible your event will be. \nIt is important to acknowledge how your choices may impact the experience and inclusion of people with lived experience at your event.\n\n(cl-mec-ppie-events-timeline)=\n### Timeline and Timing of Event \nAfter identifying the \"why\" and \"who\" for your event, it is important to plan \"when\" the event will take place, and to develop a timeline for when tasks need to be completed in order to run your event. \n\nOrganizers should aim to avoid scheduling events on national holidays or religious and cultural days to accommodate attendees of various backgrounds, and depending on the scale of the event, you may also want to consider avoiding other days and timings that would make it difficult to attend for your audience. \nFor example, events during school holidays or sessions that overlap with school pick-up and drop-off times may make it difficult for people with school-age children to attend. \n\nYou should work with your specific community to understand what accessibility and inclusion practices would facilitate their contribution. \nMany members of the public and people with lived experience engage in research projects as a volunteer and will find it difficult to get time off from their workplace to attend an event. \nSimilarly, researchers may find it difficult to attend sessions outside of working hours. \n\nAnother schedule-related accessibility practice is providing breaks that are longer and more frequent than those traditionally allocated for during conferences.\n\nAlthough scheduling is difficult for any form of event organizing, please take the time to consider what barriers an event's timing will have on your ability to be inclusive of people with lived experience. \nRefer to local resources for any specific dates to avoid and review an interfaith events calendar such as this: https://www.interfaith-calendar.org/. \n\nWhen planning the dates for the event, it is also useful to consider the potential travel times of your attendees. \nIf your event takes place in-person, try to choose a date and start time that takes into account how long your attendees will need to travel. \nFor example, having your event start at 10:30 a.m. allows for inter-city travel the morning of the event. \n\n(cl-mec-ppie-events-timeline-planning)=\n#### Creating a Planning Timeline\nYour planning timeline will vary greatly based on the scale of your event. \nWe have highlighted areas where your timeline should take into account any considerations that would be specifically supportive of people with lived experience.\n\nAlthough it is always necessary to allow for appropriate time to source speakers, people with lived experience may require more notice than is traditionally given in order to support their attendance and speak at an event. \n\nPeople with lived experience may have additional constraints such as medical appointments, caring responsibilities, requirements to plan travel farther in advance, or a job that does not support their participation in research. \nThese attendees will need to know which accessibility practices you will implement before they decide whether or not to attend your event.\nBarriers like lack of captions or inaccessible conference platform technology can exclude people completely, so it is important to have this information available as early as possible, and to ensure that you have planned for enough time to implement them successfully.\n\nTry to identify potential speakers as early as possible and book dates in their diaries that would allow them to make plans that would support their engagement in the event.\n\nWhere possible, arrange a recording of a talk or an alternative session plan that can be used in the event a speaker or facilitator is unable to attend. \nYou can also arrange to have speakers join remotely if it would be more supportive of their engagement. \n\n`````{admonition} Case Study\n:class: tip\nThe AI for Multiple Long Term Conditions Conference in April 2023 had a keynote speaker join and give their keynote address remotely in order to best support their involvement. \nPeople with the lived experience of multiple long-term conditions may find travelling to events taxing which can have a negative impact on their energy levels and ability to engage in daily activities. \nBy supporting the speaker to speak remotely, they were able to give an engaging and thoughtful keynote address without the burden of having to travel. \n`````\n\n(cl-mec-ppie-events-planning-budget)=\n### Budget\nAttending and organizing events can place a large financial strain on all parties involved, and can cause the unintentional exclusion of many people with lived experience who may be engaging in projects as a volunteer. \n\nThis section highlights considerations that event organizers can make to increase the inclusion of an event, however, we would like to acknowledge that not all of these recommendations are possible to implement for every event. \nPlease work with your team to prioritize inclusion and accessibility practices that maximize participation and use this section as a starting point for discussion.\n\nPlanning an inclusive event requires finding the financial support to remove barriers to full participation. \nThese costs can be considered on two levels: event-wide and individual.\n\nEvent-wide costs are things like live captioning and can be accessibility practices that will be implemented regardless of who attends. \nExamples of individual-level costs are provided in the sections below. \n\n(cl-mec-ppie-events-planning-tickets)=\n#### Ticket Pricing\nIf your event is ticketed, ticket prices should be set thoughtfully and may consider having different tiers of pricing in addition to setting aside low-cost or complimentary tickets for carers and those experiencing financial hardship.\n\n(cl-mec-ppie-events-planning-honorarium)=\n#### Honorarium and Bursaries \nDepending on the size of the budget and structure, creating a policy and the budget for an Accessibility Fund can help to make your event inclusive for all participants. \nThis is a fund that can be applied to cover additional costs encountered by people with lived experience attending and engaging in your event. \n\nThese additional costs could be: \n- Additional accommodation for people who may need to travel to an event the day prior, or stay longer, if attending in-person.\n- Any travel costs or support for those with caring responsibilities to cover the cost of a support worker, childcare, or allowing their child to travel with them.\n- Honorarium for members of the public with lived experience to attend sessions. \n  Many members of the public may be volunteering their time or having to take unpaid time off work in order to attend your event. \n  Recognizing their contributions can also help to address power imbalances between career researchers and members of the public.  \n- Honorariums for speakers, facilitators, and note-takers if they are needed for your event.\n- Support for accessibility practices such as a Sign Language Interpreter.\n- Reimbursements for accessible transport (for example, taxis can often be more expensive than public transport but may be required depending on the location of your event).\n- Provide funds to cover costs of reliable internet access to remote meetings for people in low-bandwidth environments.\n\nIt is important to create a clear policy for what activities and costs can be covered by an Accessibility Fund. \n\nHonorariums and Reimbursements may have separate policies and timelines, and it is important to be as transparent as possible in order to include people with lived experience engaging in your event.\nIt is advisable to highlight who is responsible for payments, how any reimbursement procedures will work and their expected timeline, and provide clear guidance on what expenses will be covered. \n\nIt is also very important to understand how honorarium may affect an individuals’ state benefits. \nFor many countries, receiving an honorarium payment is viewed by government as “income” and could affect future eligibility for benefits. \nAlthough you as an events organizer do not need to become an expert in tax and benefits, it is critical to communicate and be flexible about how compensation is provided.\nFor the UK, the Social Care Institute for Excellence has collated a [useful overview](https://www.scie.org.uk/co-production/supporting/paying-people-who-receive-benefits/)  on supporting people with lived experience at your event who may be on benefits.\n\n\nAdditionally, UK's National Institute for Health and Care Research has published [Guidance on Payment](https://www.nihr.ac.uk/documents/payment-guidance-for-researchers-and-professionals/27392) for researchers who need to cost public involvement activities at any stage of the research process that can be used as a reference for developing your event's honorarium policy.\n\nPlease ensure that all documentation and communication about honorarium and reimbursements are written in an Easy Read format following {term}`Plain Language` guidance and if possible, provide clear pathways on how to submit documents. \nMany members of the public may not have a printer in their homes and may share a computer or smartphone to take part in events. \n\nWhere possible, please be mindful of the technology and process barriers that people may face and make processes as clear as possible.\nReview your organization's honorarium policy, and consider what steps will be needed to align your policy with what is both recommended and what is required. \n\n```{admonition} Case Study\n:class: tip\nCommunity events run by the Multiple Long Term Conditions Community of Practice are often attended by people with blindness and low vision. \nThese community members receive an honorarium for their participation in focus group sessions and requested a support person to type and guide them through the reimbursement forms. \nWhile this example was specific to the needs of that community and may not be a requirement for all types of events, it highlights the additional considerations such as the budget, communication, and the data protection/privacy requirements in order for that would be needed for a member of staff to support attendees with completing the forms. \n```\n\n(cl-mec-ppie-events-planning-staffing)=\n### Personnel \nPlanning for who will be facilitating and staffing the event will help to identify what inclusion and accessibility practices you can implement to support the participation of people with lived experience.\n\nConsider what sessions your event will be running, and scope out who will be required to do this work. \nSome examples are:\n- facilitators who can moderate and chair conversations or discussion sessions and promote equitable participation\n- translators or interpreters for people with lived experience if the event is not hosted in their primary language (this includes sign language interpreters)\n- note takers\n- specialized staff to your attendees, depending on the event's topic.\n\nYou can also consider setting up a dedicated email address that is active before and during the event for people to direct accessibility questions towards.\nFor example, during the event an attendee with low vision can email and ask for context on content that was shared during a live session. \n\nLarge-scale conferences may also consider dedicating a member of staff for each day of the conference who is fully informed on the best practices for public engagement and will be able to provide assistance and information to attendees with lived experience. \n\nAlthough not all events will require a full team of support staff, it is useful to consider how organizers will facilitate the inclusion of people with lived experience on the day of the event. \n\n(cl-mec-ppie-events-planning-before-event)=\n## Before the Event (a few weeks before)\n\n(cl-mec-ppie-events-planning-speaker-preparation)=\n### Speakers and Moderators \nConsider how you will welcome speakers, moderators, and participants and familiarize them, if needed,  with the technology your event will use. \nMany of the technologies used every day by some people have never been used by others, and many technologies are inaccessible to people with sensory disabilities. \nConsider preparing introductions or tutorials for the technologies used by your event and sharing these with speakers and moderators before the event so they can familiarize themselves with the format, timings, and any technology platforms used at your event. \nYou can also consider hosting a \"practice\" session with your speakers and moderators before the event to ensure their familiarity and comfort. \nThis may be especially relevant for those with sensory disabilities who would benefit from additional familiarization. \n\n```{admonition} Practice Sessions\n:class: tip\nAn added benefit of having a practice session is to review the material that is planned to be shared at your event. \nIt can be helpful to find any spelling mistakes or formatting issues, or to support speakers in changing phrasing and language that may be exclusionary. \n```\n\n(cl-mec-ppie-events-planning-during-event)=\n## At the Event\n\n(cl-mec-ppie-events-planning-during-event-speakers)=\n### Speakers and Moderators\nIf your event features speakers or presentations from members of the public and people with lived experience, you should consider how you will support them before their sessions.\nFor example, some speakers may benefit from having time to prepare in a \"Green Room\" or quiet room. \n\nHaving a quiet and private room can be especially beneficial for for people with lived experience who may prefer to take medication in private, or may be newer to public speaking.\n\nConsider how you will prepare your speakers to hold a successful session. \nFor example, hosting a practice session or walk through of the technology and venue for them before attendees arrive, identifying some questions or topics they may want to avoid and helping to facilitate discussion, or by asking how they wish to be introduced to the attendees.\n\nIf your event overlaps with a meal time, consider whether participants' ability to eat or take a break will be impacted. \nIf your event is in-person, try to communicate with catering and ensure that there is a meal or alternative food is sourced and held aside for them. \n\n(cl-mec-ppie-events-planning-during-event-tech)=\n### Technology \nDepending on your event and platform, it may be helpful to organize \"backup\" technology on the day of the event.\nFor example, provide accessible electronic copies and printouts instead of relying solely on online technology to communicate important information. \nMany people do not carry around a smartphone or laptop and may have not used streaming or presentation software before so try to ensure that there are both \"online\" and \"offline\" copies of important documents.  \n\nBy recognizing that technology can create barriers for many people and preparing appropriately, you can work to ensure anyone who is interacting with this technology feels more comfortable using it on the day. \n\n\n(cl-mec-ppie-events-planning-during-event-staffing)=\n### Personnel \nAt the event, it is important to have clear communication and identification of staff and organizers especially if their roles are to support attendees. \n\nYou may want to consider having an accessible document, website page, or paper copy introducing the event organizers and facilitators so that it is clear who to ask for help. \nYou may want to highlight people who are able to help if an attendee has a question about the sessions, as these people may be different from session facilitators and technology support staff. \nBy including contact details and explaining the roles of organizers, it can help attendees feel understood and welcomed instead of being redirected to multiple people who are unable to help them. \n\nIt can also be helpful to have a dedicated person who can be easily located and contacted during the event and will be able to take action if there is a problem. \n\nThis may not be feasible for all events and may be more important for in-person events, but it is important to consider how to make the event accessible and inclusive throughout. \nInclusion can be planned for, but it also needs implementation and support to make it happen.\n\n\n(cl-mec-ppie-events-planning-post-event)=\n## After the Event\nConsider if you are able to make content from the event accessible to attendees, or open to a wider audience, after the event. \n\nFor events that have recorded sessions, this may be uploading the content to YouTube and ensuring that the captions have been reviewed and added to any video content. \nPlatforms such as YouTube may be more well known and able to be used comfortably by members of the public as opposed to systems such as [Canvas](https://www.instructure.com/canvas), [Microsoft Sharepoint](https://microsoft.sharepoint.com), or other academic content sites. When choosing where to host and share your event’s content, consider how easily findable it will be for your audience.  \n\nIf your event included content such as slides or documented notes, consider where and how you will archive them so that they can be accessed and referenced by attendees. \nOnline repositories such as [Zenodo](https://zenodo.org/) are commonly used by research communities but are not universally design-compliant and require both technical expertise and knowledge of how to use and access it as well as requiring an internet connection to access content. \nConsider using Zenodo in addition to an accessible format. \nThis could be a website commonly visited by your attendees, sending post-event summary information to attendees, or providing recordings of sessions that display session content.\n\nYou can help future conference organisers by keeping track of the inclusion and accessibility practices you implemented, how successful they were, and what resources were required. \nThis will provide an outline and timeline for your next event that is specialized for your topic and people with lived experience.\n\n\n\n<!--  LocalWords:  ppie\n -->\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/ppie-events/ppie-events-resources.md",
    "content": "(cl-mec-ppie-events-resources)=\n# Resources\n\n\n(cl-mec-ppie-events-resources-learn)=\n## What to Learn Next\n\n> **Recommend other chapters in _The Turing Way_ book that readers should read**\n* {ref}`cm-lay-summaries` contains information and guidance on writing plain language summaries that can help guide the development of your plain language resources\n* {ref}`cl-mec-organising-conferences` contains a checklist and general guidance for organizing a conference which supplements this chapter if you are planning a longer or multi-day event\n* {ref}`cl-mec-event-tools` contains suggestions and recommendations for tools that can help with task management, collaborative note taking, live polls, and surveys which can be used to support your event\n* {ref}`cl-mec-remote-collab-guidelines` provides guidance on running remote meetings and has recommendations that can help shape an online or remote event held for people with lived experience\n* {ref}`cl-mec-remote-organising-meetings` contains checklists of tasks for organizing meetings which should be read in addition to the accessible meeting section of this chapter\n* {ref}`cl-mec-hybrid-collab-challenges` outlines some of the challenges that come with organizing hybrid events which can impact the accessibility and engagement in planned events\n* {ref}`cl-mec-chairing` covers the duties an event chair would have at a range of different events. This section will be useful guidance to provide chairs and moderators with at your event. \n* {ref}`cl-new-community-differences` has suggestions for how to establish a strong and supportive collaborative environment which will help to frame the planning stages of your inclusive event  \n\n(cl-mec-ppie-events-resources-other)=\n## Additional Resources \n\nThese resources cannot (and should not) replace working with members of your specific community to plan and host events. \n\n### Resources on Public Involvement and Engaging people with lived experience in research and/or public policy\n* NHS Guide to Patient and Public Participation: [Involving Patients and Public in Event Planning and Delivery](https://www.england.nhs.uk/wp-content/uploads/2016/07/bitesize-guide-event-planning.pdf)\n* [UK Standards for Public Involvement in Research](https://sites.google.com/nihr.ac.uk/pi-standards/home)\n* Health and Social Care Alliance Scotland: [Engaging people with lived experience best practice, challenges, and opportunities](https://www.seemescotland.org/media/11340/lived_experience_report_2022_web.pdf)\n* NIHR Imperial BRC Patient Experience Research Center (PERC): [A Rough Guide to Public Involvement](https://www.imperial.ac.uk/media/imperial-college/medicine/perc/PERCs-Rough-Guide-to-Public-Involvement---Dec-2021.pdf)\n* Imperial College London: [Public Involvement Resource Hub](https://www.imperial.ac.uk/patient-experience-research-centre/ppi/ppi-resource-hub/)\n* [For Equity: Resource List](https://forequity.uk/general-resources/)\n* National Institute for Social Health and Care Research: [Public involvement in NHS, health and social care research](https://www.nihr.ac.uk/documents/briefing-notes-for-researchers-public-involvement-in-nhs-health-and-social-care-research/27371)\n* World Health Organization: [Nothing for Us, Without Us: listening and learning from people with lived experience](https://www.youtube.com/watch?v=Ms6BrG-RJJI)\n* NHS Guide to patient and public participation: [Planning for participation](https://www.england.nhs.uk/wp-content/uploads/2014/03/bs-guide-plann-part1.pdf)\n* DARE UK: [Public Involvement and Engagement (PIE) Guidelines for DARE UK Projects](https://dareuk.org.uk/wp-content/uploads/2023/06/Public-Involvement-and-Engagement-PIE-Guidelines-for-DARE-UK-Projects.pdf)\n* [PEDRI: Public Involvement and Engagement Best Practice Draft Standards for the use of data for Research and Statistics](https://www.adruk.org/fileadmin/uploads/adruk/Documents/PE_reports_and_documents/PEDRI-Best-Practice-Standards.pdf?_hsenc=p2ANqtz-9I-CNND1ExG4qFNhAixF7DgzUPmx2l6OdSTF524XH1QkQi0TUdR7BnLxfzePrRtOMF48_K)\n* Association of Medical Research Charities (AMRC): [Guidance and tools for public involvement](https://www.amrc.org.uk/guidance-and-tools-for-public-involvement)\n* World Health Organization: [framework for meaningful engagement of people living with non-communicable diseases, and mental health and neurological conditions](https://iris.who.int/bitstream/handle/10665/367340/9789240073074-eng.pdf?sequence=1)\n* [My Voice Matters - a guide for people who want to share their lived experience](https://shapingourlives.org.uk/report/my-voice-matters/)\n* NIHR Applied Research Collaboration East Midlands: [Engagement,\nInvolvement & Co‑Production](https://arc-em.nihr.ac.uk/sites/default/files/field/restricted/Preparing%20for%20Implementation_Module%202_V2.pdf)\n* Public Engagement with Science [A guide to creating conversations among publics and scientists for mutual learning and societal decision-making](https://www.mos.org/sites/dev-elvis.mos.org/files/docs/offerings/PES_guide_10_20r_HR.pdf)\n* Citizen's Advice: [How to run focus groups](https://www.citizensadvice.org.uk/Global/CitizensAdvice/Equalities/How%20to%20run%20focus%20groups%20guide.pdf)\n* [Guidelines for Conducting a Focus Group](https://irep.olemiss.edu/wp-content/uploads/sites/98/2016/05/Trinity_Duke_How_to_Conduct_a_Focus_Group.pdf)\n\n### Community-Specific Accessibility Resources\n\n#### Deaf and Hard of Hearing \n* [Sign Solutions: How to plan a conference with event interpretation for Deaf people](https://www.signsolutions.uk.com/how-to-plan-a-conference-with-event-interpretation-for-deaf-people/)\n* [Royal National Institute for Deaf People: Make your meetings deaf aware](https://rnid.org.uk/information-and-support/deaf-awareness/make-your-meetings-deaf-aware/)\n* (UK only) [Action Deafness Interpreting: British Sign Language Interpreter Services](https://actiondeafness.org.uk/services/interpreting/)\n* [Working with sign language interpreters for events](https://www.signsolutions.uk.com/working-with-sign-language-interpreters-for-events/)\n\n#### Autism\n* Autistica Advocacy: [A Guide to Accessible Event Planning](https://autisticadvocacy.org/wp-content/uploads/2019/05/Accessible-Event-Planning.pdf)\n* National Autism Society: [A quick, easy guide to holding an autism-friendly event](https://www.autism.org.uk/get-involved/raise-money/do-your-own-thing/how-to-guides/holding-an-event)\n\n### Planning Accessible Events\n* [Creating Accessible Events](https://www.friendlylikeme.com/access-spotlight/creating-accessible-events)\n* [Make Things Accessible: Running Accessible Events](https://www.makethingsaccessible.com/guides/running-accessible-events/)\n* [Disabled Equality Scotland: How to organize an Inclusive and Accessible Event](https://inclusivecommunication.scot/how-to-organise-an-inclusive-and-accessible-event)\n* [University College London's Tips / Checklist for making events accessible](https://www.ucl.ac.uk/equality-diversity-inclusion/equality-areas/disability-equality/tips-checklist-making-events-accessible)\n* [University of British Columbia Accessible and Inclusive Event Planning](https://equity.ubc.ca/resources/accessible-and-inclusive-event-planning/)\n* [University of York: Inclusive and Accessible Events: Good Practice Guidance](https://www.york.ac.uk/media/abouttheuniversity/equality/documents/Inclusive-and-accessible-events-good-practice-guidelines.pdf)\n* Equality and Human Rights Commission: [Engaging with Disabled People An Events Planning Guide](https://www.equalityhumanrights.com/sites/default/files/housing-and-disabled-people-engaging-with-disabled-people-event-planning-guide.pdf)\n* [Independent Living Institute: Holding Meetings](https://www.independentliving.org/docs2/daakit45.html)\n* [Making in-person events accessible](https://communications.admin.ox.ac.uk/guidance-for-planning-and-organising-accessible-events#collapse2055661)\n\n### Planning Inclusive Events\n* Journal Article: Joo et. al., 2022 [Ten simple rules to host an inclusive conference](https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1010164)\n* [Creating Inclusive Conferences for Academics with Caring Responsibilities](https://warwick.ac.uk/fac/soc/impact/policybriefings/6_creating_inclusive_conferences_for_academics_with_caring_responsibilities.pdf)\n* Mozilla Event Guidance: [Planning Participatory, Accessible, and Inclusive conference sessions](https://docs.google.com/presentation/d/1kwHq6UYSOFWCjOrDCgcvmxByCX_dOr1qmBE7gAbj12s/edit#slide=id.g1161995780e_0_0)\n* Mozilla Event Guidance: [How to plan a session](https://docs.google.com/presentation/d/1k6Sft7YH2QrDzqzE6TZhociWVjXe7rLMDjAJ734qNKA/edit#slide=id.g1cd292f458d_0_75)\n* [World Cafe Design Principles](https://theworldcafe.com/key-concepts-resources/design-principles/)\n\n### Venue Accessibility Guidance\n* Shaping our Lives: [Venue accessibility checklist](https://shapingourlives.org.uk/report/venue-accessibility-checklist/)\n* Shaping our Lives: [Venue accessibility infographic](https://shapingourlives.org.uk/wp-content/uploads/2023/01/Accessible-venues-V3.png)\n* [Accessible Toilets: The world of accessible toilets](https://accessible-toilets.co.uk/2019/02/07/all-about-emergency-cords/)\n* [Creating Accessible Dining Spaces](https://www.friendlylikeme.com/access-spotlight/creating-accessible-dining-spaces)\n\n### Hosting Online Accessible Events\n* [University of Oxford: Making online events accessible](https://communications.admin.ox.ac.uk/how-to-plan-and-run-an-accessible-online-event#collapse2035421)\n* [Royal National Institute for Deaf People: Guidance on how to use accessibility features on video conferencing apps](https://rnid.org.uk/information-and-support/technology-and-products/video-conferencing-accessibility-meetings/)\n* Shaping Our Lives: [Throwing away the rulebook: Five things you should consider when planning interactive online events, to make them more inclusive](https://shapingourlives.org.uk/report/planning-inclusive-online-events/)\n\n### Creating Accessible Communications\n* UK Government Civil Service: [Dos and don'ts on designing for accessibility](https://accessibility.blog.gov.uk/2016/09/02/dos-and-donts-on-designing-for-accessibility/)\n* [MetaDocencia's Accessibility Profiles](https://www.metadocencia.org/en/post/perfiles_accesibilidad/) for developing accessible content.\n* [Ability Net: How to make documents accessible](https://abilitynet.org.uk/sites/abilitynet.org.uk/files/Creating-accessible-documents-Easy-Read.pdf?utm_source=Website0&utm_medium=CreatingAccessibleDocsEasyReadPDF&utm_campaign=EasyRead)\n* [Accessible Computing: Are text-only web pages an accessible alternative?](https://www.washington.edu/accesscomputing/are-text-only-web-pages-accessible-alternative)\n* [Email Accessibility: 17 Best Practices You Need to Follow](https://www.loopify.com/blog/accessibility-in-email-marketing/)\n* [Harvard University: Designing Presentations for readability](https://accessibility.huit.harvard.edu/design-readability)\n* [University of Kent: Make documents and text accessible](https://www.kent.ac.uk/guides/accessible-content/accessible-documents)\n* [University of Kent: Make presentations accessible](https://www.kent.ac.uk/guides/accessible-content/accessible-presentations)\n* [University of Colorado: Understanding PDF Accessibility](https://www.colorado.edu/digital-accessibility/pdfs)\n* [Easy Read by Disability Equality Scotland](https://disabilityequality.scot/easy-read/)\n* [Accessibility and assisted digital: Understanding WCAG 2.20](https://www.gov.uk/service-manual/helping-people-to-use-your-service/understanding-wcag)\n\n### Example Accessibility Guides\n* [Accessibility Guide for InterPride's Annual General Meeting & World Conference in San Diego](https://www.friendlylikeme.com/access-spotlight/interpride-san-diego)\n* [Atlanta Pride: Accessibility Guide](https://www.friendlylikeme.com/access-spotlight/atlanta-pride-accessibility-guide)\n\n\n(cl-mec-ppie-events-resources-reading)=\n## Further Reading\n* [The 7 Principles of Universal Design](https://universaldesign.ie/about-universal-design/the-7-principles)\n* (Book) [The Art of Gathering: How We Meet and Why It Matters](https://www.priyaparker.com/book-art-of-gathering) by Priya Parker\n\n\n\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/ppie-events/ppie-events-schedules.md",
    "content": "(cl-mec-ppie-events-schedule-planning)=\n# Creating Schedules and Agendas for Inclusive Events\nThe timing and design of your event, and making plans for how to accommodate the diverse needs of your attendees, are critical steps in developing a schedule or agenda for your event to facilitate the inclusion of people with lived experience. \n\nThis can involve considerations ranging from planning sufficient breaks between sessions to developing an action plan for inclusion and accessibility practices so people with lived experience can contribute and benefit from your event's activities.\n\nThis section provides guidance and recommendations for how to plan an inclusive and accessible event schedule (or agenda) and highlights what steps you can take to create a welcoming atmosphere where attendees with lived experience are heard and valued, and are able to equitably engage in your event.\n\nIt is crucial in your planning to prioritize inclusivity and accessibility in your event's scheduling and programming, and to recognize that many of the traditional approaches to schedules and agendas may create barriers or be inaccessible for people with lived experience or disabilities. \n\n(cl-mec-ppie-events-schedule-timing)=\n## Event Design: Timing and Event Duration\nWhen developing your event's program or agenda, you should consider the timing of your event's content. \nThis includes identifying when your event will start and end, the duration of your event and it's content and how you will structure the event content to make it accessible to an audience of both researchers and members of the public.\n\n(cl-mec-ppie-events-start-times)=\n### Start and End Times\nTo accommodate travellers, consider starting your event later in the day and finishing mid-afternoon. \nThis can help attendees who may not be comfortable travelling at peak times or have care/family responsibilities. \nIf your event needs to start early in the morning, consider hosting a welcome session that is not critical to attend. \n\nOrganizers should aim to avoid scheduling events on national holidays or religious and cultural days to accommodate attendees of various backgrounds, and depending on the scale of the event, you may also want to consider avoiding other days and timings that would make it difficult to attend for your audience. \nFor example, events during school holidays or sessions that overlap with school pick-up and drop-off times may make it difficult for people with school-age children to attend. \nYou can view an interfaith events calendar here: https://www.interfaith-calendar.org/.\n\nFor many members of the public, meeting outside working hours can be easier due to otherwise conflicting schedules as they may be engaging in research projects as a volunteer and would find it difficult to get time off from their workplace to attend an event. \nFor others however, such as those with caring responsibilities, the opposite is true. \nYou should seek to work with your specific community to understand what their needs may be, and find a time that works for them. \n\nWhen planning the dates for the event, it is also useful to consider the potential travel times of your attendees. \nIf your event takes place in-person, try to choose a date and start time that takes into account how long your attendees will need to travel. \nFor example, having your event start at 10:30 a.m. allows for inter-city travel the morning before the event.\n\nEvents that occur on weekends or during working hours can negatively impact the ability of people with lived experience who have jobs or caregiving commitments to attend events. \nBy considering when your attendees will be required elsewhere, you will be more likely to find a time that suits everyone.\n\nAlthough scheduling is difficult for any form of event organizing, please take the time to consider what barriers an event's timing will have on your ability to be inclusive of people with lived experience and refer to your local area for any specific dates to avoid. \n\n\n(cl-mec-ppie-events-session-duration)=\n### Session Duration\nYour schedule should take into account breaks and meal times, and carefully plan the length of its sessions. \n\nIf your event takes place in person, make sure to allow for sufficient time for people with lived experiences and/or disabilities that affect mobility to move between locations. \nFor example, consider how long it would take to get to an accessible elevator and then travel between floors, or how far away accessible restrooms are. \nIf your main room has only one exit and a large audience, it may take significantly longer to exit the room and cause attendees stress as they have to rush between sessions. \n\nAs a rule of thumb, try to plan for the most important parts of your event's content to be shared within blocks of time that are under 40 minutes.\n\nBecause many events are planned in 1-hour or 1.5-hour timing blocks, consider choosing shorter sessions or incorporating breaks within your session. \nThis can be done in addition to allocating 5-10 minutes for an introduction and session set-up.\nBreaks and shorter session lengths will help reduce the cognitive strain affecting many people with lived experience of cognitive disabilities.\n\n> **Example 1: 1-hour Focus Group Event**\n    - 10 minute welcome, Code of Conduct, and session introduction\n    - 40 minute Discussion between participants\n    - 10 minute break or 10 minute thank you and session close\n\n> **Example 2: 1-hour Workshop Event**\n    - 5 minute introduction \n    - 20 minute session\n    - 5 minute break\n    - 20 minute session\n    - 10 minute break or 10 minute thank you and session close\n\nIt is best to get feedback and input from representatives with lived experience when planning your session timings. \n\nTry to get feedback on plans for your event as early as possible and ensure that you work with the community or a representative with lived experience when deciding on the format and duration of your specific event.\n\n(cl-mec-ppie-events-event-duration)=\n### Event Duration\nIn addition to session length, it is also important to consider how your event will be structured to support the involvement and engagement of people with lived experience who are attending for the purposes of sharing their lived expertise. \n\nIf you are organizing a multi-day conference, consider picking either a single day or a repeating timeslot that features any content specifically important for people with lived experience. \nFor example, Day 1 of a 3-Day event might schedule the majority of sessions focused on public engagement and lived experience, followed by Day 2 which could focus on technical workshops and other content. \nAlternatively, if your conference is online, consider choosing a repeating session time from 10 a.m. - 1 p.m. on all 3 days that could focus on lived experience content. \n\nThis can support the engagement and contributions of people with lived experience who volunteer their time to engage in research, as well as people with a lived experience that significantly impacts their energy levels. \n\nWhen deciding where in your schedule to plan content discussing PPIE, ensure that you work with, or ask people with lived experience from your specific audience what would work for them, instead of assuming and choosing times that are otherwise empty in the schedule.\n\n(cl-mec-ppie-events-schedule-content)=\n## Event Content: Planning for Engagement\nWhen identifying the content of your event, you should spend time identifying what type of content and sessions attendees with lived experience would be interested in, what \"engagement\" means for your specific event, and how you will ensure that attendees with lived experience are able to engage in your event.\n\nBy clearly defining what engagement looks like, and also how to engage, your event will be more accessible to people with lived experience and also reduce potential barriers and anxieties for participants.\n\n(cl-mec-ppie-events-defining-engagement)=\n### Defining Engagement for Your Event\nProviding guidance on what engagement means for your specific event can help to set expectations, and also reduce potential barriers and anxieties that attendees with lived experience may have when trying to engage in your event.  \nFor example, people with an experience of cognitive disability, as well as autistic people, can find unstructured sessions daunting which will negatively impact their ability to fully engage. \n\nThe guidance you provide will be different depending on your event. \nFor example, a public lecture may ask attendees to submit questions for the speaker at the end of the lecture. \nFor this example, indicate in your guidance how much time will be used for questions, how to use any online software you may be using to collect audience questions, and also how many questions you are likely going to answer. \nThis can help avoid any feeling attendees may have about being ignored or not heard if their question is not addressed. \nEnsure that the moderator is taking questions from a diverse subset of the audience.\n\nFor other events that require active participation, such as a focus group or discussions, consider including guidance on the format discussions will have, and if there are any specific topics or prior material attendees should be familiar with in order to take part. \nDetermine if your event will facilitate discussion between attendees, or if the sessions are to be chaired and led by a facilitator. \nCommunicating to attendees that participation is expected, and what the specific format of participation will be, can help alleviate worry or anxiety that attendees may have, and also set the session up for success. \n\n(cl-mec-ppie-events-engagement-pathways)=\n### Establishing Pathways for Engagement\nPeople with lived experience may have varying comfort levels with public events, in addition to concerns about barriers they have faced during previous events.\nConsider providing explicit guidelines and options for engagement to ensure that everyone is able to contribute at their own pace and in a manner that suits their preferences and needs. \n\nFor example, a discussion or contribution-based event may consider offering both spoken and written contributions. \n\"Speaking\" group(s) can be facilitated by a note taker, and the \"Writing\" group(s) can work together in collaborative documents. \nYou may also consider recording your event's content and making documents available online as part of supporting asynchronous contributions from people in multiple time zones or who may experience difficulties in contributing during \"live\" events. \n\nConsider designing sessions that allow for multiple channels of engagement and accessibility practices (such as electronic and in-person communication) in order to be as inclusive of as many people as possible.\nBecause all events are limited by the resources available to plan and host the event, it is important to provide clear guidance on what engagement means for your event and to work with representatives with lived experience to identify what methods of engagement your event will need to support.\n\nEnsure that you provide an outline of your guidance in both a written format before the event, and also include an explanation in your event introduction of what engagement is expected, as well as what pathways are available for contributions.\n\n(cl-mec-ppie-events-defining-goals)=\n### Sharing the Goals of your Event\nConsider outlining and sharing a set of goals or planned outputs from your event with your audience when you begin a session. \nFor example, a workshop may present learning objectives or an example of the planned finished product. \n\nBy clearly articulating the event's objectives, you will be able to create a sense of transparency and purpose for the session. \nThis clarity allows all attendees, including people with lived experience, to understand what to expect from the session and reflexively evaluate whether their participation aligns with those goals. \n\nAdditionally, consider if your goals are measurable so that you can more easily conclude after the event whether the goals were reached. \n\nSharing an event's goals can foster a sense of trust among attendees by presenting how the perspectives and contributions of people with lived experience are valued by the research project team. \nThis can be especially important for \"data-driven\" research that otherwise places a large focus on algorithmic techniques and may make lived experience contributors feel unwelcome and excluded from the project. \n\nInclusive research requires not only active participation from people with lived experience and diverse backgrounds, but also actively ensuring that their opinions and perspectives are heard and able to influence the research directly. \nBy orientating your attendees around a goal, you can provide a shared understanding that will support meaningful and inclusive engagement in your event.\n\n(cl-mec-ppie-events-inclusive-content)=\n### Planning for Inclusion\nAs part of planning the program, consider how you will support and facilitate relationship-building and the active inclusion of people with lived experience in your event's sessions.\n\nResearch events can often be focused on actively engaging researchers who have a clear pathway to engagement and involvement in an event, for example explaining their research or asking questions of colleagues to better understand what research methods led to a new discovery. \nIf your event plans to involve people with lived experience, you should consider designing your event's sessions to allow for experts through experience to engage in the material equitably alongside any attendees who are experts by profession, instead of being segregated out for being \"non-researchers\". \n\n```{note}\nMozilla has developed a framework called [ADIDS](https://docs.google.com/presentation/d/1k6Sft7YH2QrDzqzE6TZhociWVjXe7rLMDjAJ734qNKA/edit#slide=id.g1cd292f458d_0_19) that can help event organizers plan sessions that actively engage and involve a diverse audience.\nYou can read more about ADIDS on the [MozFest website](https://www.mozillafestival.org/en/facilitator-guide/designing-a-successful-session/), or by working through the framework for your own event.\n```\n(cl-mec-ppie-events-schedule-rapport)=\n### Building Rapport with Event Design\nThe active involvement of people with lived experience is incredibly important because it enables the design and delivery of research and outputs that are informed by lived experiences, and better reflects the needs of the communities that stand to benefit the most from research interventions.\n\nYou can encourage inclusive participation from people with lived experience by making use of inclusive and \"unconventional\" approaches in your event. \nFor example, consider brokering conversation between attendees in a \"World Cafe\". \n\nWorld Cafes bring rotating tables (virtual or physical) of people with differing expertise together to engage in evolving rounds of dialogue on a specific topic. \nThe smaller grouping allows for more conversation between people and can be less daunting for people with lived experience to engage in. \nYou can read more about the World Cafe method on [The World Café Community Foundation's blog](https://theworldcafe.com/key-concepts-resources/world-cafe-method/). \n\n(cl-mec-ppie-events-moderators-facilitators)=\n### The role of Moderators and Facilitators\nFacilitators and session moderators can help to foster a safe and supportive environment for people with lived experience to share their perspectives and insights. \nTheir role at an inclusive event is to provide safe and supported opportunities for active participation from attendees, act as a catalyst for conversation, and to help align discussion and any questions with the goals of the session and event. \n\nIf you are able to involve facilitators or moderators at your event, consider how they can actively promote the engagement of - and contributions from - people with lived experience. \nThis is especially important for events that focus on discussion or require active participation (such as the World Cafes we discussed in the previous section). \nMany people with lived experience may not have a lot of experience, or had the opportunity to develop skills in public speaking or rhetoric and can therefore be at a greater risk of getting left out of conversation. \n\nJust inviting people with lived experience to your event is not sufficient if there are barriers to their participation.\n\nThe burden to participate, and to find pathways to engage should **not** be the sole responsibility of attendees those with lived experience, and should be carried by the facilitators and event organizers.\nIt is the responsibility of the organisers to implement inclusion and accessibility practices in consultation with people with lived experiences. \n\nConsider if your moderators and facilitators would benefit from support and training on neurodiversity and barriers to participation that can be delivered before the event.\n\nAlthough it is becoming more common for people with lived experience to become self-advocates and receive training in public speaking, it is important for researchers and event organizers to consider, and make use of, moderators and session facilitators in order to uphold inclusive and equitable engagement practices. \n\n(cl-mec-ppie-events-icebreakers)=\n### Using Icebreakers and Teambuilding\nAdditionally, you may consider using a collaborative activity to open your session such as an icebreaker or another team-building task. \nThis can help build rapport among event attendees, and orientate everyone towards a shared goal before the formal parts of your session begin.\n\nBy establishing an active partnership between people with lived experience, researchers, and other experts by profession in your event's sessions, you will be well-positioned to support an equitable space for all attendees to meaningfully engage with your event.\n\n(cl-mec-ppie-events-inclusive-program-planning)=\n## Creating an Inclusive Program\nWhen developing your event's program or agenda, ensure that you have established a pathway or mechanism to get feedback and input from people with lived experience. \nIdeally you will include people with lived experience in the planning of an event's program and agenda. \n\nInvolving people with lived experience in the planning and delivery of events ensures the perspective  of people with lived experience is built into the dialogue throughout your event. \nActive involvement could be including people with lived experience in the planning committee of your event, and asking potential attendees for feedback on the planning and materials of your event. \nYou should aim to have community members or a representative involved in all aspects of planning. \nFor larger events that are not solely focused on PPIE, consider establishing roles and responsibilities for PPIE contributors on planning committees that are not solely limited to tasks related to their own participation or the event's PPIE activities.\n\nActive involvement can also help organizers develop a greater understanding of what is important from the perspective of people with lived experience and ensure that the proposed structure and content of the event is shaped in a way that will meet the needs of the potential attendees.\n\nTheir involvement can offer insight and perspective into the specific challenges and needs of individuals with disabilities and any specific lived experience your event is focused on, and also help identify research to be highlighted and promoted at your event. \n\nIf you are including a person, or group, with lived experience in the planning, ensure that you are appropriately compensating and supporting them for their expertise.\n\nIf you are unable to include representatives on your planning team, try to prioritize the engagement of, and feedback from, the specific communities that will be in attendance. \n\nPeople with lived experience may offer different ideas about how to present the materials, and their insights will be invaluable in developing an inclusive event program that is genuinely accessible, respectful, and responsive to all participants.\nConsider if you are able to both involve representatives in your planning committees, and also get feedback from a wider community. \nThis is because a single representative may not be familiar with all the requirements and needs from your attendees, which in many cases may be very diverse. \nAsking for feedback from other participants remains key. \n\nThe two options discussed above are ideal, as people with lived experience will be able to provide insights and perspectives on how to encourage and support the involvement and engagement of your attendees.\nThis perspective can be helpful when identifying what sessions or content should be included in the program, and will support you in creating a more inclusive and relevant program for your audience. \n\n\n(cl-mec-ppie-events-session-schedule)=\n### Session Schedule\nWhen planning your event's content schedule, reflect back on the purpose of your event, who your attendees are going to be, and why they will be attending your event.\nThis can help to narrow down and decide on key event content, ensure that there is a balance of topics that are diverse enough to appeal to a range of attendees, and plan for content that is interesting and accessible to your attendees.\n\nAt larger events, it may not be possible to develop a full schedule with sessions inclusive and ready for a general audience of people with lived experience. \nIn this instance, event organizers should consider both how this will be communicated to people with lived experience in attendance, and also what alternative arrangements will be offered to support attendees with lived experience.\nIndividuals should be free to select which parts of the event they participate in. \n\n```{note}\nEvent organizers should not always assume that \"people with lived experience\" is synonymous with \"general public\" as many people with lived experience of disabilities or medical conditions are experts in their profession as well as in their experience.\nIf your event is designed to be inclusive of a group of people with a **specific** lived experience, it is important to involve them in the event planning in order to identify and get feedback on session planning. \n```\n\n(cl-mec-ppie-events-schedule-diverse-speakers)=\n### Including Diverse Speakers\nWhen identifying sessions or speakers for your event, it is incredibly important to include people with lived experience in your speaker list or as a panellist. This is especially true for events and projects that benefit from co-creation or collaborations with people with lived experience.\n\nBy supporting and promoting representatives with lived experience at your event, you will actively foster an inclusive environment by providing a platform for those who have lived through similar experiences to share their perspectives, insights, and expertise thus creating a more relatable and empathetic environment for all attendees. \n\nSpeakers who present on their lived experience may share perspectives that resonate deeply with an audience, and can be the catalyst for attendees with lived experience to understand that their perspectives and experiences are valued.\nAdditionally, it may start a dialogue for attendees without lived experience as they would have a deeper understanding and appreciation for their lived experience colleagues and collaborators. \n\nThis core idea around representation can help to establish a shared space between attendees where it feels safe and supportive to engage in a dialogue about lived experience. \nThe presence and promotion of these speakers can help to validate and legitimize the significance of personal experiences within research, and can facilitate a more inclusive and balanced discourse at your event.\n\nPeople with lived experience can offer practical, real-world insights that might not be captured solely through academic or research-based perspectives. \nBy hosting sessions delivered or facilitated by people with lived experience, all attendees will be able to engage with and better understand what \"lived experience\" means for a specific person or group. \nThis is important because even for research projects that involve participatory methods, not all researchers may have the opportunity to directly engage with the people with lived experience involved in the project. \nHaving speakers or session leads present from a place of lived experience can give all attendees the opportunity to learn and engage with the process of participatory research as a whole, and ensures that researchers, research staff, and other professionals will develop a more comprehensive understanding of the opportunities and challenges faced by people with lived experience. \n\nAdditionally, because the goal of research events is to provide opportunities for discussion and the learning of different research skills and practices, the inclusion of lived experience speakers can complement and enrich research insights, and offer a more holistic and authentic understanding of different contexts and experiences. This may also have the added benefit of improving the research conducted by attendees, or influence project design in the future.\n\n\nIncluding and highlighting speakers or session leads with lived experience and offering a diverse range of perspectives both broadens the scope of representation, and can prevent assumptions and stereotypes about people with lived experience.\nThis can then act to further empower other attendees with lived experience to become more actively involved in your event and research as a whole.\n\n\n(cl-mec-ppie-events-event-descriptions)=\n### Providing Event Descriptions\nConsider including a description of your intended audience and any expertise requirements in your session information. \nEnsure that these session descriptions, the program, and any organisational information are written using {term}`Plain Language` that is able to be understood by your audience. \n\nInclude session descriptions in the program of events. This description should include:\n- a short and clear title of the session or event\n- the name of any hosts, facilitators, or moderators\n- a short abstract about what the session is\n- information about the goal of the session\n- information about what level of engagement is expected in the session\n- details on who the intended attendees are for the session\n- any additional information such as location, start time, and Zoom links if applicable\n\n> For example:\n> * **Title:** AI approaches and methodologies across AIM\n> * **Description:** A roundtable discussion to map the different applications of AI methods across AIM investments with the goal of identifying similarities and articulating nuanced differences across AIM consortia projects. Pens and paper will be provided. This session will involve active discussion between small groups of attendees that will rotate every 15 minutes.\n> * **Facilitators:** Alan Turing, Ada Lovelace, Charles Babbage, Katherine Johnson\n> * **Audience:** Technical leads, statisticians, and data-intensive researchers across the AIM consortia\n> * **Time:** 14.00 - 15.30. Comfort break from 14:45 - 15.00. \n> * **Location:** The Great Hall.\n\n```{note}\nYou can find other inspiration and examples of inclusive session descriptions on the [Mozilla Festival (MozFest) website](https://schedule.mozillafestival.org/schedule).\n```\n\n(cl-mec-ppie-events-parallel-sessions)=\n### Using Parallel Sessions\nConferences and other large events can often bring together a wide range of attendees with an equally wide range of experiences and expertise. \nFor these events, it may not be ideal to curate all content and sessions suitable for a general audience. \nHowever, in this case, it is very important that organizers clearly communicate about the content of sessions, and that sessions are labelled appropriately on all promotional material. \n\nConsider if you are able to run \"parallel\" tracks or sessions and dedicate one of these tracks to sessions that would be of interest to - and inclusive of - members of the public and people with lived experience. \n\nEnsure that your sessions which focus on people's lived experiences, and any research methods which actively involve members of the public, are able to be attended by researchers and other professionals in attendance. \n\nIt can be a \"*convenient*\" strategy to plan a general audience session as an alternative option for people with lived experience to attend in favour of a highly technical session that would be of interest to researchers or attendees with a background in quantitative science. \nFalling into this trap can lead to a segregation between people with lived experience and their research colleagues which results in a knowledge and involvement disparity. \nIt is important to give researchers the opportunity to attend sessions and events that focus on lived experience and public involvement. \n\nConsider running any highly technical sessions in parallel with coffee breaks or networking, and then highlighting that researchers and attendees with a technical background are welcome and encouraged to attend sessions with a lived experience focus. \n\n(cl-mec-ppie-events-session-type)=\n### Creating a Program: Session Type\nDifferent session formats may help or hinder the engagement and participation of people with lived experience in your event. \nFor example, panel discussions, workshops, and interactive sessions, all present different barriers and levels of support depending on the specific needs of your attendees. \n\nConsider using a mix of oral presentations, panel discussions, videos, workshops and breakout sessions, as well as providing alternatives for communication and participation.\n\nBy providing various content types, you will be able to support a wider range of needs and preferences and ensure that there are accessible options for all participants.\n\n\nEnsure that you actively label and communicate what the session formats will be. \nThis will allow attendees to self-select the sessions and event content that they feel most comfortable engaging with. \n\nIf your event can only support one type of format, consider asking for input and feedback from either your community or representatives with lived experience. \nThis will ensure that you choose the format option that will support your specific community of people with lived experience best. \n\n(cl-mec-ppie-events-schedule-conclusion)=\n## Conclusion\nTaking the time to carefully consider your event's schedule and content will ensure all attendees feel valued and are able to engage in your event.\n\nIf you are able to, the best way to design an inclusive event that supports the involvement of people with lived experience is to actively involve and get feedback from people or the community with lived experience in your planning. \nInvolving people with lived experience from the onset can help in identifying potential barriers as well as curate topics and sessions that are of interest to a diverse group of attendees. \nThe active involvement of community representatives is often the key to an event becoming welcoming, inclusive, and accessible for people with lived experience.\n\nFinally, by designing a schedule that provides flexibility around breaks and types of engagement, offering a variety of session formats that are clearly communicated, and including people with lived experience as co-organizers, hosts, and facilitators, you will create an event that can effectively support a community of people with lived experience.\n\n\n\n\n\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/ppie-events/ppie-events-socials.md",
    "content": "(cl-mec-ppie-events-social-and-networking-guide)=\n# Inclusive Social and Networking Events\nSocial events, dinners, and even standing in lines for coffee can be some of the best times for attendees to get to know one another, identify potential collaborators, and spark ideas.\n\nAs an organizer, you should consider how to make these serendipitous opportunities for networking and socializing as accessible as possible for people with lived experience who are attending your event.\n\nDepending on the size and format of your event, this may look like structured networking sessions, a social dinner, or a 15-minute social break at the start or middle of your event. \n\nPlease consider some of the suggestions below, and ensure that you take the time to consider and address any barriers that your specific attendees may face in joining social settings.\n\n(cl-mec-ppie-events-social-events-timing)=\n## Choosing a Time for Networking  \nIdeally, at least one networking or social event will take place during the main event's program. \n\nSocial and networking sessions are key elements of conferences and other knowledge-sharing events. \nSocial events provide attendees with opportunities to share ideas, connect with potential collaborators, and build partnerships between attendees at different institutions.\nThey can be valuable spaces for researchers to follow up with a speaker or person with lived experience who engaged in discussions at the event.\n\nHowever, networking sessions often take place at the end of the day which can lead to the exclusion of many attendees such as those with caring responsibilities, and many others who experience fatigue after a full day of active engagement. \n\nConsider hosting a social breakfast or networking session before lunch for all attendees. \nThis can provide an opportunity for people to meet one another and join discussions before the formal start of your event. \n\nAdditionally, for events taking place in person, consider hosting in-person networking events **before** a sit-down lunch or meal. This will both help people with anxiety who may feel uncomfortable and unsure of where to sit and eat lunch, and can also act as an ice breaker to facilitate conversation between researchers and attendees with lived experience. \nHosting a social session before sit-down meals can help these attendees connect with other people and identify who to sit with during the meal. \n\n\n(cl-mec-ppie-events-name-tags)=\n## Identification and Name Tags\nIf your event includes name tags or badges, ensure that you ask attendees for their preferred name, and display the name they provide. \n\nThis is important for both in-person and online events. \n\nConsider offering to include pronouns on attendees' badges or virtual contact cards to support attendees being gendered correctly. \nPronouns should be optional because while many people find the practice welcoming, others can feel unsafe in a situation where they are forced to display pronouns.\n\nMake organizers and other event staff's badges clearly identifiable and differentiated from attendees' badges.\nThis is useful for finding a session moderator to ask questions to during a session or for an organiser to ask directions at in-person events. \nFor online events, consider adding your role and a common identifier to your name in Zoom and having organizers share a virtual background. \nIt is important to clearly identify organizers and people who are able to help as part of supporting all attendees. \n\nAt in-person events, consider using lanyards to display name tags or badges. \nMany clip-on name tags assume that people have a pocket on the front of their shirts or jackets, however, many blouses, dresses, and shirts designed for women do not provide these pockets and therefore will not be able to easily display a clip-on name badge. \nClip-on badges can also be difficult for people with fine motor disabilities or a disability that would otherwise restrict their ability to pin the clip onto their shirts. \n\n(cl-mec-ppie-events-conversation-guides)=\n## Providing Guidance and Sparking Conversation \nDepending on the audience for your event, you may want to consider creating and sharing guidelines or suggestions on how to make the most of networking sessions. \nThis can be especially helpful for autistic attendees, or attendees with social anxiety. \n\nAdditionally, researchers and professionals who share a niche field may know one another from previous events or collaborative projects and may find it easier to identify friends or people they wish to speak to during networking events. \nConversely, attendees with lived experience may not have had the opportunity to establish long-standing connections with several researchers and therefore may feel daunted by having to network at your event. \n\nConsider how to support your attendees from all backgrounds engage in networking. \nYou may consider providing question prompts and designing your networking and social spaces so that people can move between conversations easily. \n\nProviding a guide acknowledges the diverse needs of all attendees and promotes inclusivity by recognizing that everyone has unique challenges that may make social activities and networking more difficult.\n\nWe have curated a few topics or themes you may want to consider including in any guidance you provide below: \n\n(cl-mec-ppie-events-networking-formats)=\n### Information about the format\nIt can be helpful for many people to have a structured format for social events, especially those who will be attending your event as volunteers and may not have met any of the other attendees before the session. \n\nConsider deciding on and including a title, goal, and suggested question prompts in the session description. \nThis can provide a shared understanding among attendees of what is expected during any social session at your event. \n\nAlthough most social events are traditionally unstructured to allow for emergent discussion and knowledge sharing, it can be beneficial to provide guidance or prompts to start any social sessions and then allow for unstructured conversation time later in the session.\n\n(cl-mec-ppie-events-networking-expectations)=\n### Setting Expectations\nIn addition to information about the format that your social or networking event will have, consider including clear and explicit instructions about what engagement would be suitable and appropriate for your social activities.\n\nThis may be the first research-focused event for many of your attendees, and it can be helpful to surface many of the implicit social norms and practices of research events.\n\nFor example, poster sessions at research events are often considered to involve short interactions between a researcher and a group of people. \nAt a poster session, an early career researcher may have the opportunity to share and explain their research project. \nThese sessions would not be the best forum for public discourse about an attendee's lived experience or for criticizing the purpose of the work that is being presented.\nInstead, poster sessions may be useful to make introductions with other attendees who are interested in a particular topic, and are an opportunity to learn about the research that has been conducted by asking questions about the research that person is presenting on their poster.\n\nDepending on the audience, your guide may need to be more or less detailed.\nBy providing guidance on the type of sessions, and what is expected in each setting, you can help facilitate more constructive and collaborative interactions between attendees, and reduce the likelihood of misunderstandings.\n\n(cl-mec-ppie-events-conversation-prompts)=\n### Sparking conversation between attendees \nSocial skills are fundamental in building relationships, sharing ideas, and collaborating on research endeavours.\n\nProviding guidance on how to start conversations and socialize effectively can help support attendees with lived experience in developing professional connections and meaningfully engage in your event.\n\nDepending on the size and timings of your event, you can consider setting prompts such as \"find a fellow attendee who has the same favourite movie as you\", or \"introduce yourself to 5 people you have never met before, and find 1 thing you have in common\". \nPrompts such as these can provide attendees with a goal for the session and help attendees to start conversations with one another. \n\nPopular conversation starters can also be providing a blank space or additional sticker for attendees' name tags with the prompt \"Ask me about ...\". \nThis can help attendees find conversations with similar interests and can also help to spark initial conversations. \n\nGood conversation prompts or ice breaker questions are both interesting for someone to think about and answer themselves, and also make attendees curious to hear everyone else’s answer.\n\nKnowing how to start a conversation and navigate social interactions can help boost attendees' confidence and support them in actively engaging in any social or networking activities.\n\n(cl-inclusive-events-introduction-guide)=\n#### How to introduce yourself \nYou may consider providing examples of how to introduce yourself and start conversations. \nPop-culture references providing good examples of how to introduce yourself can be found in the 1987 movie [The Princess Bride](https://en.wikipedia.org/wiki/The_Princess_Bride_(film)) featuring a character called Inigo Montoya introducing himself ([view clip on YouTube](https://www.youtube.com/watch?v=YSZs2IOSGzE)), or Pixar animation's movie [Up](https://en.wikipedia.org/wiki/Up_(2009_film)) featuring a character named Russell ([view Russell's introduction on Youtube](https://www.youtube.com/watch?v=ZzYtToQ5mrk)).\nThese characters make excellent introductions by following a helpful and informative format:\n- they state their name,\n- say what their background or goal is,\n- and then explain what someone can expect from an interaction with them. \n\nFor example: \n> \"Hi, I'm The Turing Way. I'm an online handbook to help people learn and do reproducible, ethical, and collaborative data science.\n> I'm looking for collaborators on my guide to hosting inclusive research events, what is the best event you've ever been to?\"\n\nConsider modelling the introduction format you would like attendees to use anytime you introduce yourself as organizers of the event, as well as asking any of the session moderators or facilitators to follow a recognizable format.\n\nIt can also be helpful to share a list of attendees (if this information is able to be shared) in an information booklet or alongside the event schedule. \nThis can help attendees identify people whom they would like to connect with or speak to during any social activities or networking, before the start of your event. \n\nYou may also want to consider asking attendees to add a name pronunciation guide during registration that you can place alongside the attendee list. \n\n(cl-inclusive-events-networking-conclusion)=\n## Conclusion\nSocial events can often be uncomfortable and daunting for many people for a variety of reasons.\n\nBy providing a guide and establishing a structured approach to any social activities you may be able to reduce potential anxieties that attendees may have and support all attendees being comfortable in fully engaging with your event.\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/ppie-events/ppie-events-tech.md",
    "content": "(cl-mec-ppie-events-technology)=\n# Technology Considerations for Inclusive Events\nWhen planning an event that will be attended by people with lived experience, event organizers should carefully consider various technology aspects to ensure inclusivity, accessibility, and a seamless experience for all participants. \n\nThis section focuses on considerations and recommendations around using different technologies to support the inclusion of people with lived experience at in-person, hybrid, or online events. \n\n(cl-mec-ppie-tech-prerequisites)=\n**Helpful Resources within The Turing Way**\n\n| Prerequisite                           | Importance | Notes                                             |\n| -------------                          | ---------- | ------                                            |\n| {ref}`cl-mec-remote-collab-guidelines` | Helpful    | Guidance on running remote events                 |\n| {ref}`cl-mec-hybrid-collab-challenges` | Helpful    | Identifies common barriers faced by hybrid events |\n\n\n(cl-mec-ppie-events-hybrid)=\n## Hybrid Events as an Accessibility and Inclusion Strategy\nHybrid events, by default, prioritize accessibility and the inclusivity of attendees with lived experience, making them the ideal choice to engage an audience of individuals with diverse lived experiences. \nOnline sessions can be better suited to individuals who take part in research as a volunteer and find it difficult to attend in-person events. \nConversely, in-person events can make use of local resources to support engagement and may be preferred by others who face barriers to joining an online event.\n\nThe integration of both in-person and virtual components ensures that participants can engage in a manner that suits their preferences and circumstances.\n\nThe flexibility of hybrid formats recognizes the barriers faced by many people with lived experience. \nProviding a virtual option can overcome any physical resource barriers presented by in-person only events. \nThis flexibility also accommodates the diverse schedules and responsibilities of potential attendees, and takes steps to acknowledge any additional scheduling challenges that may be faced by people with lived experiences.\n\nAlthough planning and hosting hybrid events often requires more resources to be successful, by making your event hybrid you can better prioritize accessibility practices and the inclusion of attendees with lived experience.\nThis empowers a wide range of participants to contribute and benefit from your event's content and community.\n\nIf you are planning a hybrid event, please read The Turing Way's {ref}`Chapter on Hybrid Collaboration<cl-mec-hybrid-collab>` and specifically the {ref}`Subchapter on Guidelines for Hybrid Collaboration<cl-mec-hybrid-collab-guidelines>`.\n\n(cl-mec-ppie-events-calendar-invites)=\n## Using Email Reminders and Calendar Invitations\nMany of your attendees will maintain a very busy schedule and often take part in multiple different activities. \nThis will be true for both your research, clinical, and lived experience attendees - and everyone may benefit from the support of reminders and calendar invitations for your event. \n\nCalendar invites and email reminders can be especially useful to people with lived experience of health conditions, disabilities, and other experiences that add additional commitments and time constraints to their daily life. \n\nConsider sending both a calendar placeholder invitation for your event, and email reminders the week before, the week of, and the morning of your event. \nThis can help remind your attendees of their registration and help put the important information about your event at the top of their email inbox.\n\nIt can also be helpful to utilize the subject line of your email with important information. \nConsider including the date and title of your event, in both the calendar invitation and any email reminders that you send. \n\n```{admonition} Case Study\n:class: tip\nThe Public and Patient Involvement and Engagement community for Multiple Long-Term Conditions has highlighted the importance of sending out reminder emails the week of the event, and the morning of the event. \n\nThis was because medical appointments had often been scheduled after an event's \"Save the Date\" had been sent and many community members valued the reminders. \n```\n\nEnsure that any email address you send invitations from is able to contact your attendees (and not flagged as a spam email account). \nAnd additionally, ensure that your attendees can respond to an email address or inbox (try to avoid using a \"no-reply\" email provider when sending invitations).\n\nYou may suggest that attendees add your event's core email address to a list of trusted senders, or you can also ask for feedback from attendees leading up to an event, which allows you to identify if your emails have been received. \n\n### Reaching attendees without email access\nYour event may engage communities and people with lived experience who have barriers to accessing email or the internet regularly. \n\nConsider how you will keep in contact with these individuals, and what additional resources and safeguarding your organizers and staff members may need. \nFor example, if attendees cannot access email, what other communication channels can be used. \nIf you are able to send out information and keep in regular contact with the community through the telephone, social media, or a group chat, consider devoting resources towards a \"work phone\" for organizers so that they do not need to give out their personal phone number to attendees.\n\nIf this is the case for your event, it will be very important to source solutions from, and work alongside the community with that specific lived experience when planning your event. \n\n\n(cl-mec-ppie-events-technology-guides)=\n## Technology Guides\nEven if the technology used during your event may be considered common or ubiquitous, it is important to recognize that all attendees will have had a different level of experience and exposure to technology. \n\nWhile many people with lived experience may be experts in the latest technology, this may not be the case for all attendees. \n\nConsider developing and providing tutorials and guides for each different technology tool that your attendees will interact with at your event. \nThis is important for both in-person and especially so for online or hybrid events. \n\nThis includes guides for technology such as [Zoom](https://zoom.us/), [Slido](https://www.slido.com), [Slack](https://slack.com/), and any interactive software such as Miro or Microsoft Whiteboards. \nBefore completing your guide, check if the tool or platform provides any documentation or tutorial material as part of their onboarding. \nDocumentation provided by the developer can often highlight any accessibility features specific to that tool as well as being written for a general audience with no previous experience with the tool.\n\nEnsure that these guides are written in an Easy-Read and/or [{Plain Language}def<Plain Language>] format so that they clearly explain both how to access, and how to use any of the technology required to engage at your event.\n\nThese guides should be provided before your event starts to allow attendees to familiarize themselves with the technology and troubleshoot any issues ahead of time. \n\nAlthough you may not be able to individually check with each attendee, providing guides and allocating time during your event for participants to learn and familiarize themselves with the tool can help to ensure that all attendees are comfortable using the platforms and tools of your event. \n\n```{warning}\nYou may want to consider how you will ensure that all participants are able to access any tools or platforms.\n\nFor example, by including an icebreaker or introductory activity that is completed by attendees. \n```\n\n(cl-mec-ppie-events-technology-final-checks)=\n## What to check the day of the event\nAs part of hosting, is it important to make time before the event starts to ensure that the technology supports you planned for are working and able to be implemented. \n\nFor example:\n* Check that any slides or presentations that will be shown during your event are legible and able to be displayed on your equipment. \n* Check that any closed captioning software that you are using is functional and that the transcripts are able to be displayed and accessed by attendees.\n   If you are using live (human) captioning (which is more accurate than AI captioning and provides access in real time) or sign language interpreters, make sure connections to these people are functioning.\n* Run through any slide or presentation changes to check that any video or slide transitions do not display bright flashes which present a health risk and can trigger photosensitive epilepsy\n* Check that audio induction loops are working and accessible to any attendees who need them.\n* Test the internet, cameras or recording equipment, and lighting. \n* Ensure that wifi and cellular networks are accessible throughout the venue for any attendees who may need to check in with carers or other support staff who are not present at your event. \n* Ensure that there is clear guidance that is readily accessible to attendees in the event of a technical issue. \n\n\nBecause this is not an exhaustive list, it is important to collaborate with participants with lived experience to identify and implement relevant accessibility practices. \nThey can often assist you with knowledge, insights, and strategies based on what they have learned from attending and organizing events themselves.\n\nWhere possible, involve representatives with lived experience in your event planning and work with a community to ensure that any barriers introduced by technology use at your event can be addressed and mitigated. \n\nThis can help your event create an inclusive and accessible environment, and ensure that individuals with lived experiences are able to fully participate and contribute to your event.\n\n\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/ppie-events.md",
    "content": "(cl-mec-ppie-events)=\n# Hosting Events with Members of the Public\nA guide for involving members of the public at research events.\n\n```{figure} ../../../figures/public-and-patient-involvement-and-engagement.*\n---\nheight: 500px\nname: Public and Patient Involvement in Research\nalt: Members of the public and people with lived experience of medical conditions are health care are shown collaborating with data scientists, clinicians, health care providers, and professors on a research project. There are intersecting circles to demonstrate that the research project is only possible because everyone involved is contributing and listening to the people with lived experience. \n---\nCollaborating with Members of the Public: Actively involving members of the public and experts with lived experience in the design, development, and delivery of projects can greatly improve the quality and relevance of the research. This image was created by [Scriberia](http://www.scriberia.co.uk/) for The AI for Multiple Long Term Conditions Research Support Facility community and is used under a CC-BY 4.0 licence for reuse. Zenodo. DOI [10.5281/zenodo.8082554](https://doi.org/10.5281/zenodo.8082554).\n```\n\n(cl-mec-ppie-events-summary)=\n## Summary\nThis Chapter discusses planning and hosting events that are inclusive and accessible for people with lived experience and acts as a guide for how to design an inclusive event for all attendees. \n\nIt covers: \n- {ref}`initial planning and scoping guidance<cl-mec-ppie-events-planning>`\n- {ref}`guidance on how to evaluate and layout your venue<cl-mec-ppie-events-location>`\n- {ref}`considerations and requirement for developing a communications strategy and how to support your speakers<cl-mec-ppie-events-comms>`\n- {ref}`suggestions for how to create an inclusive agenda<cl-mec-ppie-events-schedule-planning>`\n- {ref}`considerations for how to make technology work for your events<cl-mec-ppie-events-technology>`\n- {ref}`suggestions for how to plan social or networking sessions<cl-mec-ppie-events-social-and-networking-guide>`\n- {ref}`and provides a page of additional resources for running inclusive and accessible events.<cl-mec-ppie-events-resources>` \n\n(cl-mec-ppie-events-background)=\n## Motivation and Background\n  * This chapter is meant to serve as a resource to support and guide researchers, organisers, and community members with the tools to identify the opportunities and mitigate barriers in the organisation of events that involve and include members of the public, and in particular people with lived experience.\n\nWe refer to \"people with lived experience\" throughout this chapter as a way to recognize and acknowledge individuals who have direct personal knowledge, or firsthand experience of a particular situation that is relevant to the topic of a research-related event. \nFor example, this could relate to a particular medical condition, disability, or other social condition. \nIt is a term often used to emphasise the importance of including the perspectives and insights of those who have had direct experience. {cite:ps}`nihr2021differentexperiences,camden2022preferredlanguage`.\n\nThis chapter is focused in particular on how to make research events more inclusive and accessible to members of the public and people with lived experience who do not have experience or a background as a researcher, as they can face particular barriers to participation. \n\nMany research projects are increasingly including members of the public in the research process. \nWithin the realm of biomedical and care-related research, this is often referred to as \"Public and Patient Involvement and Engagement\" or \"PPIE\" which has a goal to actively involve people with the lived experience of a specific disability, situation, health condition, or experience in the research process. {cite:ps}`HDRUK2023ppie`. \nPPIE is done both to ensure that research is aligned with the interests of people affected by it, and to improve the quality of research by including lived knowledge and perspectives. \nAs part of this involvement and engagement, researchers and research staff will need to plan events that are inclusive and accessible for people with lived experience, and delivered in a way that avoids presenting barriers to people with lived experience taking part equitably.\n\n\"Lived experience\" as it is used within the research context can be a range of things such as a disability, long-term health condition, bereavement, having worked in a specific profession, or the lived experience of caring responsibilities. \n\"Lived experience\" is an expansive and inclusive term preferred by many patient and public representatives as it best reflects the diverse community of contributors and the expertise they have. \n\nIn the context of event planning, there are practices researchers and organizers can use to foster the participation of this diverse group of people.\n\nThus, considerations need to cover both the potential disability-related barriers experienced by your attendees as well as the barriers that would be experienced by your attendees with lived experiences such as parental responsibilities, cultural differences, or minority status. \n\nThis chapter focuses on the latter aspects, specific to involving people with lived experiences, for the more general and equally important considerations around accessibility – that affect participants regardless of whether they are members of the public or not, please refer to specific accessibility or access-centered resources.\n\nBecause both internal resources and the events you run can range in size - from small meetings to massive multi-day conferences - this chapter is not an exhaustive list and instead is meant to provide general guidance. \nIt offers a starting point to adapt the suggestions made by this chapter to align your event with the needs of your specific community and attendees.\n\n_This chapter and its guidance have been built by the contributions of the **Public and Patient Involvement and Engagement Community of Practice** with the [AI for Multiple Long Term Conditions Project](https://www.turing.ac.uk/research/research-projects/ai-multiple-long-term-conditions-research-support-facility) project. \nThis community consists of patients, clinicians, researchers, and members of the public with an expertise of living with multiple long term conditions.”_\n\n\n\n\n\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/remote-collab/coworking.md",
    "content": "(cl-mec-remote-coworking)=\n# Organising Coworking Calls or Meetings\n\nThe concept of coworking is generally associated with the practice of sharing physical office space with different people who work independently such as remote employees or freelancers.\n\nThis allows people - who may otherwise feel isolated while working alone at home - to use traditional office setups, create a work routine, and build a sense of companionship with others who they share their office spaces with.\n\nBelow are descriptions of different aspects that one should take into consideration when planning or designing your coworking calls Online.\nThese recommendations can be used for remote or in-person meetings as well with minor changes to adapt to a physical location.\n\n## Designing a format that works for you\n\nTo identify what could be the best format for your coworking calls, you need to think about the following aspects:\n\n**Purpose of your coworking calls**\n\nAs described in the {ref}`motivation<ch-community-calls-motivation>` subchapter, we host such events for our community members for building connections, supporting our contributors, onboarding new members and celebrating their work in real time.\n\nYour purpose for hosting coworking calls could be completely different and identifying that is important for you to plan the remaining logistics.\n\nA few other scenarios could be:\n  - If you work from home, you would like to see your colleagues and stay connected with them through designated coworking schedules.\n  - If you are working with a distributed group of people on a common project, and if communication and exchange related to the project while working asynchronously is an issue, you can get a lot of your work done over a coworking call.\n  - If you are working on multiple projects and struggle to focus on one task at a time, coworking can help you put aside a few hours of your time to work with your colleagues who you share the project with.\n  - If there is a task you are struggling to complete, you can invite support from your trusted colleagues through coworking calls.\n\n**Target audience**\n\nIf you already know the purpose of your coworking calls, you will be able to identify who your target audience is.\n\nFor example, if you host your coworking calls for an open source project such as _The Turing Way_, you can expect your current members, past contributors or even new members of the project to participate.\nIf you are part of a small project, you would expect the same familiar faces in all your coworking calls.\n\n**Organisers and hosts**\n\nMany tasks go into organising a coworking call.\nThese tasks can be taken care of by one person like a community manager, project manager, or a volunteer organiser.\nHowever, it is always a good idea to involve more people as co-organisers so that the coworking call still happens even when the main organiser can't join for any reason.\nTo avoid one person burdening themselves with \"not so exciting\" organisation issues, you can also decide to rotate the role within the members of your project.\n\n**Size of the call**\n\nNo matter what the purpose and who the target audience of your calls are, you can decide the size of your call by managing participation by prior registration.\nIf you organise these calls for your project members on a mutually agreed time and with an agenda to work on specific tasks, you can expect most of them to show up.\nIf you keep your call open for any of your community members to join, you may end up having a different number of participants on different calls.\nThis would also mean that for some calls, there won't be anyone available to co-work with you.\n\nIt's useful to handle some sort of sign-up sheet or registration system so the organisers know who to expect on the call.\nIn _The Turing Way_, we use dedicated HackMD notes that can be updated before each call by the participants.\n\n**Frequency of these calls**\n\nOnce you have identified the purpose, target audience and size of your calls, you can decide how often you would like to host them.\nIf you work with the same group of people, you can host it as per your common availability and at a mutually agreed time on a weekly or monthly basis.\n\nIf the expected participants of your call also work on multiple projects, you might consider regularly hosting it on the same day and time each week or each month.\nThis consistency will allow them to check their availability in advance and block these hours in their calendar.\nThis will also reduce the extra work of coordinating the common availability every time (though you will have to do this in the beginning).\n\n**Resource availability**\n\nBased on the resources available to you, you might have to fine-tune other aspects of your call.\n\nFor example:\n- *Shared calendar*: If there is a calendar that is updated with a schedule of the coworking calls, people can subscribe to it and indicate their availability.\n- *Communication platforms*: software like Zoom can allow you to connect with many people at the same time. However, you will need a paid subscription (pro account) to control who joins your call (by activating waiting room to avoid Zoom bombing), manage breakout rooms (to allow multiple small groups and discussions) or host longer calls (>40 minutes).\n- *Chat system*: If you have a group Slack or Gitter channel, information can be exchanged with everyone, including those who can not join the calls but want to offer suggestions or carry out related tasks asynchronously but in coordination with the group.\nThis also allows people to keep each other informed of any last-minute changes such as updated links for joining calls, correct notes, or cancellation of calls.\n\n## Logistics and tasks\n\nLike any event, coworking calls require planning, organising, hosting and making sure that they happen.\n\nAs the organiser/s of the event, you will be required to:\n\n**1. Choose the tools**\n\nThe choice in regards to which tools you will use will depend on the purpose and scope of your calls.\nPlease see the subchapter {ref}`Tools for Remote Collaboration<cl-mec-event-tools>` to identify which tools will be most appropriate for communication, chats, shared documentation and scheduling.\n\n**2. Plan and host the calls**\n\nAs discussed earlier, you will need to agree upon dates and times with people who would like to participate in coworking calls.\nYour calls could be organised on a weekly or monthly basis that consistently takes place on a certain day and time, or it could be organised once in a while by finding a common availability.\n\nOnce you have found a schedule (date, time and frequency), the following tasks will go into planning them:\n- Update the schedule, agenda and calendar to share them with the attendees (or potential target audience). It is also effective when they receive a calendar invite.\n- Maintain communication (by email, newsletter, or social media) so that everyone is aware of the next calls and the resources available for them to participate.\n\nYour main tasks as a host will be to:\n- Provide adequate support to the participants so they can make the best of their time.\nIn _The Turing Way_ coworking calls, we find it useful to use breakout rooms when many people are working in small groups or if some people need more discussions, while others want to quietly work on their tasks.\n- Facilitate shared notes with participants before, during and after the call, so that they can keep track of useful resources or ideas they discuss during the coworking call.\n\n**3. Create a safe and accountable space**\n\nThough discussed last, this should be your highest priority.\n\nYou should design these calls to make everyone feel welcome, involved and safe.\nIt's highly recommended to choose a Code of Conduct and put reporting guidelines in place to share with everyone in advance.\nSee this minimal [CoC from Contributor Covenant](https://www.contributor-covenant.org/) and an expanded version of {ref}`The Turing Way CoC<ch-coc>`.\nAdditionally, you should also communicate the basic etiquette, such as muting microphones when not speaking or not interrupting others when working in a Pomodoro session unless necessary.\n\nIt is useful to let everyone know who they can contact if they need help in troubleshooting during the call or need more time to discuss their ideas.\nCreate an agenda that states clearly what is expected of them, such as if they should bring their tasks and questions to the call or communicate them beforehand.\nIn _The Turing Way_, we have dedicated slots for both group discussions and quiet working.\n\n## Some Examples\n\n### Open calls for building connections\n\nOne of _The Turing Way_ contributors, Natalie Thurlby has adapted the Collaboration Café to create a [Data science online co-working group](http://bristol.ac.uk/golding/ask-jgi/data-science-online-co-working-group/).\nThey have designed their call format for the Jean Golding Institute's community members in Bristol to work together and build connections while working on their data science projects.\nThis is a great example of using coworking calls for community building and supporting others with similar research interests.\n\n### Small groups for supporting each other\n\nYou can also plan your coworking calls with a small group of (2-3) colleagues with whom you can mutually hold accountability for your time and work.\nA small group reduces the burden of coordinating multiple time zones and finding a schedule that is suitable for everyone.\n\nNaomi Penfold and Stefanie Butland have written about their 1:1 coworking format in this post: [Online Co-working Partnerships are Community of Practice in Action](https://www.cscce.org/2020/02/04/online-co-working-partnerships-are-community-of-practice-in-action/#more-3009).\nWhile reviewing this chapter, Naomi described their 1:1 call format in contrast with _The Turing Way_ group format as follows:\n\n> In the co-working calls I have, it's 1:1 and we often spend 20 minutes, in the beginning, catching up and talking about our progress since last time.\nIf there is something we want to discuss more intensely, we allocate 30 minutes of our call time to that, for example, one of us asking the other how to troubleshoot something.\nFor the time in between, we do a few quiet working sessions (sometimes 25 minutes, sometimes longer).\nThis is likely a combination of a co-mentoring call and a co-working Pomodoro call, and it works well for me.\n\nYou can read an adapted version of their blog post along with other ideas for virtual events in the document by Center for Scientific Collaboration and Community Engagement {cite:ps}`CSCCE2020virtual`.\n\nIf you organise or host a coworking call in your community, you are welcome to highlight them in this chapter by creating a [pull request](https://github.com/the-turing-way/the-turing-way/pulls) on the GitHub repository (see [contributing guidelines](#ch-contributing) for details).\n\n***Chapter Tags**: This chapter is curated for the `Turing Data Study Group` (`turing-dsg`).*\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/remote-collab/event-participation.md",
    "content": "(cl-mec-remote-event-participation)=\n# Participating in Remote Events\n\n## Motivation\n\nNow that you have been invited to attend a meeting, or have registered to attend an event, this checklist will help you start preparing for your participation and make the most of it.\nThough we assume 'virtual first' approach for inclusive events, these recommendations can be used for remote or in-person meetings as well with minor changes to adapt to a physical location.\n\nThis checklist also aims to help participants support the event organisers by being proactive and informed about the resources that are available for them and make the best of their participation.\nThe tasks and responsibilities are listed in chronological order and have been divided into \"before\", \"during\" and \"after\" the meeting.\n\n## Before participating in the meeting\n\n- Note the date and time of the meeting in your time zone and mark them correctly in your calendar using custom links from the websites like [arewemeetingyet.com](https://www.timeanddate.com/worldclock/meeting.html) and [timeanddate.com](https://www.timeanddate.com/worldclock/fixedform.html).\n- Indicate that you will be participating by completing any formality put in place, like registering through a registration page, signing up on a shared document, or accepting the calendar invite.\n- Check if there is any other information you need to supply as a participant, like adding or approving agenda items, filling a pre-event survey, signing up for different sessions of a longer event.\n- For virtual events, install software required for you to join the meeting online.\nTest your microphone, webcam, internet bandwidth and compatibility of the software used for the online meeting with your system minimum 2 days before the meeting.\n- Check if the event offers any support that you can use for your participation and you are eligible to apply, such as the participation support grant.\n  - If the event doesn't offer any support, check if you can seek this support from other resources, for example, as offered by the [Open Bioinformatics Foundation](https://www.open-bio.org/travel-awards/) and [Software Sustainability Institute](https://software.ac.uk/programmes-and-events/fellowship-programme).\n- Reach out to the organisers if you need any help with installation, or join one of their pre-event setup calls.\n- Ask for the protocols and agenda for the meeting if not supplied already.\n- Familiarise yourself with the participation guideline and Code of Conduct supplied by the conference organisers.\n- Note the contact person for the organisation committee and the Code of Conduct.\n- Familiarise yourself with other documents like agenda of the meeting, protocols for the participation, etiquette for online attendees (how to raise your hand, or participate in a discussion) and other shared documents that will be used during the meeting.\n- If you are responsible for leading or chairing any agenda items, talks, or sessions, please note the slot and duration assigned to you.\n  - Check if there is a speaker or chair guidelines, reach out to the organisers if you have not been given one already.\n  - Prepare your notes or presentation that you will use during your slot as per the guidelines.\n- Please consider accessibility and inclusivity when designing your talk, [see this for reference](https://www.w3.org/WAI/teach-advocate/accessible-presentations/#preparing-slides-and-projected-material-speakers).\n- Join social media platforms, like [Slack](https://slack.com), [X](https://x.com) (formerly Twitter), [GitHub](https://github.com) or [Gitter](https://gitter.im), that will be used for announcing updates on the event, or facilitate live chat during the event.\n  - To get a head start on networking with other attendees, use the social media platform to introduce yourself.\n- Help organisers correct any information that you notice by flagging it, and even better, by supplying the correct information.\n\n## During participating in the meeting\n\n- For in person events, you must have already received the location, mode of transportation, any accessibility arrangements that you may need and agenda before you get to the event venue.\nFor virtual events, this is also valid, except that you might have tested your system in advance to join the online call using the platform links supplied by the organisers.\n- Join a few minutes in advance so that you can troubleshoot any last-minute issue.\n- The social media platform, especially for the live interactions will be particularly useful to ask for help or information during the meeting that you may have missed.\n- For online calls, check the lighting of your room to ensure that your face is clearly visible and people can see you if you raise your hand or speak.You can use the blurring options to take your background out of focus. Always mute your microphone when not speaking.\n- Follow the etiquette for meetings that should have been shared by the organisers in their protocol.\n- Introduce yourself in short and clear sentences if a slot is assigned for that. Or use shared notes, social platforms or verbally\n- Note the Code of Conduct facilitator's contact during the meeting, so that you can directly contact them to report any breach or issue that may occur during the call.\n- When participating in a group discussion, for example, during a breakout session, be mindful that you don't use up a lot of time and give everyone a fair chance to speak and share their thoughts.\n- If someone else raised their hand before you, give them a chance to speak first.\n- Avoid repeating something that has already been shared by adding a '+1', 'I agree' or 'I second' in the chat or in the shared notes.\n- Help note-takers capture any information that they might have missed.\n- Avoid off-topic discussions and keep the meeting focused on the assigned agenda points.\n- Ask for clarification on any point that you did not understand so that you continue in the meeting effectively and leave the call with the right information.\n- Note any action points assigned to you at the end of the meeting.\n- Leave the call by thanking everyone!\n\n## After participating in the meeting\n\n- Finish any post-event formality such as by filling out any feedback survey or form requested from the organisers, or claiming any participation support grant if you are one of the awardees.\n- If requested by the organisers, share with them what worked and what did not work for you in the call and if you have any suggestion for their future events.\n  - This can help them see the impact of their event, and continue doing their work by bringing any change that will be helpful in the future.\n- If you write blogs on your experience from a meeting or event, share them with the organisers so that they can promote and highlight those in their final report.\n- When the notes from the meeting are circulated for approval, make sure that information supplied by you is correctly captured.\n- If you would like to, or if you have the opportunity to, send a thank-you note to the organisers or anyone who might have helped in enhancing your experience as a participant.\n- If you made new connections or established new collaborations during the event, send a follow-up email after the event.\n- Finish any task assigned to you or your team, within the given time limit by coordinating with your collaborators.\n\n***Chapter Tags**: This chapter is curated for the `Turing Data Study Group` (`turing-dsg`).*\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/remote-collab/informal-chats.md",
    "content": "(cl-mec-remote-informal-chats)=\n# Informal Coffee Chats\n\nWhen a team is working remotely, they can get together at specific times for \"coffee chats\".\nThese are scheduled in advance so that everyone can plan their work and other meetings around them as needed and specifically have no agenda.\nThe purpose is to share a social break together.\nThough we assume 'virtual first' approach for inclusive events, these recommendations can be used for remote or in-person meetings as well with minor changes to adapt to a physical location.\n\n```{figure} ../../../../figures/remote-book-dash.*\n---\nname: remote-book-dash\nwidth: 500px\nalt: A person sitting on a chair in front of their computer with their dog beside. There are four different people who have joined online with their coffee/drinks for an informal chat.\n---\nInformal Online Coffee Chats. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n## Motivation\n\nAll work and no play makes teams anxious and sad.\nIf all of your group's conversations revolve around work and are scheduled as meetings, the team will lose both the serendipity of informal knowledge sharing and the enjoyment of taking a break away from their work.\nIt isn't just fun, their productivity will be higher if they take regular breaks and socialise with others! See [this post](https://buffer.com/resources/science-taking-breaks-at-work/) to discover some reasons why it is good to take breaks.\n\n## Design the coffee chat\n\nThe first step in running a coffee chat is considering the purpose of the social break, who will be invited and to set the time for the conversation.\nConversations, where *anyone* can join, may be what you want.\n\nIn March 2020, during the COVID-19 pandemic, Kirstie Whitaker hosted [online morning coffee chats on Zoom](https://twitter.com/kirstie_j/status/1239455513080926208?s=20), which she promoted on Twitter (now X).\nDifferent people joined at 7:40 am every morning to match her early morning chats at the Turing Institute between when her train arrived and when she usually started working.\nThe purpose of these calls was to have social contact with anyone else who was up early and looking for motivation to get started.\nIt didn't matter who came along, everyone was invited to join for 20 minutes.\n\nJoining a conversation where anyone can join is quite a daunting proposition for some people.\nIf the purpose of the coffee chat is to build connections with a team, you may want to consider restricting the invitation to the specific group members.\nAlthough this appears less *open* it may be more *inclusive* for building a safe space for all members.\nKnowing who is going to be at the coffee chat on a regular basis makes attending the coffee chats more appealing.\nTherefore, introverted and less confident members are more likely to participate in the conversation.\nYou are more likely to build trust within a group if they can make accurate predictions about who they will be interacting with during the break.\nA good example of this purpose is coffee chats for members of a research group.\n\nFinally, the safest spaces are 1:1 conversations.\nIf the purpose of your coffee chat is to check in with a friend or colleague, particularly if you are worried about how they are doing, consider organising an individual and private coffee chat.\nRemember that the purpose is not to talk about work or to progress an ongoing collaborations.\nThe purpose of individual coffee chats is to make each other feel supported and heard in ways that can be difficult to replicate in an online space.\n\n## Schedule the coffee chat\n\nOnce you know what you want the purpose of the coffee chat to be, you can schedule it.\n\n- **Identify the medium**: For online calls, use tools that allow you to have online face to face conversations with others, such as Zoom, Google meet and Facetime. Find recommendation in {ref}`cl-mec-event-tools`.\n- **Maintain consistency**: Try to ensure that the times are predictable if not always identical across different days.\n- **Invite people**: Send a calendar invitation to the invited participants so they are reminded to take the break at that time.\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/remote-collab/organising-remote-meetings.md",
    "content": "(cl-mec-remote-organising-meetings)=\n# Organising Remote Meetings\n\nA successful meeting in the context of research or team-based science is organised by first defining the purpose - why this meeting is being organised and what input from participants will be expected.\nSome main considerations are the setting up goals of the event, tools for collaboration, identifying effective approaches for stakeholder-engagement and plans for managing all the associated tasks.\nA 1:1 meeting may be organised by simply sharing a link to join the call or details of a physical location on an agreed date and time.\n\nHowever, often meetings involve multiple team members, presenters and guests from different groups, possibly some of them attending the event remotely across different time zones and locations.\nFurthermore, collaborative activities like breakout discussions and documentation are often integral for creating a welcoming space when bringing a diverse group of participants together.\nHence, there is more to organising a team meetings than just sharing a joining link or location details.\n\nThis subchapter provides a structured list of tasks that go into organising a team-based meetings.\nWe have listed them in chronological order and divided into sections for \"before\", \"during\" and \"after\" the meeting.\n\nThough we assume 'virtual first' approach for inclusive events, these recommendations have been drawn from in-person conference planning, and hence can be used for remote or in-person meetings with changes to adapt to a physical location.\n\n## Before the meeting\n\n- Identify the most suitable slot that is time zone compatible for all the members using tools like [Doodle](https://doodle.com/en/) or [when2meet](https://www.when2meet.com/).\n  - If you are planning a meeting that includes time zones with over 12 hours difference, consider having two sessions to avoid holding a meeting very early or very late in the day.\n  - Assign different chairs when holding calls in two different time zones.\n- Use a standard time with a custom link like [arewemeetingyet](https://arewemeetingyet.com/) or [timeanddate.com](https://www.timeanddate.com/worldclock/fixedform.html) to different time zones when communicating.\n- Set a protocol for your meeting participants (if there is not one available already), which should include basic etiquette explaining the following:\n  - Is keeping the webcam and microphone on recommended? Can they be turned off during the call?\n  - Is there a password needed to join the call? Can attendees join before the host?\n  - How can attendees ensure the privacy of their family members?\n    Provide instructions for blurring their background, or using a virtual background?\n  - How will attendees be able to participate in an ongoing discussion? \n    How can they raise their hands to ask the chair personally?\n  - What kind of challenges may attendees face while joining the call/meeting and how can they troubleshoot them?\n- Identify a chair and note-taker for the meeting.\n  - Share guidelines and protocols for chairing and note-taking.\n- Decide if there will be designated speakers with presentations.\n  - Share the speaker's guidelines and protocols with them.\n- Establish a shared document that can be updated online for agenda and note-taking. \n  For example, using [Google Docs](https://docs.google.com) or [HackMD](https://hackmd.io).\n  - Create a template for this meeting (that can also be used for future meetings).\n- Create a shared document to share the following:\n  - Participation guidelines.\n  - Code of conduct and contact information of people who can help with any issues regarding the meeting.\n  - The exact date, time, location (if any!) and choice of tool that will be used for communication.\n  - Agenda of the meeting.\n  - A place to indicate their participation or absence.\n- Share this document via an email to all the attendees and also add this to a calendar invite so that people have it handy when needed.\n- The choice of tool should be preferably an open source tool to avoid inaccessibility.\n  - If using a tool that is available only upon subscription, make sure that all the members have the access information.\n  - Share a how-to guide to ensure that everyone knows how to use the tool.\n  - If possible, offer help with installation and testing of the tool in advance.\n- Distribute the shared document a few days before the meeting.\n  - Ask everyone to add any agenda items that they would like to discuss at the meeting.\n  - Ask everyone to write their name indicating their participation in or absence from the meeting.\n- Remind everyone to arrange a microphone or headsets.\n  - If possible, provide any hardware that the organisation prefers to use.\n  - Ask people to check before the meeting that their system and headsets are working.\n- Send a reminder with a link to the document and other important resources to all the participants a day in advance.\n- Create slides or a presentation that might be needed by the organiser's (welcome, wrap up).\n  - Add contact details, date and location of resources and licence, to make your slides reusable.\n- Set-up your calls with closed-captioning (cc) such as by using software like otter.ai or cc options in google slides or hangout.\n\n### Designated venues to participate from\n\n*If there are physical office locations, or co-working spaces accessible for most members.*\n\n- Reserve conference room(s), or similar venues, with high-speed internet.\n- Share details on how members can access this venue.\n- When possible, use individual cameras to simulate remote participation so that those who are not attending in person don't feel left out.\n- If the reserved location has a webcam and microphone, check that they work properly.\n  - Plan the seating arrangement so that people are facing to the main screen/camera.\n  - Test the screen with different light intensities.\n  - Arrange all the required materials and equipment, like extension cords or power strips.\n  - Arrange for beverages/snacks for the breaks, and ensure that the catering service will label the food for contents/allergens.\n- Make sure that the protocols are written to favour the remote participants.\n\n## During the meeting\n\n- Re-share the links to the collaborative notes for the meeting in the chat system or email.\n- Give a reminder of the community participation guidelines and the Code of conduct.\n- Introduce the chair and notetaker, and let the chair take over for the rest of the tasks.\n- Introduce the format of the meeting and briefly describe the overall schedule, such as the timing of breaks.\n- If possible, keep the video call separate from chat system to ensure that the speakers are not distracted and the conversations can be recorded on the chat system.\n- Explain the basic protocols for participation.\n  - Muting microphone when not speaking.\n  - Using a chat system during the meeting - if there is one.\n- Request everyone to keep their camera on whenever possible.\n- If recording the call, make sure that all the participants are aware before you hit the record button.\n  - Allow people to turn their video off when recording.\n- Give a reminder of the guidelines for participating in discussions.\n  - Raise hand - on chat, or virtually (like in Zoom) or physically.\n  - Other ways to involve others in the discussion equitably.\n- Start the meeting with an icebreaker question that can be either written down or shared out verbally depending on how many people are on the call.\n  - Create opportunities for everyone to share something personal (about their hobby, or experiences) on the document or verbally.\n- Facilitate questions and answers, or discussion on the agenda points.\n- Help answer procedural questions like “where is this button that I should click”.\n- Direct technical questions to the organiser when needed.\n- Use breakout rooms whenever possible to ensure that people can connect with each other while discussing questions or issues of mutual interest (more tips below).\n- For gathering opinion and response, use silent writing time rather than open discussion.\n  - Give clear instructions of what's expected from the writing exercises and how long it should take.\n  - Give a reminder in the last minute to wrap up.\n- Ensure that the discussion is inclusive of everyone, aim to have a fair discussion, don’t fixate on one argument or speaker.\n  - When do people get to speak, how long? \n  - Who gets to speak first (keep in mind levels of seniority, gender and ethnicity - having minorities speak up first will empower them in participating in discussions)? \n- Indicate if the speakers should speed up or slow down, or if there is a technical issue that the speakers should check.\n- Notetakers should document important outcomes from every discussion.\n- Encourage everyone to help the notetaker in documenting correct information.\n- In the last part of the call, create action points and delegate them to different people while on the call.\n  - Ask people to volunteer to assign themselves to each task, but be inclusive and equitable in this process.\n- End the meeting on time by thanking everyone and sharing the date for a next call, if any!\n- If possible, stay a few minutes extra on the call to make sure that people have a chance to clarify their questions after the meeting.\n\n### Breakout rooms\n\n*If using breakout rooms in Zoom, or a similar tool, make sure that each breakout has a chair, or someone to help.*\n- Create groups that are more diverse (they will have better discussions).\n- Create some breakout rooms for speaking and some for writing to be more inclusive of those with English as a second language. Remember to ask participants before hand what their preference is.\n- Remind everyone to give others a fair chance to speak.\n- Ask them to write notes from their discussion in the shared document.\n- Send messages periodically reminding everyone of how much time is left for discussion.\n  - Reminding them to move on to the next person if only one person has spoken so far in their group.\n- When people come back from their breakout rooms, ask them to share the main arguments from their discussion.\n\n## After the meeting\n\n- Create a debrief document to capture what went well and what could be improved.\n  - This can also be requested from the participants by circulating a feedback form.\n- Request any additional documents or information mentioned by others/speakers during the meeting. These links can be added into the shared documents or in the chat.\n- If the meeting call was recorded, process and share the recorded video with everyone.\n- Send a thank you email with the link to the complete notes and other relevant information.\n\n## Additional resources\n- '[How to Run a meeting](https://www.youtube.com/watch?v=qYh6Nzv3RWs)' by Greg Wilson.\n\n***Chapter Tags**: This chapter is curated for the `Turing Data Study Group` (`turing-dsg`).*\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/remote-collab/remote-collab-guidelines.md",
    "content": "(cl-mec-remote-collab-guidelines)=\n# Guidelines for Remote Collaboration\n\nIn this chapter, guidelines are a set of recommendations or protocols that can create a common ground for everyone to communicate and exchange information within a distributed team for effective and successful collaboration.\nThe main motivation is to set clear expectations around communication tools, etiquette for online meetings, tasks, timelines and schedules in advance for the remote and distributed collaborative working arrangement in a team or community.\n\n## Mode of communication and collaboration\n<!---Add details and more points point to other chapters for details--->\n\nThis should provide details regarding:\n- The tools/software to be used for joining/attending the online calls.\n- Recommendations for the types of equipment that can provide participants with the experience as expected by the organisers.\n- Measures that will be kept in place to keep interactions and data exchange secure.\n- How participants can gain access to these resources and tool.\n- Ways to improve visibility and accessibility to these tools.\n\nFor a list of collaborative tools check out {ref}`cl-mec-event-tools`.\n\n## Different ways for informal interactions\n<!---Add details and more points point to other chapters for details--->\nInformal interactions are instrumental for ensuring full engagement of your participants, therefore provide ways for:\n- Encouraging casual team conversations between meetings by setting some pre-planned social discussions/interaction plans.\n- Helping people from different time zones to catch up and build a sense of belonging (for example, by shared notes or summary emails).\n\nCheck out an example of informal coffee chats in {ref}`cl-mec-remote-informal-chats`.\n\n## Sharing data, resources and documentation\n<!---Add details and more points point to other chapters for details--->\nPut together some recommendations and guidelines for sharing data (research data, personal information), resources (tools and equipment) and documentation (policies, manuals).\n\nThese recommendations should include:\n- The preferred platform for sharing research data (published and unpublished).\n  - Decide on the most appropriate way to share data, documents, analysis scripts, such as by providing shared drives and repositories on Google, GitHub or other similar platforms.\n- How to protect sensitive information such as data and password.\n- Manuals and training for setting up an account and maintaining access.\n- Locations of different documents from the organisation that are easy to find.\n- Helpdesk or support for setup and troubleshooting.\n\nWe have provided related recommendations in {ref}`cl-mec-event-tools` and {ref}`cl-mec-remote-organising-meetings`.\n\n## Planning meetings, scheduling, and agenda\n<!---Add details and more points point to other chapters for details--->\nEstablish key tasks and milestones at the beginning of the project to determine how meetings will be planned, scheduled and organised.\n- Decide on the frequency of your meetings and set a protocol.\n- Once a protocol has been established, circulate and review it within the team to ensure a common understanding of tasks and goals.\n- Schedule meetings that are effective across time zones, have a regular time slot and send out calendar invites to avoid confusions.\n- Invite everyone's input in collecting agenda points.\n- If a team is big, split into sub-project groups to create a stronger network.\n- Rotating schedule for chairs and note-takers from the team.\n\nWe have provided related recommendations in {ref}`cl-mec-event-tools` and {ref}`cl-mec-remote-organising-meetings`.\n\n## Etiquette for online meetings and communications\n<!---Add details and more points point to other chapters for details--->\nYour participants must know how they are expected to participate in a meeting.\nThis includes details on how they can contribute to an ongoing discussion (raise hand physically, or use a feature in your call hosting software), how they can share thoughts if they don't feel comfortable talking or how they can help create an overall welcoming environment.\n- Establish a format of communication within the whole group and subgroups.\n  - Communicate clearly which tool will be used, for example, Zoom for the call, Google Docs for documentation, Trello for action points.\n- Create a pre-defined agenda with an allocated chair and note-taker to prevent informality and loss of focus.\n- Pre-communicate guidelines for creating a safe space for inclusive interactions online, including:\n  - Muting microphone when not talking.\n  - Keeping video camera on when in a closed meeting.\n  - Give the option to switch off the video if the call is being recorded.\n  - Share tips on how to 'raise hand' to participate in a discussion, on chat, physically, or using an emoji.\n  - Send out a guideline for speakers, chairs, note takers and people with different responsibilities.\n- Communicate clearly how to join and leave a meeting.\n  - Is there a particular rule for joining late or leaving early?\n- Aim to maintain flexibility and reduce formality\n  - This is particularly useful for people who are working from home and will have their family members and pets around.\n\nWe have provided related recommendations for organisers in {ref}`cl-mec-remote-organising-meetings` and participants in {ref}`cl-mec-remote-event-participation`.\n\n## Follow up emails and communications for creating accountability\n<!---Add details and more points point to other chapters for details--->\nFollowing up with the participants after the meeting is a good way to both share the key messages from the meeting, action points that have been created for different people and to ask for feedback when needed.\n- Make sure that everyone knows what their role and responsibilities are.\n- Follow up with teams and individuals regularly.\n  - This should be done to celebrate success rather than micromanaging.\n\n## A few more tips for keeping the team engaged\n<!---Add details and more points point to other chapters for details--->\n- Set the leadership teams responsibilities clearly (host, note-taker, gatekeeper and technical support).\n- Choose modes of engagement that are suitable for both introverts or extroverts.\n- Create opportunities for skill-building and training beyond work.\n- Schedule informal meetings like virtual coffees and online games.\n\nWe have provided more recommendations in {ref}`cl-mec-remote-collab-team`.\n\n## Further reading\n\n- [Deanna deBara, The ultimate guide to remote meetings in 2020](https://slackhq.com/ultimate-guide-remote-meetings), January 2, 2020\n\n***Chapter Tags**: This chapter is curated for the `Turing Data Study Group` (`turing-dsg`).*\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/remote-collab/remote-collab-prosandcons.md",
    "content": "(cl-mec-remote-collab-prosandcons)=\n# Pros and Cons\n\nIt is needless to say that the same setting can not always work for everyone, which applies to remote collaboration, working, and event participation.\nFor many, remote collaboration is the most ideal setting, whereas for many, working completely online might leave them feeling isolated.\nSome people collaborate more effectively when working in physical offices, for example, when they live in a small apartment, share their place with a large family, have an inadequate remote-work setting or feel less connected with their colleagues.\nHowever, for others, remote working may be the most effective way to contribute, when working with online tools, or directly working on platform that do not require speaking up.\nTherefore, it is important to acknowledge that remote collaboration have advantages as well as disadvantages, and the collaboration formats should accommodate for, or designed to address challenges that come with it.\n\nIn *The Turing Way* we recognise 'virtual first' approach for creating inclusive collaboration formats.\nIt is easier to work with people online who live in different locations (cities, countries) and can't travel, folks who are introverted or don't like to or can't speak publicly, people with caring responsibilities at home or people who have visible or invisible disability to work comfortably in person.\n\n> \"As someone who used to commute 4 hours per day for 12 years, I can sum my experiences in four words - *remote working reduces inequality*\", says one of our contributors, Pablo Rodríguez-Sánchez (GitHub: PabRod).\n\nIn this subchapter, we have captured *light opinions* a few contributors on their experience of collaborating remotely with others under \"pro\" and \"cons\" sections.\n\n## Pros\n\n- Remote collaboration dramatically improves the life quality of those who cannot comfortably travel or afford to live close to their office.\n- It has a positive impact on the environment by reducing travel-related CO2 emissions.\n- A well-established format works equally well for low resource environments as the overall organisational cost can be reduced by not having to deal with the on-site expense.\n- Distributed team format attracts people from different time zones, different workplace requirements or those who work best with flexible working hour arrangements.\n- This can lead to innovative ways to establish social interactions and social dynamics in general.\n- It will help us learn about more colleagues from different parts of the world and educate us more about our cultural differences and accommodations to make in our work environment.\n- Decision making will become more efficient by involving all stakeholders irrespective of their locations, given the meeting is done at a mutually convenient time.\n\n## Cons\n\n- Developing camaraderie may be challenging as we are used to developing this in-person.\n- The boundaries between working life and personal life become more blurred.\n- If running an online meeting, the allocated time might not be enough to conclude and may sometime lead to misinterpretation of decisions made by the team.\n- Conflict resolution may be difficult if most interactions happen in an allocated time slot.\n- Sometimes, such interactions may lack body language or tone (online chat) and may lead to misunderstanding or unnecessary conflict.\n- May lose the possibility of chanced interaction or water-cooler-effects and innovative ideas that they produce.\n- People will have different working conditions, for example, limited access to hardware that can lead to wrong assumptions regarding replication of certain tasks.\n- May be distracting if working from a busy co-working space or home without a sufficient arrangement for work that can make it difficult for some people to focus and have disciplined work practices.\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/remote-collab/remote-collab-team.md",
    "content": "(cl-mec-remote-collab-team)=\n# Managing Distributed Teams\n\nIn the {ref}`cl-new-community` and {ref}`Leadership in Data Science<cl-leadership>` chapters, we have already discussed in-depth how we can manage a new online community and build healthy leadership for a team.\nTherefore, in this subchapter, we have listed a few reminders of tasks that are specifically important for managing distributed teams.\n\n- Set clear expectations for the team members about the project and their roles and responsibilities.\n- Help establish all modes of communication, tools, and resources according to the team's requirements for both their project and social interactions.\n- Coordinate the development and maintenance of all the required documentation such as the organisation's policies, participation guidelines, project charter, and information of other team members.\n- Ensure that details of these resources are available for all members through a central repository, with information on how they can access them.\n- Respect time differences when dealing with members across different time zones and assigning tasks. Allow a degree of flexibility as per their working situation or caring responsibilities they may have.\n- Schedule team meetings where everyone can share what they are working on and invite contributions and support from others in the team.\n- Before the meeting, provide the meeting agenda in a shared document, preferably that can be updated by the team members in case they want to suggest a new agenda point. This document can also be used for taking notes during the event.\n- Share minutes (and video recording when possible) to make sure that everyone is up-to-date, even those who couldn't attend the meeting.\n- Schedule regular one-on-one meetings to ensure that your team members can check-in with you, align ideas as per the project's requirement, hold accountability for their work, and receive constructive feedback.\n- Create opportunities for informal interactions that can help create a friendly work environment and build a strong sense of team spirit.\n- Encourage and embrace diversity and a culture of collaboration.\n\n## Further reading\n\n- Read this post by Zapier on [How to Manage a Remote Team](https://zapier.com/learn/remote-work/how-manage-remote-team/)\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/remote-collab/remote-collab-useful-resources.md",
    "content": "(cl-mec-remote-collab-useful-resources)=\n# Useful resources\n\nHere are some useful guides, papers and tutorials on how to facilitate remote collaboration effectively:\n\n## Further reading\n* Tips for Teaching Online from The Carpentries Community: https://carpentries.org/blog/2020/03/tips-for-teaching-online/\n* Online meeting tips by Mozilla: https://foundation.mozilla.org/en/blog/online-meeting-tips/\n* Reshef, O., Aharonovich, I., Armani, A.M. et al. How to organize an online conference. Nat Rev Mater 5, 253–256 (2020). https://doi.org/10.1038/s41578-020-0194-0\n* Yehudi, Y., Whitney, K. S., & Sharan, M. (2020, November 24). Enhancing the inclusivity and accessibility of your online calls. https://doi.org/10.31219/osf.io/k3bfn\n* Woodley, Louise; Pratt, Catherine; Ainsworth, Rachael; Amsen, Eva; Bakker, Arne; Butland, Stefanie; O'Donnell, Stephanie; Penfold, Naomi; Pope, Allen; Quigley, Tom; Tsang, EmmyTsang, Emmy. (2020, July 17). Using virtual events to facilitate community building: event formats. Zenodo. http://doi.org/10.5281/zenodo.3934385\n* CarpentryConnect planning kit: https://carpentryconnect.org/online/\n* New DCC guide: tips on online meetings and events: https://www.dcc.ac.uk/news/new-dcc-guide-tips-online-meetings-and-events\n* Virtual Conferences, A Guide to Best Practices, 2020; https://www.acm.org/virtual-conferences\n\n## Tutorials\n* Bonus Modules for Carpentries Instructors - online workshop: https://carpentries-incubator.github.io/instructor-training-bonus-modules/\n* Facilitating Events and Courses in an Online World: https://moodle.inasp.info/enrol/index.php?id=247\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working/remote-collab.md",
    "content": "(cl-mec-remote-collab)=\n# Remote Collaboration\n\nRemote collaboration refers to the ability to interact and work with others from anywhere in the world.\nRemote collaboration is extremely valuable for removing physical barrier in communication among members in a distributed teams who work remotely rather than being located in a physical office.\n\n```{figure} ../../../figures/distributed-collaboration.*\n---\nheight: 500px\nname: distributed-collaboration\nalt: A person standing on a globe and interacting virtually with people in different time zones on different computer screens\n---\nDistributed Collaboration. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\nRemote collaboration is quite a standard practice in open source projects or online communities.\nIt has gained popularity over the last few years as more and more companies expand their businesses in areas far from the location of the main office (for example, [Mozilla](https://www.mozilla.org/en-GB/)), or exist entirely as a remote company (for example, [RStudio](https://rstudio.com/about/)).\n\nIn early 2020, as we began to work entirely from home due to the [Coronavirus (COVID-19) pandemic](https://www.who.int/emergencies/diseases/novel-coronavirus-2019), we experienced a drastic change in our work culture.\nSince 2022, these changes have permanently become part of our work culture, with most people working remotely either fully or partially, with a requirement to go to physical offices for a few days per week or month, or only when necessary. \nThis chapter will present resources and tips for researchers to make their transition of working from the office (physical location) to working from home (online/virtual) easier, or make their collaboration more effective if they are already working remotely.\n\n<!--- Add a summary of all the subchapters --->\n"
  },
  {
    "path": "book/website/collaboration/meetings-events-co-working.md",
    "content": "(cl-mec)=\n# Meetings, Events, & Co-working\n\nThis sub-chapter is about planning, organising, and participating in organised interactions with other people,\nfrom informal chats to large conferences, online, in person or hybrid.\n"
  },
  {
    "path": "book/website/collaboration/new-community/new-community-differences.md",
    "content": "(cl-new-community-differences)=\n# Valuing Diversity and Differences\n\nWhen people collaborate with others, no matter if they have already worked with them or they are complete strangers, you need to take into account that everyone will have different backgrounds, different cultures, different time zones, different levels of skills and very different lived experiences.\n\n(cl-new-community-differences-perspectives)=\n## Welcome Diverse Perspectives From Your Members\n\nThink carefully about who your stakeholders are, if they are given fair opportunities to be heard, if certain groups are less represented than others, and if you have strategy in place to ensure diversity in your community.\n\nIt is important to be mindful of the varying motivations your members will have behind joining to work on your project.\nFor example, in the case of COVID-19 related projects, you can expect that some people will join you because they want to know what kind of data on COVID-19 exist, some will come with an intention to be part of a group while learning some skills, some will simply hang out to watch what you are doing, whereas some people will join you because they have relatives who are suffering from COVID-19 infection and they want to speed up the diagnostic process.\nBe prepared to welcome their diverse perspectives into your project.\n\n(cl-new-community-differences-circumstances)=\n## People Have Different Personal Circumstances\n\nAs an individual we may think that everyone has the same working conditions as us, such as access to the tools and resources or their work setup, whereas the reality is far from that.\nOur colleagues even in the same city may have different living situations, caring responsibilities, medical conditions and resources available to them.\nDon’t assume that everyone will have equal access or capacity to participate in your project.\nTo create equitable opportunities for everyone, create task lists with varying requirements of time and resources (like hardware, software, reference materials or internet bandwidth) so that people can choose where to contribute based on resources available to them.\n\n(cl-new-community-differences-resources)=\n## Allow Access to Assumed Knowledge and Resources\n\nWorking with team members from different disciplines and backgrounds can provide a wealth of new perspectives. \nHowever, it is important to standardise which concepts all parties should be familiar with for productive collaboration. \nFor example, replacing jargon and acronyms with clearer alternatives will make information accessible to all team members. \nWhere some technical terminology is necessary, it can be useful to have a shared, editable definitions document. \nAdditionally, it is important to create a supportive environment where anyone can ask for clarification without feeling looked down upon.\n\nAdditionally, provide access to resources whenever you can to ensure that everyone has the opportunity to gain a common understanding.\nFor example, if your project idea is based on a recent peer reviewed paper that is behind the paywall, members from low income institutes who don't hold a subscription to that journal will not be able to participate unless given access to the information discussed in that paper.\n\n(cl-new-community-differences-viewpoints)=\n## Invite Those Who Can Help You Expand Your Viewpoints\n\nMake sure that you invite perspectives from your members who can help you maintain heterogeneity and fair distribution in leadership, methods, dataset and solutions that can be reproduced for different scenarios or across different platforms.\nFor example, when making recommendations based on the selected dataset for health care related research, think if they will apply to different geographic conditions, such as both developed and developing countries.\nIf not, consider what you should change, and who you can invite to help improve your project.\n\nIf crucial voices and viewpoints are missing in your project, how can you invite them in? Talk to an expert (such as clinician, epidemiologist, community lead, and communication officer) if you are not one yourself.\nAlways remember that different stakeholders can introduce new but critical and often unexpected viewpoints and help you avoid incorrect or ineffective assumptions.\n"
  },
  {
    "path": "book/website/collaboration/new-community/new-community-guide.md",
    "content": "(cl-new-community-guide)=\n# Guide to Planning a Community\n\nWhat if you started a project with a thought like, “I have this great idea that I want to try on this public data!”?\nThere is nothing to worry about if you’re the only one working on it.\nHowever, if you want to develop this project - you become responsible for making people feel included in your project.\n\nAs a 'project lead', you want to set up a welcoming and inclusive environment and create the first set of visions and goals for your collaborators.\nYou cannot assume that everyone you collaborate with knows what is expected of them when they start to work with others on your project.\nTherefore, it’s important to set the right expectations from the beginning for your community, even though you might not have planned on having one (see more details: {cite:ps}`Sharan2020Apr`).\n\n(cl-new-community-guide-checklist)=\n## A Checklist for Planning Collaboration in Your Project\n\nThe checklist below will help you in making the process of establishing collaboration in your research project thoughtfully in a structured manner.\n\nThe practices listed here are derived from and limited by the experiences of the authors who participate in several successful Open Research communities and lead community-driven projects such as [The Carpentries](https://carpentries.org), [Mozilla Open Leaders](https://mozilla.github.io/open-leadership-training-series/), [Open Life Science](https://openlifesci.org/) and _The Turing Way_.\nWhile reading this chapter, please be aware that you may need to make adjustments for projects that may be very different in nature (for example, not entirely open source).\n\n(cl-new-community-guide-checklist-comms-platform)=\n### 1. Choose a Communication Platform\n\n- When leading an open project, use collaborative and open platforms such as [GitHub](http://github.com/) or [GitLab](https://about.gitlab.com/).\n- Evaluate the need for any real-time communications, such as if a text chat system like [Slack](https://slack.com) or [Element/Matrix](https://element.io/get-started) will be useful or if a mailing list will be sufficient (read details {ref}`Communication Channels <cm-os-comms-channels>`).\n  - Consider a separate internal communication platform for your community members and an external one for showing what you’ve done to the rest of the world.\n- An [X account](https://x.com) (formerly Twitter) or a simple website (such as on [GitHub pages](https://pages.github.com/)) can be useful external platforms.\n- Make sure that the choices of these platforms are made to ensure that there is a low barrier to join them.\n\n(cl-new-community-guide-checklist-proj-summary)=\n### 2. Provide a Project Summary File:\n\n- The first document in your project should be a project summary file, which in a GitHub repository will be a [README.md file](https://help.github.com/en/github/creating-cloning-and-archiving-repositories/about-readmes).\n- This will provide basic information about your project so that people can evaluate why your project will be interesting for them.\n  - Here is [a template](https://github.com/PurpleBooth/a-good-readme-template) by the GitHub user [PurpleBooth](https://github.com/PurpleBooth).\n- In this file, include what your project vision and goals are, why the project is useful, what the possible milestones are in the project, how a contributor or user can get started, who can they reach out to for help, and what is currently missing in the project in terms of stakeholders, skills, or scope.\n- You can use emojis, GIFs, videos, or your personal narrative to make your project relatable.\n  - See [The Atom project](https://github.com/atom/atom) for example.\n\n(cl-new-community-guide-checklist-code-conduct)=\n### 3. Select a Code of Conduct:\n\n- Add an Open Source Project [Codes of Conduct](https://opensourceconduct.com/) to your project.\n- This document should not be used as a token, it is very important to put intentional effort into it.\n- When using GitHub, you can add a “CODE_OF_CONDUCT.md” file on your GitHub repository.\n- List the expected and unacceptable behaviors, describe the reporting and enforcement process, explicitly define the scope, and use an inclusive tone  (see [GitHub instructions here](https://help.github.com/en/github/building-a-strong-community/adding-a-code-of-conduct-to-your-project)).\n- Whenever you update your code of conduct, invite comments from your members to ensure that their concerns are addressed.\n  - This can be done on [GitHub issues](https://help.github.com/en/github/managing-your-work-on-github/about-issues), or [Pull Requests](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/about-pull-requests).\n\n(cl-new-community-contrib-guidelines)=\n### 4. Provide Contribution Guidelines and Interaction Pathways:\n\n- A thoughtful guideline helps people decide which pathway they can choose to contribute to your project, or if they want to be in your community at all.\n- Make sure that your community interactions and different pathways to contribute are open, inclusive, and clearly stated.\n  - If people can’t figure out how to contribute they will drop off without helping.\n- Value different types of contributions - coding projects are not only about code, therefore list documentation and other management skills as well.\n- You can use the {ref}`Persona Creation Tool<pd-persona-creation>` or the [Personas and Pathways exercise](https://mozillascience.github.io/working-open-workshop/personas_pathways/) to brainstorm who could be your possible community members.\n- Here is a [template of community guideline](https://gist.github.com/PurpleBooth/b24679402957c63ec426) provided by the GitHub user [PurpleBooth](https://gist.github.com/PurpleBooth).\n  - See [_The Turing Way_'s contributing file](#ch-contributing) for reference.\n\n(cl-new-community-leadership)=\n### 5. Create a Basic Management/Leadership Structure:\n\n- A leadership structure in an open project should aim to empower others and develop agency and accountability in your community.\n- You can start by listing different tasks within your project and inviting your members to lead those tasks.\n- Provide appropriate incentives and acknowledgment for the contributions made by your community members.\n- Create opportunities for members to share some leadership responsibilities with you in the project.\n- When inviting suggestions and ideas from the community, provide the first set of plans where your community can develop from.\n- See this document from [Open Source Guides](https://opensource.guide/leadership-and-governance/) for reference.\n\n(cl-new-community-contact)=\n### 6. Provide Contact Details Wherever Useful:\n\n- Clarifying responsibilities for different members will allow people to reach out to the right person with any query.\n- Add details of the designated contact persons for technical problems, leadership questions, or any report on the Code of Conduct.\n- This will be particularly useful if something needs immediate resolution.\n\n(cl-new-community-approaches)=\n### 7. Identify Failed Approaches, and Stop Them:\n\n- Development happens in an iterative manner, therefore, revisit your plans and ideas in regular intervals and involve your members in the process.\n- Check if there are parallel developments or multiple approaches that should be merged or changed.\n- Fail fast, fail informatively - recognize what isn’t working for your project and stop it from continuing.\n- Document them and share why you failed and how you change your project or approaches going forward.\n- For Open Research communities you can maintain transparency when discussing failures and successes but refrain from singling out or blaming others.\n- This iterative approach comes from Agile Practices, see these short posts for reference:\n  - [The agile concept fail fast gets bad press but is misunderstood](https://www.information-age.com/agile-concept-fail-fast-gets-bad-press-misunderstood-123460434/)\n  - [The Beginner’s Guide To Scrum And Agile Project Management](https://blog.trello.com/beginners-guide-scrum-and-agile-project-management)\n\n(cl-new-community-documentation)=\n### 8. Have Documentation and Dissemination Plans for Your Project:\n\n- With new members joining your project, they must be able to find the information they need without asking you.\n- Investing in documentation plans will free you from many communication-related challenges by sharing general information regarding past decisions or the decision making process your project uses.\n- A good place to store the documentation is [wiki](https://en.wikipedia.org/wiki/Wiki) or similar platforms (like GitHub) where information can be shared transparently and updated by your community members democratically.\n- To disseminate outputs of your project, you should use persistent identifiers that can be shared and cited, for example, [digital object identifier (DOI)](https://www.doi.org/).\n  - [Figshare](https://figshare.com/) and [Zenodo](http://zenodo.org) are good examples of platforms that can provide you with DOI for all your shareable data.\n\nTwo more points are crucial for ensuring the effectiveness of a collaborative project: addressing technical issues and valuing the importance of diversity in team building.\n\nWe have explained them in the next subchapters on {ref}`Addressing Technical Issues<cm-new-community-techissue>` and {ref}`Valuing Diversity and Differences<cl-new-community-differences>`.\n"
  },
  {
    "path": "book/website/collaboration/new-community/new-community-teamwork.md",
    "content": "(cl-new-community-teamwork)=\n# Teamwork\nThe widespread standard in academia has been, and still is, to work individually for the majority of one’s time.\nHowever, if done well, working in a team can be more fun, more productive, and more effective.\nThere are both benefits and downsides of working in teams, and the key is to work together in such a way that the advantages outweigh the disadvantages.\n\n```{figure} ../../../figures/new-community.*\n---\nname: new-community\nalt: An illustration of 2 people who are working together and discussing a data chart.\n---\nMaking teamwork effective. [Royalty free image from Many Pixels](https://www.manypixels.co/gallery/)\n```\n\n## Team Framework\n\nThere are many popular frameworks that provide useful guidance on how to best work in teams.\nPopular examples are [Kanban](https://www.atlassian.com/agile/kanban), and [Scrum](https://www.scrum.org/),\nwhich are both practical implementations of the [Agile Manifesto](https://agilemanifesto.org/).\nThere are many particularities to working in a data science setting that will make application of these frameworks challenging.\n\n## Lessons on Teamwork for Research Software Development\n\n[Teamwork for Research Software Development](https://esciencecenter-digital-skills.github.io/teamwork-for-research-software-development/) is a standalone tutorial with lessons on teamwork, agile and scrum framework, project board such as kanban, challenges and practical recommendations.\nTo ensure that all team members have a shared understanding of ways of working, this can be delivered by any researcher leading a team with an understanding of these topics.\n\nDeveloped by the researchers at Netherlands eScience Center, this tutorial is geared primarily towards people that create research software in an academic setting.\nHowever, teamwork practices discussed here are generally useful for anyone trying to work on a team in scientific projects.\n\n## Further Recommendations\n\nThe *The Turing Way* guide for Collaboration, we have also provided useful resources for {ref}`facilitating remote collaboration<cl-mec-remote-collab>`.\nEspecially, check out recommendations for {ref}`organising<cl-mec-remote-organising-meetings>`, {ref}`list of tools<cl-mec-event-tools>` and {ref}`managing remote teams<cl-mec-remote-collab-team>`.\n\nAtlassian has [a great collection of blogs](https://www.atlassian.com/blog/teamwork) for\nnice ideas and tips on teamwork.\nSee for example [7 essential teamwork skills](https://www.atlassian.com/blog/teamwork/teamwork-skills-accelerate-career),\nor [How to run effective meetings and thrive](https://www.atlassian.com/blog/teamwork/how-to-run-effective-meetings).\n"
  },
  {
    "path": "book/website/collaboration/new-community/new-community-techissues.md",
    "content": "(cm-new-community-techissue)=\n# Addressing Technical Issues\n\nMake sure that you also have plans in place for people who want to contribute to your project but might deviate from your original goals very fast without supervision or guidance.\nIf specific skills or practices are required for someone to contribute to your project, you should be able to point people to relevant resources so that they can engage with your project effectively.\n\nHere are some recommendations to prepare your project for addressing technical issues that your team or community members can most likely face.\n\n## Setup tools to enable collaboration\n\nWhen writing up research either of the final report or for sharing preliminary findings, there should be a conscious decision about what software you are using to write out your result.\nThis decision affects how collaboration will look like in your project.\nTo avoid any potential barriers to collaboration, take the following aspects into considerations:\n* **Availability of software**: Ensure that all of the collaborators have access to the software and platform you are using, for example, paid subscription or licence to use proprietary software.\n* **Technical skills**: Ensure that all of the collaborators are comfortable using the software, for example, they are confident to edit a file written in a programming or mark-up language.\n\nContext-specific issues may appear depending on the roles and responsibilities shared within a team.\nTherefore, potential solutions can be planned to address these issues including providing short tutorials (see the next point).\nBeing aware of the potential barriers that the software we use may create can lead to choosing tools and solution that works for all our collaborators.\n\n## Provide short and concise tutorials\n\nIn most of the research projects, we work on what is urgent right now, which might mean that we may overlook what is important in the long term.\nFor example, we might want to test several algorithms on our data but don’t pay attention to recording the outcome systematically in a central platform that others access.\nOffering training or short pre-recorded videos on recommended practices can enable your community members to work using a standard workflow or take over some tasks from others.\n\n## Testing is important\n\nTo err is human! And when working under pressure, they might be more frequent.\n\nTest your codes and encourage your community to review and test each other's code.\nIn addition to writing code that solves problems, you should teach and promote the practice of [unit testing](http://softwaretestingfundamentals.com/unit-testing/) to test if the individual units/components of software work as expected.\n\nYou can also set up a {ref}`Continuous Integration<rr-ci>` environment to help automate testing in your workflow.\n\nSee the {ref}`testing <rr-testing>` section in the Guide for Reproducible Research for more information.\n\n## Reproducibility is even more important\n\nA great thing for less involved team members to do is constantly test the reproducibility of any code/environment.\nDo this from the start and it won’t be a surprise later when it doesn’t work on somebody else’s computer.\n\nReach out to the experts, especially when dealing with legacy code.\nReach out to other communities with specific expertise to save effort and time that can be invested in other tasks. For example, a lot of the scientific knowledge is built on top of results from FORTRAN, C, and Java code that isn't maintained any longer and, probably, isn't documented. Finding someone with the knowledge and experience of the legacy code to answer questions that other developers have will be a huge time saver.\n\nSee the {ref}`Guide for Reproducible Research <rr>` chapter for more information.\n\n## Share code (and data) early on\n\nDevelopers must share their code in a public version-controlled repository (like GitHub and GitLab) and coordinate who is working on what feature or fix.\nEspecially, when running on urgent projects against the clock, it is crucial not to waste time at the end of your project in compiling the different components of your research when you can practice doing it from the beginning.\n\n## Take note of the privacy issues\n\nAsk yourself, how can people who need to access this data get to it.\nHow they can re-use and share the data appropriately.\nChoose an appropriate open source license for your data, scripts, and software.\nChoose a relevant license ensuring the protection of information that is sensitive such as movement and location data, personal health issues, contact information, names, date of birth, and personal addresses.\nAvoid gathering personal information that is not necessary or breaches confidentiality.\n"
  },
  {
    "path": "book/website/collaboration/new-community.md",
    "content": "(cl-new-community)=\n# Managing a New Community and Team\n\nAs researchers, scientists and 'techies' we look for ways to use our skills to solve pressing, current issues.\n\nThe most recent example is the COVID-19 pandemic and related events {cite:ps}`WHO2020Jul` worldwide including the global lockdown that started in February 2020.\nThe research communities responded with a sudden surge of hackathons, data modelling projects, task forces, and working groups to find effective and immediate technical solutions to combat this health crisis.\n\n```{figure} ../../figures/decolonising-knowledge.*\n---\nname: managing-community\nalt: An illustration of many people standing on an academic platform. Some of them are helping other people join them in working together.\n---\nDecolonising Knowledge through inclusive and collaborative approaches. _The Turing Way_ Community, & Scriberia. (2020, November). Illustrations from the Turing Way book dashes. Zenodo. http://doi.org/10.5281/zenodo.4323154\n```\n\nSuch action-oriented efforts result from a motivation to pull together and combine our scientific knowledge to address unprecedented situations, which is surely an ideal way to move forward.\nNevertheless, forming effective collaborations is a challenging process, even in the best of times.\nKeeping a team engaged is a continuous activity that requires regular checking in and evaluation.\nBased on each evaluation we can change and improve our workflow and community practices.\nHowever, when we hastily create a project to tackle an immediate problem at hand, we don’t have the benefit of time to carry out such an evaluation.\nTherefore it is even more important to be intentional when creating teams and communities and apply the tried and tested best practices from the beginning.\n\nSo, how can we ensure that the teams and research communities we form during the time of urgency are built on the foundation of excellent science and community practices?\nTo help researchers address this issue, especially when starting a community or a team-oriented project in a short amount of time (such as a pandemic), we have compiled recommendations drawn from the experiences of community and technical experts.\nIn this chapter, we discuss the important aspects that help make a project truly productive, while being successfully community-oriented.\nWe also discuss useful ways to tackle technical issues that can arise in a project.\nIn the third subchapter, we urge our readers to identify their stakeholders, actively invite them to participate and value the differences that exist in their teams and communities.\n\nWe hope that the practices recommended in this chapter will give a good starting point for building successful collaboration with your team and community.\nWe want to prompt everyone to think critically not just about the technicalities of the work, but also the social environment in which it is being conducted.\n\n*This chapter was originally discussed and written in [an online post](https://www.software.ac.uk/blog/2020-05-26-cw20-speed-blog-bootstrapping-development-team-during-time-crisis) by Malvika Sharan, Yo Yehudi, Colin Sauze, Raniere Silva, Caroline Jay, Robert Haines and Claire Wyatt as a part of the [Collaboration Workshop 2020](https://www.software.ac.uk/cw20) speed blog series hosted by [Software Sustainability Institute](https://www.software.ac.uk).*\n"
  },
  {
    "path": "book/website/collaboration/oss-sustainability/oss-sustainability-challenges.md",
    "content": "\n\n# Sustainability of Open Source Projects\n\nEarly-stage projects often reach a point when funding has run out for a project that they have spent months or years developing, and they can face a daunting array of obstacles on the road to turning an academic or volunteer-led project into a robust, sustainable enterprise that will outlive its original funding source. \nIn this chapter we will outline the factors that should be considered when you want to turn a project into Open Source Software (OSS) with a self-sustaining organisation, and we will explore how different projects have achieved sustainability through a variety of organisational structures.\n\n## The big misconception about Open Source\n```{figure} ../../../figures/oss-sustainability-pathways-problem.*\n---\nname: oss-sustainability-pathways-problem\nalt: A researcher is torn between taking the path of private commercialisation or the path of open source.\n---\nThis image was created by Scriberia for The Turing Way community and is used under a CC-BY 4.0 licence for reuse. Zenodo. DOI 10.5281/zenodo.3332807\n```\n\nOne of the most common beliefs about Open Source is that it simply means \"free\" and therefore an open source project can never generate revenue or profit.\nThe [definition](https://book.the-turing-way.org/reproducible-research/open.html) used by The Turing Way states that OSS should:\n>Be publicly available: It is difficult to use and benefit from knowledge hidden behind barriers such as passwords and paywalls.\n>\n\n## Defining project sustainability\n\nNarrowly-defined, a sustainable project must have funding to continue operations, which alone represents a daunting challenge to someone who wants to take their idea beyond an academic or personal project so that it can thrive on its own. \nMore broadly-defined, sustainable open source projects encompass the values of reproducibility, transparency, accessibility, and reusability while maintaining an engaged community of contributors - and this is feasible through both monetised and non-monetised routes.\nWhile OSS must be freely available, including in the monetary sense, this does not necessarily mean that a project that is run openly and sustainably cannot be monetised. \n\nFor instance, many of the world's largest companies build, use and maintain open source software because open development has been shown to produce innovative, stable, and secure software tools that are in high demand around the world.\n\nIt can seem like there is a binary choice between commercialisation (for example, a startup or spinout company) and remaining completely open source (for example, setting up a volunteer-based community governance model. \nHowever, these two paths should not be considered mutually exclusive, and an open-source, community-governed project can work in tandem with a business based on that same project. \nThere are several pathways to generating revenue from an open source project, whether for profit or to sustain a not-for-profit enterprise. \nIn this chapter we'll present some of key considerations when looking to make a project sustainable, and how these differ depending on the organisational structure you want to pursue.\n\n```{figure} ../../../figures/oss-sustainability-pathways-solution.*\n---\nname: oss-sustainability-pathways-solution\nalt: A researcher considers the 4 pathways/pillars of OSS sustainability.\n---\nThis image was created by Scriberia for The Turing Way community and is used under a CC-BY 4.0 licence for reuse. Zenodo. DOI 10.5281/zenodo.3332807\n```\n## First steps towards OSS sustainability\nWhen considering whether a research output can develop into a self-sustaining project outside of academia, we urge you to reflect on the following four areas:\n\n- **Research & Innovation**: Is the project contributing to wider societal progress and continuing to improve?\n- **Community Engagement**: Does the project have an active contributor base to carry the project forward?\n- **Infrastructure & Maintenance**: Will the project be able to sustain itself and adapt to technological changes?\n- **Support**: Can the project respond to the needs of its user communities?\n\nIt's ok if you don't have an answer to all of these questions! \n\nThese questions will help you identify your project's strengths and areas where you need help, and you can refer to this [list of spinout resources](https://github.com/alan-turing-institute/research-application-management/blob/main/resources/innovation/spinout_resources.md) for more information.\nYou can also refer to the chapter on [Ethical Considerations for Open Source Governance Models in the Guide for Ethical Research](https://the-turing-way.netlify.app/ethical-research/ethics-open-source-governance.html) for an ethical lens on governance frameworks for Open Source communities.\n"
  },
  {
    "path": "book/website/collaboration/oss-sustainability/oss-sustainability-examples.md",
    "content": "# Examples of Open Source Business Models\n\nOpen source has been an important theme for AI communities in academia and industry. \nPopular open source software libraries like [OpenCV](https://opencv.org/) and [Scikit-Learn](https://scikit-learn.org/), and open dataset and model providers like [Hugging Face](https://huggingface.co/) and [OpenAI](https://openai.com/) have shaped how AI algorithms are discovered, improved, shared, and deployed. \nWhile each organisation pursued different paths towards sustainability, reflective of when they were founded, some themes emerge around important initial steps.\n \n## Community-led Sustainability Model\nOf the four organisations of focus in this case study, OpenCV and Scikit-Learn started as community-driven projects. \nBoth had a small group of motivated individuals with a mission of creating \"optimised\" and \"accessible\" code within their domains and found other interested supporters within their organisation or networks to help continue building out the project. \nThese grassroots efforts served to generate interest among many across academia and industry and foster a sense of community among these different user groups. \nThe Scikit-Learn community has recently spun out a company called [Probabl](https://techcrunch.com/2024/02/01/probabl-is-a-new-ai-company-built-around-popular-library-scikit-learn/), to offer services such as training and consulting relating to the scikit-learn codebase. \n\n## Investor-led Sustainability Model\nIn contrast, OpenAI and Hugging Face started as investor-funded organisations to tackle specific topics such as AI Safety and Chatbots. \nWhile Open AI began as a self-defined open source non-for-profit and Hugging Face as an AI product company, both have taken different paths as they have grown. \nAfter a private investment from Microsoft, Open AI split into a not-for-profit and for-profit arm. \nAround the same time, they also began exploring new models of releasing code and models in a more closed or tiered-access way, different from the original \"open approach.\" \nIn contrast, Hugging Face has moved in a different direction, transitioning from an AI product business model to become an open source AI model and data platform, with over 100,000 pre-trained models and 10,000 datasets hosted on the platform. \nIt has also built [BigScience](https://bigscience.huggingface.co/), a multi-language Large Language Model (LLM) openly with collaborators around the world.\n\n| Organisation | Founding Year | Founder & Founding Organisation | First Supporter(s) | Motivations |\n| -------- | -------- | -------- | -------- | -------- |\n| OpenCV     | 2000     | Gray Bradsky, Intel Engineer     | Intel researchers in Russia     | \"...not only open but also optimized code for basic vision infrastructure. No more reinventing the wheel.\"\"     |\n| Scikit-Learn     | 2007     | David Cournapeau, Google Summer of Code     | Matthieu Brucher (thesis) & INRIA (French National Institute for Research in Digital Science and Technology)     | \"designed to be simple and efficient, accessible to non-experts, and reusable in various contexts\"     |\n| OpenAI    | 2015     | $1B investment from Sam Altman and Elon Musk to tackle challenges around AGI     | $1B investment from Microsoft which led to capped-for-profit and not-for-profit division    | \"We will attempt to directly build safe and beneficial AGI, but will also consider our mission fulfilled if our work aids others to achieve this outcome.\"     |\n| Hugging Face     | 2016     | Clement Delangue and Julien Chaumond, Hugging Face chatbot apps     | VC funding     | \"We think the direction of responsible AI is through openly sharing models, datasets, training procedures, eval metrics, and working together to solve issues\"    |\n"
  },
  {
    "path": "book/website/collaboration/research-infrastructure-roles/community-manager.md",
    "content": "(cl-infrastructure-community-managers)=\n# Research Community Managers: Overview\n\nCommunity Management as a profession was developed to facilitate the social, informal and formal learning processes, which take place in Communities of Practice - \"groups of people who share a concern, a set of problems, or a passion about a topic, and who deepen their knowledge and expertise in this area by interacting on an ongoing basis\" @lave1991situatedlearning. \nCommunity Managers have been employed in open source projects in technical industries  since the early 1990's @michlmayr2009community , and more recently in research organisations (Universities and research institutes), where they are often known as Research Community Managers.\n\n\n```{figure} ../../../figures/research-community-manager.*\n---\nheight: 500px\nname: research-community-manager\nalt: Cartoon-like sketch of a person with eight arms. Two are embracing a group of people, while the others are outstretched. The person in the centre is a Research Community Manager, who has eight arms coming out of their shirt. Each arm holds a sign with text describing the main duties of a community manager. They include embedding open, inclusive and reproducible ideas, ensuring a shared understanding, facilitating stakeholder engagement and collaboration, providing technical support; co-creating, maintaining and communicating; and amplifying and championing their community.\n---\nWhat does a Research Community Manager do?\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.8169292](https://doi.org/10.5281/zenodo.8169292).\n```\n\n(cl-infrastructure-community-managers-tasks)=\n## What do Research Community Managers do? \n\nResearch Community Managers work to engage, enthuse and organise groups of scientists, researchers and/or patients and the public around shared research topics and objectives. \nThey are often involved in culture change to support collaboration between members of the community, through the development of community leadership and agency. \nThey value the people doing the research and develop structures to support the generation of bottom-up activity. Their goals are to:\n\n* Embed open, inclusive and reproducible research practices\n* Ensure a shared understanding of goals, roadmap, processes\n* Facilitate stakeholder engagement and collaboration\n* Provide technical support and domain expertise\n* Co-create, maintain and communicate project resources\n* Amplify and champion community learnings and achievements\n\nEach role is varied but the main activities are typically focused around advocacy for the community, stewardship, scaffolding for collaboration, and the flow of information across all levels of the research, both to and from leadership, and collaboration with the community. \n\nEffective collaboration can also require management of relationships between colleagues, including coaching, formal and informal mediation, reflexive exercises, and dealing with formal Code of Conduct [{term}`def<Code of Conduct>`] processes. \nThe aim of this work is to understand and gather learnings about how and where teams can work well together and diagnose issues that have contributed to challenges in collaboration. The Research Community Manager should then be well positioned to develop systems to support effective and inclusive collaboration, and mitigate harm to individuals or groups of the community. \n\n\nThemes of Research Community Manager work can be:\n* Catalysing connections with all stakeholders\n* Fostering relationships within and between communities (integrating communities together)\n* Linking the right people up together (based on expertise, interests and project goals)\n* Identifying and developing engaged community members into community leaders\n* Bridging between technical and non-technical members of the community by creating and delivering training\n* Encouraging, modelling and mentoring community members in high standards of reproducible, ethical, inclusive and collaborative data science\n* Facilitating the creation of sub-networks within the community around shared experiences, for example, an early career researcher network\n\nThe day-to-day tasks of a Research Community Manager could include: \n* Developing a strategy for community activities in alignment with the goals of the wider research project\n* Organising and hosting community calls\n* Onboarding new members\n* Attending community and project leadership meetings\n* Writing community reports or newsletters\n* Maintaining and updating the community repositories and online spaces\n* Collaboratively writing academic papers\n* Maintaining and catalysing communication on community forums\n* Planning for upcoming community initiatives\n* Running training courses and workshops\n* Reading and sharing publications relevant to the community\n* Managing membership lists\n* Mentoring community contributors\n* Meeting with and listening to community members to understand their needs and challenges\n* Maintaining stakeholder and project databases\n* Advocating for the community and project at external national and international meetings by giving presentations and running workshops\n* And a lot more!\n\n(cl-infrastructure-community-managers-skills)=\n## What qualifications or skills do you need to be a Research Community Manager? \nThe vast majority of Research Community Managers will have a scientific background that may include advanced degrees (at a Master's or Doctoral level). \nMany Research Community Managers also have a background related to the specific field or discipline they manage a community in, but not all of them do - many parts of the research process, tools and practices for collaboration are transferable across domains. \nIf the community is associated with software or programming, it is common for Research Community Managers to have some coding skills. \nThe focus on inclusive collaboration requires that Research Community Managers have significant depth of understanding in issues relating to Equality, Diversity, Inclusion and Belonging - see [{term}`def<Equitable, Diverse and Inclusive Practices>`] . \n\nThere is no professionally recognised qualification or training course to become a Research Community Manager, but organisations do offer training and resources to help support the professional development of people in these roles.\nThe values and approaches Research Community Managers bring to their roles are often the most important qualifications for success as a Research Community Manager.\n\n```{admonition} Community Skills and Core Competancies \nThe Community Skills Framework™ by Community Roundtable includes five skill families: Content, Technical, Business, Engagement and Strategic community management skills.\nSee the full document [online](https://communityroundtable.com/what-we-do/models-and-frameworks/community-skills-framework/) under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. \n\nThe CSCCE Skills Wheel include five core competancies: technical skills, communication, programme management, programme development and interpersonal.  \nSee the full document on [Zenodo](https://zenodo.org/record/4437294#.YYjzg07P1aQ) under the Creative Commons Attribution Non Commercial No Derivatives 4.0 International.\n\nRCM Skills Framework from Turing Research Community Management Team - \nSharan, M., & Karoune, E. (2023). Research Community Management - Skills framework. Zenodo. https://doi.org/10.5281/zenodo.8337627\n```\n\n(cl-infrastructure-community-managers-challenges)=\n## Challenges for Research Community Managers \n* Need to mediate between community members \n* May not be seen as part of the community themselves and need to build trust and credibility within it\n* Need to have a broad range of skills and expertise (technical, interpersonal, project management)\n* Supporting and encouraging engagement in the community \n* Building infrastructure from scratch in newly created roles \n* Connecting with new audiences who are not aware of the community\n* Bridging and translating between different groups in the same field or institution \n* Managing tasks where there are little formal processes in place \n* Managing priorities between different stakeholder groups \n* Not always visible when things go well!\n* Lack of formal career progression\n\n(cl-infrastructure-community-managers-benefits)=\n## Benefits to having Research Community Managers\n* Able to offer meta-thinking about how the community is structured and run \n* Shares best practices around research, communication, collaboration, diversity, equity and inclusion, and other areas of research \n* Supports the upskilling of members via technical skill sharing and training\n* Supports other members of the community to take on more active roles, including leadership, increasing sustainability, resilience and expansion of the community\n* Stewarding initiatives to develop the community such as data standards, a Code of Conduct, or training workshops\n* Offers a stable base for the community, to make sure information is documented consistently, meetings happen and relationships are strengthened\n* Connecting groups working on similar projects to support increased collaboration \n* Breaking down silos between departments, fields and research groups \n* Greater understanding of the needs of the community \n\n\n(cl-infrastructure-community-managers-organisations)=\n## Organisations that support Research Community Managers\nThe Center for Scientific Collaboration and Community Engagement ([cscce.org](https://www.cscce.org/) works to _\"professionalize and institutionalize the role of the community engagement manager (CEM) within science.\"_ \nThey offer training, co-created resources, research, and an active community of practice for scientific community managers to connect and support each other. \n\nThe Alan Turing Institute has a team of Research Community Managers that work across different data science communities. More information about the team can be found on their [webpage](https://www.turing.ac.uk/research/research-programmes/tools-practices-and-systems/community-management-and-open-research). \n\nThey have written a paper - Sharan, M., Karoune, E., Hellon, V., van Praag, C. G., Kayumbi, G., Bennett, A., Araujo Alvarez, A., Lee Steele, A., Batchelor, S., Lacey, A., Whitaker, K. (2024). Professionalising Community Management Roles in Interdisciplinary Research Projects. ArXiv e-prints, 2409.00108. [https://arxiv.org/abs/2409.00108v1](https://arxiv.org/abs/2409.00108v1)\n\nAnd the paper includes various reusable resources such as a skills and competency framework and proposed career pathways. \n\n(cl-infrastructure-communitymanagers-summary)=\n## Summary\nResearch Community Managers are an important part of scientific communities, supporting collaboration, best practices, and stewarding their communities as they develop. \nThey do not have a formal career path or qualifications, but typically have a scientific or research background themselves. \n\n"
  },
  {
    "path": "book/website/collaboration/research-infrastructure-roles/data-steward-personal-story.md",
    "content": "(cl-infrastructure-data-steward-personal-story)=\n# Data Steward Personal Story\n\n## Introduction\n\nMy name is [Esther Plomp](https://estherplomp.github.io/) and I’m currently a Data Steward at the Delft University of Technology in the Netherlands. \nI have worked at the Faculty of Applied Sciences since 2018. \nBefore I joined the Data Stewards at TU Delft I studied archaeology in Leiden and I did a PhD in bioarchaeology at the Vrije Universiteit Amsterdam at the Earth Science department. \nMy [research focused on the chemical composition of human teeth](https://doi.org/10.5281/zenodo.3929551). \nThis chemical composition, or isotope ratio, in your teeth may reveal where you grew up when your teeth formed. \nMy background involved lab work and method development, experiences which allows me to speak the same language as the researchers of the Faculty of Applied Sciences. \nWhile I don’t use the same terminology as all of these researchers (some of them work on quantum nanoscience or biotechnology!), my general background in research equips me with the context I need in order to interpret researcher’s needs and questions. \n\n## Embedding of the role\n\nAt TU Delft we have a large team of Data Stewards, one per faculty, and a Data Stewardship Coordinator. \nThis team meets once a week to discuss anything data related. \nIt is very beneficial to be part of a team so that I can ask questions when I don’t know the answer myself, or to be able to work together on training sessions or working groups. \n\n## Changing of the role\n\nThe Data Steward role has changed since I started in 2018. \nFirst it was very much focused on data requests and it involved setting up the Research Data Management policy of the Faculty (based on the TU Delft policy). \nTogether with the Data Steward of another faculty, I reached out to every department to gather feedback on the policy. \nThis process took almost a year, but ensured that the awareness of the policy increased and more importantly: the policy is practically relevant and provides guidelines that researchers appreciated. \n\nFrom data, the role moved to include software support. \nI attended a Carpentry Workshop (beginner workshop to learn basic programming skills) in 2019 and later that year I became a certified trainer. \nWhile I do not use programming for my daily work necessarily (I use it for parts of it to analyse data or generate reports, or provide data visualisations for my own research), these basic training sessions make it easier to understand requirements regarding software and code management and sharing. \nAt a technical university this is quite crucial, as most of the researchers at the faculty use programming languages on a daily basis. \nIt also allowed me to co-organise a [genetic data workshop](https://openworking.wordpress.com/2019/06/07/tu-delfts-first-genomics-data-carpentry/) together with researchers from my faculty for their department. \n\nSince 2020, I’m also increasingly focusing on general Open Science support. \nThis was something that was already a part of the role from the very start, but now I’m actively promoted as the contact person for Open Science support at the Faculty level. \nThere is additional support for Open Science at the Library, in particular the [Open Science Programme](https://www.tudelft.nl/library/tu-delft-open-science) at the TU Delft. \n\n## Challenges\n\nA downside of the role is that it can sometimes be lonely to be the only person working on the topic at the Faculty level. \nIt is difficult to connect to other types of support that are less closely related to research. \nI’m very fortunate that I have fantastic colleagues in the Graduate School and a Faculty Information Office, which are happy to collaborate on faculty related matters, such as the duration of PhD projects that we’re trying to decrease or any data regarding Open Access publications. \nAnother downside to the role is that there is no clear career track laid out. \nA way to move up the career ladder would be the Data Stewardship Coordinator role, which would remove me further from researchers than I would like. \nOne of the things that I enjoy most in my work is the interaction with researchers. \n\n## Benefits\n\nAs a Data Steward I have a lot of autonomy in deciding which activities I should pick up, for example, improving my skills or learn new ones such as programming. \nI also get to participate in (inter)national networks, such as the [Data Steward Interest Group](https://www.dtls.nl/about/community/interest-groups/data-stewards-interest-group/), The Turing Way, [Open Life Sciences](https://openlifesci.org/), the [Open Research Calendar](https://openresearchcalendar.org/) team, and the [Research Data Alliance](https://www.rd-alliance.org/groups/physical-samples-and-collections-research-data-ecosystem-ig). \nAll these activities and the very diverse range of questions for support that I receive result in a very varied schedule, where there is never a day that is exactly the same.\n\n\n"
  },
  {
    "path": "book/website/collaboration/research-infrastructure-roles/data-steward.md",
    "content": "(cl-infrastructure-data-stewards)=\n# Data Stewards: Overview\n\nData Stewards are a growing role within scientific communities.\n'Data Steward' is an umbrella term for numerous support roles that involve the creation, management and usage of research data (see also the {ref}`rr-rdm` chapter).\n\n```{figure} ../../../figures/data-stewards.*\n---\nheight: 400px\nname: data-stewards\nalt: Black, white, grey and purple, cartoon-like sketch of two characters depicted as data stewards in superhero attire, with the left figure gesturing towards symbols of knowledge and alert, and the right figure pointing to tools of the trade such as security and connectivity, all encompassed by a theme of data management and protection.\n---\nA superhero-representation of the core responsibilities of a Data Steward.\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.5706310](https://doi.org/10.5281/zenodo.5706310).\n```\n\n(cl-infrastructure-data-stewards-tasks)=\n## What do Data Stewards do?\nThe core responsibilities of a Data Steward can vary, ranging from policy advisor/consultant, to hands-on operational tasks, to technical or ICT-related tasks.\nA Data Steward facilitates the quality, integrity and access to (meta)data in a manner that is consistent with the appropriate laws and institutional policies, ensuring professional treatment of data throughout all stages of the research project.\nSee also: {cite:ps}`Verheul2019DataStewardship`\n\nEach role is varied but the main activities are typically focused around data, stewardship, and advising researchers:\n* Leading policy development and implementation on research data management\n* Act as a spokesperson, create awareness for the added value of good data management\n* Assist in planning the collection, management and publication of data in research projects\n* Explore, analyse and assess trends in research data management at your institute/research group\n* Develop and run training events on research data management\n\nThe day-to-day tasks of a Data Steward could include:\n* Checking and advising on a Data Management Plan (see {ref}`rr-rdm-dmp` for more information)\n* Providing support for grant proposals\n* Providing data management training\n* Guiding a researcher through the data sharing process\n* Leading discussions on what type of data to preserve for the long time and what data to share publicly\n* Planning for upcoming community information sessions, trainings, events\n* Providing information (through emails or on a website)\n* Writing a blog on a topic related to research data management\n* Being involved in international communities and working groups to improve the recommended practises or advocate for the importance of research data\n* And a lot more!\n\n\n(cl-infrastructure-data-stewards-skills)=\n## What qualifications or skills do you need to be a Data Steward?\nThere is currently no formal track to take to become a Data Steward. Most Data Stewards have a masters or doctoral education, or a background in research and education.\nThis background is needed to speak the same language as scientific staff, so that it becomes easier to understand their requirements and concerns.\nDepending on the particular focus of the position, you would need a more technical/ICT background, knowledge of discipline specific matters or experience with advising and policy construction.\nSoft skills are important in the advisory/policy roles, as you need to..\n\nThe “Towards FAIR data stewardship as profession” report ({cite:ps}`Scholtens2019FAIRSteward`) concluded that there are eight competency areas that of importance to Data Stewards:\n1. Policy/strategy: designing or raising awareness of research data management policies and regulations\n2. Compliance: advise on how to confer to research data management policies and regulations\n3. Facilitating FAIR/recommended research data management practices\n4. Services: propose, implement and monitor data management services and improve work processes\n5. Data infrastructure: identify requirements for infrastructure and tools\n6. Knowledge management: identify the level of research data management knowledge and skills\n7. Network and communication: set up networks to increase awareness and participate in (inter)national research data management networks\n8. Data sharing: archiving and publishing\n\nNext to these specific areas coordination of work and development of soft skills may be important.\nSee also: {cite:ps}`Jetten2021DataStewardship`\n\nGenerally, Data Stewards acquire these skills through learning-on-the-job, which is facilitated by existing networks (see {ref}`cl-infrastructure-data-stewards-support` below).\nThrough these networks experiences can be exchanged with peers, which is beneficial for personal and professional development.\nAn examples of these collaborative efforts is the '23 Things: Support for Research Data'({cite:ps}`Jetten201923ThingsData`) that provides a good overview of helpful resources for Data Stewards.\nDepending on the role of the Data Steward, learning discipline specific skills may be important through contributing to specific projects or attending conferences and meetings on relevant topics.\nAs the research culture adapts to (inter)national changes, so too do the skills of the Data Steward that have to be continuously updated.\n\n\n(cl-infrastructure-data-stewards-challenges)=\n## Challenges for Data Stewards\n* As Data Steward is a relatively new profession (~2017), their job profile is not always formally defined and their career-track may be unclear.\n* It is difficult to increase the awareness of the presence of the data steward and/or existing data policies, especially when resources are limited.\n* It takes time to know the researchers and earn their trust, which is important to be able to adequately advise them and work together to improve data management practises.\n* Not everyone sees the move towards a more transparent research culture as beneficial, and you can be met with resistance from researchers that do not want to change their existing workflows.\n* There might be limited resources and time to cover all the support requests from researchers.\nOften there's only a small central team of Data Stewards available to the entire instutite.\n* It is not always clear when you're providing high quality support and where you could improve, as there is no formal education and there is not always a strong feedback culture at your institute.\n\n(cl-infrastructure-data-stewards-benefits)=\n## Benefits of having Data Stewards\n* Sharing  information or provide training for data management so that researchers don't have to reinvent the wheel themselves and can easily learn about recommended practises, which will ultimately improve the quality of research.\n* Data Stewards can provide reassurance to researchers, by providing feedback on their Data Management Plans, practises and providing advise on alternative solutions.\n* Support for larger, collaborative grants where data management and open science are an integral part of the proposal ([Horizon Europe](https://ec.europa.eu/info/research-and-innovation/funding/funding-opportunities/funding-programmes-and-open-calls/horizon-europe_en)).\n* Data Stewards can play a leading role in developing policies regarding data and software management.\n* Data Stewards can provide answers to questions from researchers, or direct them to other relevant staff that will be able to answer the question.\n\n(cl-infrastructure-data-stewards-support)=\n## Organisations that support Data Stewards\n* [Research Data Alliance](https://www.rd-alliance.org/)\n* [DTL-Data Stewards Interest Group](https://www.dtls.nl/about/community/interest-groups/data-stewards-interest-group/)\n* [Research Data Access & Preservation](https://rdapassociation.org/)\n\n\n(cl-infrastructure-data-stewards-summary)=\n## Summary\nData Stewards are an important part of scientific communities, supporting recommended data management practices and saving researchers time by supporting them in these efforts. They do not have a formal career path or qualifications, but typically have a scientific or research background themselves.\n"
  },
  {
    "path": "book/website/collaboration/research-infrastructure-roles/data-wrangler.md",
    "content": "(cl-infrastructure-data-wranglers)=\n# Data Wranglers: Overview\n\nData Wranglers can be viewed as a specialised type of data scientist, primarily working in the space between data generators and data analysts. There are many activities that a data scientist might undertake, for example, data collection, wrangling, analysis, modelling, visualisation and communication. How these activities map onto different job titles is domain specific and will vary on a project and organisational level.\n\n```{figure} ../../../figures/data-wrangler.*\n---\nwidth: 500px\nname: data-wrangler\nalt: Hand-drawn illustration by Scriberia. A person representing a Data Wrangler is in a central bubble, on their left there are links to three clusters of connected shapes representing unstructured data. The Data Wrangler ‘unravels’ these clusters and re-structures them to form three distinct presents, labelled ‘Research Ready Data’, shown to the right of the central bubble. Attached to the central bubble there are smaller individual bubbles labelled ‘Connecting Specialists' (shown by a triangle of linked people), 'Data Privacy and Security’ (padlock) and 'Data Quality and Standards (sparkling diamond).\n---\nA Data Wrangler collaborates with multiple specialists to provide research-ready data whilst upholding data privacy and domain-specific standards. Created by Scriberia with The Turing Way community. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n(cl-infrastructure-data-wranglers-tasks)=\n## What do Data Wranglers do?\n\nIn a data science project, it is commonly observed that data wrangling tasks take the majority of time {cite:ps}`anaconda2020sods`, in contrast to data analysis and modelling.\nTraditionally, data wrangling tasks involve cleaning, restructuring and filtering data into analysis-ready formats.\nHowever, in terms of Data Wrangler as a profession, day to day tasks and objectives can be much more diverse.   \n\nData Wranglers work primarily in the space between data generators and data analysts, who are addressing the research question of interest.\nUnderstanding the intended use for the data in the context of the analysis and research questions, Data Wranglers can be in the position of influencing data generators in improving data collection methods.\nSimilarly, Data Wranglers will conduct preliminary analysis on the data to ensure both completeness of data and preparation for data analysis, acting as a proxy for the data generator’s knowledge during the data analysis process.\nA key focus of a Data Wrangler’s role is the preparation of analysis/research-ready data {cite:ps}`stewart2022table` in which data security, data management and FAIR standards {cite:ps}`mons2017fair` are all core priorities.\n\n### Examples of day-to-day tasks:\n\n* Data retrieval, querying, data analysis and visualizations\n* Data pipeline development, maintenance and improvement\n* Communicating with domain and technical experts\n* Data privacy and infrastructure setup and management\n* Summarising domain specific research papers\n* Sharing and reviewing resources and code\n* Maintaining communication across multiple teams\n* Running workshops on data wrangling and related skills\n\n(cl-infrastructure-data-wranglers-skills)=\n## What qualifications or skills do you need to be a Data Wrangler?\n\nData Wranglers should have experience with programming (no specific language required, but there is a wider adoption of both `R` and `Python`), database querying (`SQL`) and data analysis.\nThey will have an educational background to equip them to engage with the specific research data objects relevant to the projects they will work on.\nTherefore, they will have undergraduate and postgraduate degrees, or equivalent experience.\nAs with many data science and research infrastructure roles, further relevant training and specialisation can happen on the job.\nThey need good problem solving skills, with a curiosity and willingness to learn.\nLastly, good interpersonal skills are required in order to work with people with many different backgrounds, skillsets and priorities.\n\n(cl-infrastructure-data-wranglers-challenges)=\n## Challenges for Data Wranglers\n\nSome key challenges of a Data Wrangler role are:\n\n* Immutable data collection methods (unable to change how data has been collected and stored)\n* Stringent data privacy requirements\n* Difficulties in accessing datasets\n* Lack of or missing documentation on data generation, data structure and contextual information\n* Insufficient resources (human, computational, economic)\n* Unclear scope of responsibilities within the project\n\nIn an ideal situation, some of these challenges can be mitigated if communication with Data Wranglers near the start of a project is encouraged and facilitated.  \n\n(cl-infrastructure-data-wranglers-benefits)=\n## Benefits of having Data Wranglers\n\n* Improved communication between stakeholders: Data Wranglers will mediate the ‘language barriers’ between the different people involved in collecting the data, analysing the data and interpreting the data.\n* Centrally coordinated efforts: Data Wranglers can collect common questions and discussion topics of interest and provide answers and resources.\n* Data Wranglers will provide expertise in data collection, structuring and quality assurance.\nThis can decrease the time it takes to go from data provider to data analysis, whilst also improving analysis quality and focus.\n* Data Wranglers can ensure a project keeps up to date with field specific knowledge and standards relevant to data processing and sharing, and communicate this back to the project team.\n* By participating and contributing to data analysis meetings and tasks, Data Wranglers can provide the best suitable datasets for the analysis, help understand and overcome challenges, and suggest further research paths.\n\n(cl-infrastructure-data-wranglers-employers)=\n## Who employs Data Wranglers?\n\nHere are some examples of places that employ Data Wranglers in the UK:\n\n* [MRC Harwell](https://www.har.mrc.ac.uk/)\n  * Project: [International Mouse Phenotyping Consortium](https://www.mousephenotype.org)\n* [The Big Data Institute, Oxford University](https://www.bdi.ox.ac.uk/)\n  * Project: [Novartis collaboration](https://www.novartis.com/research-development/research-collaborations)\n* [The Alan Turing Institute](https://www.turing.ac.uk/)\n   * Project: [Early Detection of Neurodegenerative Diseases](https://edon-initiative.org/)\n   * Project: [The Artificial Intelligence for Multiple Long-Term Conditions, Research Support Facility](https://www.turing.ac.uk/research/research-projects/ai-multiple-long-term-conditions-research-support-facility)\n* [EMBL's European Bioinformatics Institute](https://www.ebi.ac.uk/)\n   * Project: [The Human Cell Atlas](https://www.humancellatlas.org/)\n* NHS England\n   * Project: [NHSE Secure Data Environment](https://digital.nhs.uk/services/secure-data-environment-service)\n   * Description: NHS England Data Wranglers support a wide range of research done by health and social care organisations using the National Secure Data Environment (NSDE) to ensure the data is in an accessible format. They also help suggest and test platform improvements, produce *\"here's one I made earlier\"* analyses, to save users time and advise on data in a technical capacity.\n\n_Please get in touch if you know of other organisations that you would like to add to this list. This list, and this Data Wrangler page in general, started off with a focus on Data Wrangler roles within an  academic research context, but these roles will also exist within other contexts._\n\n(cl-infrastructure-data-wranglers-summary)=\n## Data Wranglers: Summary\n\nA Data Wrangler position is becoming recognised as a crucial part of any project that involves large amounts of complex data, specifically in a research context.\nThey will have a diverse set of technical and interpersonal skills.\nA Data Wrangler will bring dedicated time and resources to increasing data quality whilst facilitating collaboration, ultimately resulting in more efficient and impactful project outcomes.\n"
  },
  {
    "path": "book/website/collaboration/research-infrastructure-roles/ram.md",
    "content": "(cl-infrastructure-ram)=\n# Research Application Managers: Overview\n\n## Context and the unmet need\n\nAcademic incentives encourage the creation of novel knowledge, such as creating new machine learning algorithms. \nOften, after ground-breaking work has been published in an academic journal, the algorithm and the software built to deploy it are not supported because the researcher begins a new project or moves to another institution.\nTraditionally, academia is less interested in supporting and rewarding work on:\n- Improving and extending existing research outputs/software\n- Promoting interoperability of new and existing outputs/software\n- Investing in usability, re-usability and user-friendliness of outputs/software (new and existing)\n- Co-creating outputs with users from the early stages of the research output lifecycle\n- Proactively discovering new real-world applications and use cases beyond the original academic field and investing in their promotion, adaptation and adoption \n\nIn other words, academia highly prizes knowledge creation. \nInvestment in dissemination, interconnectivity and usability beyond the original academic field is typically not rewarded with the greatest academic prizes. \nIn the highly competitive world of early career research, such work is therefore often not prioritised. \n\n```{figure} ../../../figures/research-application-managers.*\n---\nname: research-application-managers\nalt: An illustration depicting the animal rams as the research application managers who are connecting with users, applying research in real world and facilitating innovative process in research infrastructure.\n---\nResearch Application Managers work with the research team to embed outputs into user organisations. _The Turing Way_ Community, & Scriberia. (2020, November). Illustrations from the Turing Way book dashes. Zenodo. http://doi.org/10.5281/zenodo.4323154\n```\n\n\n## A RAM as a connecting role in the research ecosystem\n\nWe have created the role of a Research Application Manager (RAM) at The Alan Turing Institute with the aim of addressing this incentive gap. \nRAMs are specifically incentivised and rewarded to conduct the work that traditionally sits on the margins for a typical early career researcher engaging in creating outputs such as open source software. \n\nRAMs are in part inspired by the role of a Product Manager in tech firms. \nThey also have similarities with the role of a Developer Advocate and their work overlaps with that of the Community Manager.\nIn some cases the RAM workload may include detailed, often technical, input, resembling a Solutions Engineer or a Forward Deployed Engineer, who interface directly with customers to ensure that the tool meets user needs.\n\nThe measures of success for a RAM:\n- Engaging with the research team early on in the project to bring the perspective of potential users of their software tools and to proactively co-create from the early stages\n- Advocating for the user perspective throughout the development and feature prioritisation process\n- Identifying the key users and the target audience\n- Researching and understanding the user community\n- Engaging with the user community\n- Identifying sustainability and funding solutions in collaboration with the research team\n- Promoting the tools outside the academic field of the original research team\n- Approaching the output as a research \"product\" and bringing an appropriate level of \"market intelligence\" to the academic team\n- \"Packaging\" or \"re-packaging\" the tool to improve usability and accessibility to different audiences\n\nRAMs are a solution primarily to the incentive gap problem. \nThey bring a \"Team Science\" mindset to the research teams and promote research best practices - a task they share with the Community Manager role.\n\nBoth RAMs and CMs promote best practices in:\n- Interoperability of outputs \n- Reproducibility of research findings and outputs\n- Team science and open science\n- Ethics\n- Co-creation\n- Inclusivity\n\nCommunity managers are becoming an established role in the research ecosystem and in open source software communities in particular. \nWe hope that RAMs will have a similarly successful trajectory. \n\nKey RAM values: _adaptability, collaboration and legacy_\n\n"
  },
  {
    "path": "book/website/collaboration/research-infrastructure-roles/research-community-manager-personal-story-1.md",
    "content": "(cl-infrastructure-research-community-manager-personal-story-1)=\n# Research Community Manager Personal Story\n\n## Introduction - tell us about your background and how you became a RCM?\nMy name is [Dr Emma Karoune](https://www.turing.ac.uk/people/research-associates/emma-karoune) and I'm currently a Principal Researcher focusing on Research Community Building at The Alan Turing Institute. \nI joined the Turing at the start of 2021 to be a Research Community Manager (RCM) for a Covid-19 research project. At this time, this role was new at the Turing and I could not actually be called a RCM so my job title was Research Associate. \n\nBefore I joined the Turing, I did quite a few different types of roles in and out of academia and I think this varied experience, and the skills I learnt along the way, make me ideal for the varied and broad work of a RCM. \nI started my academic career as an Archaeobotanists (an archaeologists that specialises in plant remains) with a PhD from the Institute of Archaeology, University College London. \nIn my PhD, I did a replication study of someone elses identification method, and quiet unsurprisingly!, I found it could not be replicated accurately. \nThis sparked my interest in reproducibility and open research. \nAfter finishing my PhD, I went off to work in Education and trained as a high school science teacher and worked in various education roles for about 10 years. \nI then started to come back into academia and focus on open research. \nI've led community open research projects, such as the FAIR Phytoliths Project at Historic England, and I lead a community called [Open Phytoliths](https://open-phytoliths.netlify.app/) that is striving to bring open research practices into this discipline (phytolith research) and also more widely in related disciplines such as Archaeology and Palaeoecology. \nI also work with other open research communities such as OLS, Software Sustainability Institute and ELIXIR. \n\nSince working at the Turing, I have worked across different health data science projects and with interest groups and I also work closely with the Turing Skills Team on data science skills related research and community projects. \n\nI very much see myself now as a generalist with lots of transferable skills that can be applied in any research domain and I really enjoy the challenge of working in multiple disciplines.  \n\n## Embedding RCM at Turing\nAt Turing, I joined the Institute when there was only one other RCM - the wonderful Malvika Sharan working on the Turing Way. \nMalvika then led the establishment of the RCM team at Turing and we have worked together to grow the team and put in place processes and resources for setting up research communities for Turing projects. \nAt it's largest, the RCM team had 10 members, and we work as a cross-cutting team across the Turing on multiple projects and programmes. \nThe team approach has enabled us to refine processes, establish ways of working and support each other. \nIt has also allowed us to draw connections between our communities to reuse resources and share best practices across domains and sectors.\nEffectively making our community work more impactful.\n\nWe work closely with senior leaders to scope community management during the early stages of projects, ideally this is done at the funding application stage. \nThis ensures that community management roles are properly resourced for the length of projects. \nWe currently fund most RCM roles through research grants and therefore our roles are specifically tied to the programmes or projects where the funding sits. \nAlthough our positions are usually funded for 2 or more years, being tied to a project is not always ideal as we would like to have a bit more flexibility with our deployment of community management across the Turing Institute and we would therefore like to offer permanent positions for our team members for this reason and also to give greater job security helping us to retain skills and talent.\n\n## Challenges\nAs the RCM role is fairly new in research (they are frequently found though in open source and gaming communities), there are challenges in understanding the role and also getting buy-in and recognition for these positions. \n\nThis is one of a few emerging research infrastructure roles (also known as research technical professionals) and the work we do does overlap with other roles. \nWe are one of multiple research infrastructure teams at Turing and so we have been doing some work to understand the scope of roles, similarities, differences and overlapping skills. \nWe have created personas for all roles in data science teams at Turing - see [Data Science Team Personas: case study from The Alan Turing Institute](https://doi.org/10.5281/zenodo.11658994).\nBut there is still a general knowledge gap that we have to fill when we first start working with new staff members at Turing and also external organisations. \nThis lack of understanding of the role can sometimes lead to a lack of buy-in for RCM positions in projects. \n\nAlso on a personal level, it is risky for our own careers to take on a research infrastructure position at the moment as there is currently no defined career paths for this role, and others roles, and much of the work that we undertake is not recognised, or in fact measured, in current research metrics. \nThis means at present it can be a disadvantage to us taking on these roles especially if we want to transition back to a traditional academic role. \nWe may not be producing the kinds of traditional research outputs, such as research articles, which are currently a measure of academic success and are often needed to climb the academic career ladder. \n\n## Benefits\nI've been lucky to work in a team of RCMs and this provides emotional support. \nThis is really needed for any RCM as we deal with people day in and day out and all the delights but also all the problems that come with that work. \nIt's great to have colleagues that understand this and can be there to give advise and sometimes a shoulder to cry on.\n\nRCM work is very varied and challenging. It's great for people, like me, that love problem solving and not knowing what the next day will bring. \n\nRCM work is also great experience and a wonderful stepping stone into senior research roles. \nA lot of the work we do involves skills that are needed for Team leads or Principal Investigators such as stakeholder management and engagement. \nWe also often work at the strategic level of projects and very closely with senior team members. \nThis experience is excellent for career progression.\n\n## Do you have any top tips for other people that might be interested in  working as an RCM?\nNot having been a research community manager before, and by that I mean not working in a job with the formal title, can hold people back from applying for their first RCM role. \nDon't hold back!\nOften people work as community managers without being called a community manager.\nIn research we naturally get involved in open research or domain specific communities and we take on some community building type tasks. \nThis is how I started. \nThese types of community spaces give you experience in things like running meetings, bringing people together to take part in events, writing for wider audiences and managing communication channels.\nThese are all valuable skills for a RCM and you can put those on your CV and talk about them in an interview. \nIf this work interests you, you should look out for roles and apply!\n\n\n"
  },
  {
    "path": "book/website/collaboration/research-infrastructure-roles/research-infrastructure-developer.md",
    "content": "(cl-infrastructure-rid)=\n# Research Infrastructure Developer: Overview\n\nResearch Infrastructure Developers (RIDs) are experts in building and maintaining the customised hardware and software infrastructure used by researchers, ranging from the very large (High Performance Computing systems and data storage services) used by thousands of users down to bespoke virtual machines for individual projects.  They are highly skilled team members who can also conduct their own research as part of their role. \n\n(cl-infrastructure-rid-role)=\n## What do Research Infrastructure Developers do? \n\nResearch Infrastructure Developers design and build the computational and data infrastructure for researchers, making use of best practice techniques such as software defined infrastructure, continuous integration and deployment, version control) to create systems that are performant, resilient and easy to (re-)deploy and maintain.\n\nThey may be attached to a specific project or they may work as part of a team building and supporting larger, shared services (most usually both).\n\nBecause the role involves design responsibility for future infrastructure, RIDs may be PIs or have their own research projects related to infrastructure (for example looking at a new accelerator, network or processor technology), depending on the institution and policies of the projects they are working on.\n\nAs they progress in their career, RIDs may be responsible for entire large infrastructure at an institution or nationally.\n\n## Who are Research Infrastructure Developers?\n\nResearch Infrastructure Developers come from a wide variety of backgrounds - some are professional system administrators or experienced DevOps professionals who have joined from the commercial world, while others are ex-Researchers who picked up infrastructure skills as part of their career as a researcher, a classic example being the PhD or postdoc who as part of their duties looks after a small Linux cluster for their group, or helps their group deploy their application stack on supercomputers they have access to (or even the Cloud) so that other researchers can get on with their research.\n\n## What qualifications or skills do you need to be a Research Infrastructure Developer? \n\nThe very nature of this work means that qualifications are hard to come by and so the most important skills are creative problemsolving, a desire to be helpful and the kind of mind that doesn't accept systems not working properly. Extremely useful technical skills to have (depending on the exact area) are Linux, shell, Python, debugging compiler/library issues, management of schedulers, file-systems and automation tools like Puppet or Ansible.\n\n## Challenges for Research Infrastructure Developers\n\n* Balancing the needs of the institution vs those of individual academics.\n* Building infrastructure \"right\" (not increasing tech debt) despite resource constraints and changing requirements.\n* The technology stack is a moving target and so RIDs need to be flexible and able to keep up to date.\n* IT work is not esteemed by institutions or funders and so it can be challenging to feel the value to give to the organisation.\n\n## Benefits of having Research Infrastructure Developers\n\n* The infrastructure which underlies research is more reliable and sustainable.\n* Having experts build infrastructure frees up \"brain capacity\" of researchers to focus on research problems.\n* Sharing of best practices in infrastructure design across projects and the consolidation of hardware and software. \n\n(cl-infrastructure-rid-support)=\n## Organisations that support Research Infrastructure Developers\n\nCurrently there are no national organisations as this is a new area being pioneered at UCL ARC. If you want help setting up a RID team in your organisation please contact ARC.\n\n* [UCL ARC](https://www.ucl.ac.uk/advanced-research-computing/advanced-research-computing-centre)\n\n(cl-infrastructure-rid-summary)=\n## Summary\n\nResearch Infrastructure Developers are highly skilled, valuable members of any institution that is conducting computational research.\nThey bring technical design skills as well as best practices from hardware/software architecture and open source development to academic research. \nSome also conduct their own independent research projects. "
  },
  {
    "path": "book/website/collaboration/research-infrastructure-roles/rse-personal-story.md",
    "content": "(cl-infrastructure-rse-personal-story)=\n# Research Software Engineering Personal Story\n\n## Introduction\n\n\nThe [Society of Research Software Engineering](https://society-rse.org/) was founded on the belief that a world which relies on software must recognise the people who develop it. \t \n\nAlthough originating in the UK, the concept of Research Software Engineering (RSE) has been widely adopted and specialised roles across academia, industry and other sectors are being recognised across the globe (see [list of International RSE communities](https://society-rse.org/international-rse-organisations/)).\n\nIn this chapter, we share a personal story in the form of an open interview with [Saranjeet Kaur Bhogal](https://saranjeetkaur.github.io/About-Me/) who has been spearheading efforts to establish recognition for RSE skills and roles in Asia.\t \n\nRecently, she has set up the [RSE Asia Association](https://rse-asia.github.io/RSE_Asia/) to connect with different Asian researchers working in this space and establish pathways for early career researchers to build their skills in RSE in preparation for their RSE careers.\n\nBefore you dive into the interview, please note that we have a chapter describing the {ref}`Research Software Engineering in Research Infrastructure Roles<cl-infrastructure-rse>` as well as specific recommendation for {ref}`starting a new community<cl-new-community>`.\n\n\n```{figure} ../../../figures/rse-community.*\n---\nheight: 400px\nname: rse-community\nalt: International RSE community is shown as a world map with different people helping each other jump from one continent to other. Especially shows people in India joining in the RSE network in Europe.\n---\nRSE Asia Community joins the International RSE Network. This image was created by [Scriberia](http://www.scriberia.co.uk/) for The Turing Way community and is used under a CC-BY 4.0 licence for reuse. Zenodo. DOI [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807)).\n```\n\n**Tell us about your background, and what led you to set up the RSE Asia Association?**\n\nMy name is [Saranjeet Kaur Bhogal](https://saranjeetkaur.github.io/About-Me/) and I'm a Statistician based in India.\nI am interested to learn about open source and open science and like to remain involved with open science community work.\nIn early 2021, I wrote the first draft of the [R Development Guide](https://github.com/r-devel/rdevguide) through a project funded by the [R Foundation](https://www.r-project.org/foundation/). Furthermore, I co-lead the work on the outreach of the R Development Guide at the [Digital Infrastructure Incubator at Code for Science & Society](https://incubator.codeforscience.org/).\nRecently, I am working as a Technical Writer with The R Project at the Google Season of Docs 2022 for a project to [\"Expand and Reorganize the R Development Guide\"](https://github.com/rstats-gsod/gsod2022/wiki/GSOD-2022-Proposal).\nPreviously, I have also worked with the Julia Language organization for [Google Summer of Code 2020](https://gist.github.com/SaranjeetKaur/37086fea06076bd3ec76d052cc166378).\nIn early 2022, I was selected as the founding committee of NumFOCUS Project Incubator.\nThis Incubator is designed to support the growth of open-source scientific projects and communities and provide such projects with the required tools for becoming NumFOCUS Affiliated.\nI co-founded the [Research Software Engineering (RSE) Asia Association](https://rse-asia.github.io/RSE_Asia/) during my participation in the [Cohort 4 of the Open Life Science programme](https://openlifesci.org/ols-4/projects-participants/), to promote the RSE community and profession in the Asia region.\nI am also participating in the [Pilot Mentorship Programme](https://society-rse.org/events/pilot-mentoring-programme/) of the Society of Research Software Engineering to further build the RSE Asia community.\n\n**What is the main motivation behind starting the RSE Asia Association?**\n\nThe RSE Asia Association was started because there was a lack of representation from the Asian region in the international RSE community. Another reason was the significant timezone difference with the global north.\nDespite the shift of events to online mode due to the pandemic, the timezone difference remains a challenge for us when attending the events.\nHence, we started RSE Asia to conduct events in a more Asia friendly timezone, and promote the RSE community and profession in Asia.\n\n**How did you get started?**\n\nAlong with [Jyoti Bhogal](https://jyoti-bhogal.github.io/about-me/), I started by getting a structured mentorship for building RSE Asia.\nThe [Open Life Science](https://openlifesci.org/) programme's Cohort-4 (OLS-4) is where we started scoping out our work and built initial social presence as well as public infrastructure like our [website](https://rse-asia.github.io/RSE_Asia/) and [Twitter account](https://twitter.com/RSE_Asia).\nWe launched RSE Asia on 14th October 2021 during our participation in OLS-4.\nThe launch invitation and our graduation video from OLS-4 are available on our [website](https://rse-asia.github.io/RSE_Asia/talks.html).\n\n**What impact do you think is the RSE Asia Association is making in your community?**\n\nWithin less than a year from our launch, we already have followers from around the work on our official [Twitter account](https://twitter.com/RSE_Asia).\nI now represent RSE Asia as an observer at the [international council of RSE](https://researchsoftware.org/council.html).\nI was also invited to various RSE events taking place at the international levels, including direct mentorship and support from the Society of RSE.\nBased on these interactions and connections, it has become evident that representation from Asian communities had been long missing in the international RSE networks and RSE Asia Association is committed to address that.\nThus, the impact I see is that RSE Asia is gaining momentum & receiving recognition in the international RSE community.\n\n**What tools/software do you use most for the RSE Asia Association digital infrastructure?**\n\nMostly [GitHub organization](https://github.com/rse-asia), our [organization website](https://rse-asia.github.io/RSE_Asia/) is hosted on GitHub.\n\n**Do you have any top tips for other people that might be interested in starting a Research Software Engineering association/community?**\n\nIf possible try to start with a structured mentoring programme, like the [Open Life Science Programme](https://openlifesci.org/) - they can be immensely helpful in your community-building journey as they empower you with the best of tools and advice from the very start.\n\n**Do you have any tips on things to avoid?**\n\nTry to collaborate more and avoid working solo when you start with community building, it can get too big, too soon - so it is always helpful to have a group of collaborators along.\n\n**Are there any other organisations/networks that you're collaborating with?**\n\nI (with my Co-Founder [Jyoti](https://jyoti-bhogal.github.io/about-me/)) started building the RSE Asia Association as a project during my participation in the [Open Life Science Cohort-4 (OLS-4) programme](https://openlifesci.org/ols-4/projects-participants/) with [Anne Fouilloux](https://github.com/annefou) as our mentor.\nAfter OLS-4, I participated in the [Pilot Mentoring Programme by the Society of Research Software Engineering](https://society-rse.org/events/pilot-mentoring-programme/) to further build the community around RSE Asia under the mentorship of [Michelle Barker](https://www.researchsoft.org/people/), whereas Jyoti joined [OLS-5 with a project to create onboardings pathways](https://openlifesci.org/ols-5/projects-participants/) under the mentorship of Malvika Sharan.\nRecently, I presented talks about the work being done at RSE Asia at various events organized by groups and networks like the Asia Pacific Advanced Network (APAN53), the Research Software Alliance, the Collaborations Workshop (CW22) by the Software Sustainability Institute (All these talks are shared on our [website](https://rse-asia.github.io/RSE_Asia/talks.html).).\nWe are open to collaborating with other organisations and networks too!\n\n**Apart from timezone differences what would you describe as the main challenge for your community?**\n\nIt is a multinational association - so that is a unique challenge in itself.\nSeveral languages and cultures thrive in Asia and we are planning to set up a working group that includes representatives from different parts and nationalities of Asia - so that we have more understanding of the local research culture.\n\n**What problems did you encounter along the way and what were some of the ways to solve them?**\n\nLack of awareness about the term 'Research Software Engineering' in Asia has been challenging.\nTo solve this we are planning to conduct some awareness events (more on that will be available on our website soon).\n\n**What types of activities does RSE Asia support? Are there other activities you'd like to support in the future?**\n\nWe participated in Hacktoberfest 2021.\nWe are very keen on participating in online events/workshops/hackathons that help provide exposure to technical skills to our community members and also highlight the work that they do!\nIn the future, we hope to co-organize some events with the Open Science communities and the international RSE community.\n\n**Which other organisations have influenced you the most when starting up RSE Asia?**\n\nThe [Society of Research Software Engineering](https://society-rse.org/) has been the most influential one.\nI got introduced to the work of the Society during my participation in the [useR! 2021](https://user2021.r-project.org/) conference.\n\n**Have you planned/do you foresee any governance structure for RSE Asia Association?**\n\nWe are planning to set up a working group for RSE Asia soon.\nSetting up an Advisory Board is the next step toward bringing more structure to the organisation's governance process.\n\n**Have you been able to connect with other RSE associations across the globe? Has this been useful? How can other RSE associations help you get started?**\n\nYes, we are planning to collaborate with RSE AUNZ for an event happening this year.\nI feel it is very useful to connect with the other RSE associations as there is always an exchange of ideas.\nBesides that, I am an observer at the international council of RSEs and represent RSE Asia there.\nAt the council meetings, I get to interact with the representatives from various RSE associations and know more about their work.\nWe are always open to discussing collaborations with the other RSE associations.\n\n**About awareness raising -- there is a similar issue in Latin America; to the best of my knowledge, the discussion around the need for RSEs hasn't even started there yet! Is starting the RSE community a one-person effort? Or is there a critical mass of people pushing this effort?**\n\nTo start with we are only a couple of people leading this initiative in Asia.\nAlthough we have immensely benefited from various Mentorship programmes and Mentors, there is still a need to get more people involved from Asia to push the effort forward.\nWith the hope to achieve this, we are planning to set up a working group soon.\n\n**Where do you see the RSE Asia Association going in the future?**\n\nI feel the RSE Asia Association would expand more and include more representatives across the Asian region in the future.\nWe are setting up a Working Group and an Advisory Board for RSE Asia, details for which are shared on the [RSE Asia Association](https://rse-asia.github.io/RSE_Asia/).\n\n_This personal story in the form of an open interview was originally written by Saranjeet Kaur Bhogal during the Turing Way book Dash in May 2022. We acknowledge all the people who contributed their time asking questions and reviewing the written draft: Anne Lee Steele, Arielle Bennett, Carlos Martinez, Elisa Rodenburg, Emma Karoune, Esther Plomp, Kim Martin, Lena Karvovskaya and Malvika Sharan (names are in alphabetical order)._\n"
  },
  {
    "path": "book/website/collaboration/research-infrastructure-roles/rse.md",
    "content": "(cl-infrastructure-rse)=\n# Research Software Engineer: Overview\n\nResearch Software Engineers (RSEs) are programmers with scientific backgrounds who play increasingly critical roles in the conduct of research and production of research software tools. \nThey are highly skilled team members who can also conduct their own research as part of their role. \n\n\n(cl-infrastructure-rse-role)=\n## What do Research Software Engineers do? \nRSEs work on research projects. \nThey may be assigned to projects based on skills or background from a pool of other RSEs, or be specifically hired to work on a project. \n\nAdditionally, RSEs can also be PIs and run their own independent research projects, depending on the institution and policies of the projects they are working on. \n\n## Who are Research Software Engineers?\nRSEs typically have a scientific or research background, often developing programming skills during masters or doctoral studies. \nYou can find out more about the backgrounds of RSEs through the [Software Sustinability Institute's 2018 Survey](https://www.software.ac.uk/blog/2018-03-12-what-do-we-know-about-rses-results-our-international-surveys). \n\n## What qualifications or skills do you need to be a Research Software Engineer? \nThere are not specific formal qualifications needed to become an RSE, but the majority will have at least one advanced degree (masters or doctoral level). \nHowever, all RSEs are able to program, with the majority coding in Python, SQL, R, C/C++ or JavaScript.\nRSEs are also likely to understand concepts such as agile development, integration and testing, software architecture, and version control. \n\n## Challenges for Research Software Engineers\n* Lack of formal pathways for development\n* Production of software and tools not always recognised as a research output \n* RSEs not viewed as researchers in their own right\n* Adjusting to working on different projects, possibly far from their original background \n\n## Benefits of having Research Software Engineers\n* Highly technical skills that support researchers who cannot program\n* Sharing of best practices in research software engineering across projects \n* Apply cross-disciplinary knowledge to different projects \n* Software will be more reliable and robust, supporting reuse and reproducibility \n\n(cl-infrastructure-rse-support)=\n## Organisations that support Research Software Engineers\n* [Society for Research Engineering](https://society-rse.org/)\n* [Software Sustainability Institute](https://www.software.ac.uk/)\n\n(cl-infrastructure-rse-summary)=\n## Summary\nResearch Software Engineers are highly skilled, valuable members of any research group that is conducting computational research.\nThey bring technical programming skills as well as best practices from software architecture and open source development to academic research. \nSome also conduct their own independent research projects. "
  },
  {
    "path": "book/website/collaboration/research-infrastructure-roles.md",
    "content": "(cl-research-infrastructure-roles)=\n# Research Infrastructure Roles: Introduction\n\n```{figure} ../../figures/researchers-environment.*\n---\nheight: 500px\nname: researchers-environment\nalt: The image is a complex amalgamation of people places and things, resembling an urban area with construction happening, in a colour scheme of pink, grey, black, and white. At the top of the image is a header that states \"RESEARCHERS\" and at the bottom is a footer stating \"ENVIRONMENT\". The image contains the following. In the top left is a person in a construction crane carrying a series of ones and zeroes wearing a hard-hat looking down. They are labeled \"Research Software Engineer\". In the bottom left, we see an older male-presenting person with a cane scratching his head looking at a math formula sketched onto the side of a building. Next to them is two pink fluffy rams. One is trapped insight of a light bulb. I hope they manage to escape... This scene is labeled \"Research Application Managers\". In the top right is a female-presenting person in a pink shirt sketching ones and zeroes onto the side of a bridge who is labeled \"Data Steward\". In the bottom right is a series of cylinders with little stick figures climbing up ladders to a light bulb that is labeled \"Useful Projects\". They are being looked upon by a slightly amused looking man with short dark hair.\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\nSuccessful research and scientific collaborations rarely occur without individuals, or teams, taking on the work of structuring participants' interactions, facilitating work, and supporting the impact of the project.\nThese people may be either volunteers or paid, depending on a project's funding, size, length, and number of organisations involved.\n\nThese are called **research infrastructure roles** because they provide specialised skills, expertise and services required for effectively carrying out and delivering high-quality research.\n\n```{note}\n**What is Research Infrastructure?**\n\nPhysical or digital facilities, resources, expert workforces and specialised services available towards research and for the use of research communities is called Research Infrastructure.\nReferences: [Science Europe](https://scienceeurope.org/our-priorities/research-infrastructures/) and [National Institute of Health and Care Research](https://www.nihr.ac.uk/explore-nihr/support/research-infrastructure.htm)\n```\n\nHistorically, some of these roles were seen as merely 'research support' roles, however, there has been a growing recognition that these are a crucial part of research teams, and often a significant proportion of these roles require research expertise.\nThe specifics of these roles will vary but can include handling administrative work, managing data storage, stakeholder engagement, community management, communications, software engineering, events coordination, and a lot more.\n\nPeople performing these types of roles have varied professional experience and backgrounds, but will often have some research experience, although not necessarily in the field they are now working in.\n\n(cl-research-infrastructure-roles-prerequisites)=\n## Prerequisites\n\nThere are no prerequisites for this chapter.\n\n\n(cl-research-infrastructure-roles-summary)=\n## Summary\n\nThis chapter of the Turing Way covers examples of different research infrastructure roles, their importance in promoting collaboration, ethical research, and reproducibility, and additional resources to find out more about them.\n\nWe invite anyone who works in a research infrastructure role to share their experiences as a case study.\n\n(cl-research-infrastructure-roles-motivation)=\n## Motivation and Background\n\nWithout research infrastructure roles, a lot of projects would never succeed!\nBut this work is often hidden and not visible in academia, where papers and citations are the primary \"reputation currency\" and the system is very focused on promoting those in \"traditional\" academic careers.\nThe motivation for writing this chapter and providing examples of the type of work that goes into research infrastructure is to make this hidden labour visible to a wider audience and highlight just how critical these aspects of research are for any community or project.\n\nOther initiatives such as the [Software Sustainability Institute](https://www.software.ac.uk/), the [Center for Scientific Collaboration & Community Engagement](https://www.cscce.org/), and the [Hidden REF](https://hidden-ref.org/), are all contributing to the growing recognition of the importance of these roles for research.\n\n(cl-research-infrastructure-roles-examples)=\n## Examples of Research Infrastructure Roles\n\nThis initial list of examples of Research Infrastructure Roles that has been expanded as part of _The Turing Way_ Hackathon Workshop at the [Big Team Science conference 2022](https://bigteamscienceconference.github.io/).\n\n* Community manager\n* Project manager\n* Research software engineer\n* Research application manager\n* Programme manager\n* Data steward\n* Data wrangler\n* Research infrastructure developer\n* Partnerships development manager\n* Grant application manager\n* Community engagement lead\n* Librarian\n* Communications manager\n* Events manager\n* Participatory research manager\n"
  },
  {
    "path": "book/website/collaboration/shared-ownership/shared-ownership-challenges.md",
    "content": "(cl-shared-ownership-challenges)=\n# Challenges with Applying Ownership Models Retroactively\n\nWhile the project ownership models represent the ideal frameworks in open source, some issues hinder their adoption widely across different projects.\nSpecifically, it is difficult to apply shared ownership models retroactively for a few reasons described below.\n\n## Strong Ownership\n\nA “strong-ownership” model is when a single contributor or small group of developers feel a strong sense of ownership over the project.\nIt essentially assigns ownership of the project to a few individuals: although the source code may be freely available, projects are often not open for collaboration or do not incentivise contribution.\nThis is a two-pronged problem - in the immediate term it prevents the building up of effective user and developer communities who could help to improve the software and in the long term, it may mean that codes retire along with their owners.\nMany code suites, especially those using High-Performance Computing (HPC), those in long-established fields and legacy code more generally, are particularly prone to these problems of strong ownership and are resistant to attempts at democratisation.\n\n## Old or Institute-funded Projects\n\nWhile it may be easier to adopt a shared ownership model for new projects, especially those originating outside of established institutions, the process is hampered when working with old projects, or those new projects that arise within ingrained norms of research software.\nResearch software is developed by individuals within research groups, which operate within an organisation or a regulated research environment.\nFor instance, nationally-funded research operates under national laws that may not always comply with the legal requirements in other countries.\nOrganisations hosting these research themselves are constrained by national laws and international interests.\nThe very structure of these institutions depends on ownership.\nFor example, we have found that arranging collaboration agreements for joint funding is often held up by the need to define ownership of the intellectual property, even if the software is open source.\nThis may be part of the larger legal framework: specifying that software is owned by a project or community rather than a person may be ideal for encouraging participation, but it could also be open to abuse if the legal ownership of the software can be disputed, or worse, appropriated by bad actors.\n\n## Fix-Forward Approach\n\nBeyond the institutional level, open source projects should transcend national borders, but we have also found that organisations might restrict the use of software that is legally registered in another country {cite:ps}`EU2013legal`.\nThis, unfortunately, goes against the open source philosophy, but, as we explore some solutions for our main theme in the next section, we can learn to advocate for the subculture of open source within the organisation culture in which we operate.\n"
  },
  {
    "path": "book/website/collaboration/shared-ownership/shared-ownership-defaults.md",
    "content": "(cl-shared-ownership-defaults)=\n# Nudging for a Better Default\n\nResearch has shown that humans making decisions have a strong tendency to go along with the status quo or default option (See the [Nudge Theory](https://www.imperial.ac.uk/nudgeomics/about/what-is-nudge-theory/) by {cite:ps}`ThalerSunstein2009Nudge`).\nIn the absence of an actively defined default, the prevailing cultural or institutional norm becomes the de-facto option of choice.\nAnd hence, the default options for ongoing and new projects should nudge strongly towards adopting a shared ownership model.\n\nThe minimum default for an open source project should include the following documents:\n1. Select an open source license (whenever you can).\n2. Acknowledging contributors visibly.\n3. Set standards for shared ownership.\n\n## Open Source License\n\nMore awareness around open licensing is required as many researchers who currently own code might not be completely aware of how open source licenses can protect the openness and identity of a project.\nMore code might be licensed if researchers were given a basic introduction into how different open licenses work (for example, copyleft vs permissive) and which to choose, although this will only help projects that are maintained enough for a license to be added (see {ref}`rr-licensing`) for reference).\nThere should be a push for code to be openly licensed by default.\nThis can be applied by many stakeholders in the research ecosystem. Funders can require that code produced by a grant is openly licensed and, similarly, publishers can require that code associated with a publication is openly licensed (open research _data_ is already required by funders for example, [in the UK](https://www.ukri.org/about-us/policies-standards-and-data/good-research-resource-hub/open-research/), this could easily be extended to cover software).\nThe companies that host repositories can - as some do - make it easy to add a license, and gently encourage users to do so by adding a license by default.\n\n**Call to action: Select a license for your project**\n\nPlan your project from the beginning to be open throughout the lifecycle of your research.\nWhen using personal or identifiable data, clearly state what measures are taken to ensure privacy and data security.\nFor everything else in your work, choose an open source license and add it to your repository (see https://choosealicense.com/).\nYou can read more about it in the {ref}`Licensing<rr-licensing>` chapter.\n\n## Meaningful Acknowledgement of Contributors\n\nOwnership should be more accurately shared with contributors by ensuring that the ways of working, contributing and recognising contributions are properly defined in the project.\nDetails on people and practices should be transparently documented and communicated so that not only existing contributors can build a sense of ownership but new contributors can also identify what pathways they can take in the project.\nThere are many kinds of contributions possible in open source projects that go beyond writing code or documentation.\nEach of these contributions should be acknowledged transparently and fairly.\nFor example, we can learn from open source metrics like [CHAOSS](https://chaoss.community/) or [CRediT - Contributor Roles Taxonomy](https://casrai.org/credit/), recognise the hidden labour using frameworks defined by [HiddenREF](https://hidden-ref.org/) or as described in {ref}`The Turing Way Acknowledge chapter<ch-acknowledgement>`, allow people to capture their contributions in a way that is most meaningful for them.\nA more structured programme can be developed that recognises, rewards and incentivise contributors who are crucial for your project's sustainability.\n\n**Call to action: Acknowledging contributors visibly**\n\nRecognising contributors by recording their names in visible locations (like a contributors file) should be added to the admins’ or maintainers’ workflows.\nAnnounce and celebrate all kinds of work by communicating them openly in official community forums and channels.\nYou can use GitHub actions, bots or a continuous integration pipeline to automate the process.\nTo take another easier approach, you can install the all-contributors bot by [https://allcontributors.org](https://allcontributors.org) to your repository, which can help you recognise contributions including those that don’t involve pushing code.\nSee it working on [_The Turing Way_ repository](https://github.com/the-turing-way/the-turing-way#contributors).\n\n## Sharing Project Ownership with the Community\n\nIn the case of shared ownership, a collective community builds the project and hence should be attributed as such.\nTo make it a default we need to make it easy to practice across different open source projects.\nOne way to do it is to have essential community documents demonstrating the commitment to fairly acknowledge and share ownership of the project with all contributors.\nThese documents should not only be shared but kept open for feedback, contributions and update to make them meaningful for the community.\nCommunity policy and norms should be communicated from the start to facilitate open, safe and respectful dialogue among the community members.\n\n**Call to action: Set standards for shared ownership**\n\nDescribe explicitly who is considered the project owner.\nYou should share credit with the community of contributors instead of only attributing individuals administering the project.\nFor example, when citing the project, use “Community” as the first author {ref}`as practised in The Turing Way<fw-cite>`.\nContribution guidelines, Code of Conduct (see Open Source Guide for reference) and other community pages on your project repository can help in setting the tone for the culture you want to promote in the community, and how contributors are supported in their participation.\n"
  },
  {
    "path": "book/website/collaboration/shared-ownership/shared-ownership-models.md",
    "content": "(cl-shared-ownership-models)=\n# Shared Ownership Models\n\nAt the time of writing this chapter, We have identified the following models of shared code ownership:\n\n## Roles Based on Level of Access\n\nFor the GitHub users contributing to an open source project, following roles are defined by the access levels: “Read -> Triage -> Write -> Maintain -> Admin” (see [GitHub page for reference](https://docs.github.com/en/organizations/managing-access-to-your-organizations-repositories/managing-team-access-to-an-organization-repository)).\nThe different access levels define the increasing order of rights and responsibilities a contributor has in a project (see [GitHub documentation](https://docs.github.com/en/organizations/managing-access-to-your-organizations-repositories/repository-permission-levels-for-an-organization) for details).\n\nFor GitHub organisations, there are options to [organise members into teams](https://docs.github.com/en/organizations/organizing-members-into-teams/about-teams) with different roles and access levels.\nOwner permissions for a GitHub organisation can be given to a group of people who manage the organization account such as granting permission levels to contributors as needed ([see details](https://docs.github.com/en/organizations/managing-peoples-access-to-your-organization-with-roles/permission-levels-for-an-organization)).\n\nThe default minimum permissions for members allows reading, forking, creating issues, fixing bugs and suggesting minor changes.\nIt is an easy pathway for new contributors to enter a project, however, not sufficient to feel like a part of the community.\nTo foster a sense of shared ownership, the basic level of access should be ‘writers’, who can review new contributions, and make and approve changes allowing them to share responsibility for the development and maintenance of a project.\n\nIf these roles are not explicitly defined, the burden will be put on contributors to find out what level of access they have and how they can be promoted to the next levels.\n\n## Open Source Leadership and Governance\n\nUnlike the previous example, where the roles are ‘assumed’ based on access level, a more intentional approach can be taken to formalise roles for all contributors under the leadership and governance aspect of an open source project.\nThis allows contributors with specific interests or availability to identify and step into the project.\nThe [Open Source Guides](https://opensource.guide/leadership-and-governance/) project provides a basic framework for setting roles for the maintainers, contributors and committers.\nFurthermore, they describe how to meet contributors where they are to [facilitate shared ownership](https://opensource.guide/building-community/#share-ownership-of-your-project).\nIn bigger communities, roles can be expanded to include members of different committees, working groups, special interest groups, mentors, trainers and community managers who focus on different areas of development, maintenance and sustainability.\nIn addition to the roles, governance also includes the decision-making processes - how different stakeholders are involved and how these are transparently communicated.\n\n## Defining Roles and Pathways for Contributors\n\nAs discussed, a clearly defined set of roles and responsibilities allows individuals or groups to build a sense of common purpose and set a clear expectation around shared ownership in the project.\nThese roles can be developed based on the tasks, responsibilities and skill requirements in the project.\n\n```{figure} ../../../figures/mountain-of-engagement-graphic.*\n---\nname: mountain-of-engagement\nalt: Infographic outlining a five-step process to assess and improve engagement with your work, known as 'Mountain of Engagement'. 1. A clipboard icon representing making a list of people’s interactions with your work; 2. A pyramid diagram defining 3–5 bands or levels of engagement; 3. Interactions are grouped into bands and labelled, with a larger pyramid showing example slots for each band; 4. Icons of a red X and a green check mark under a magnifying glass represent identifying what works and what doesn’t. 5. A lightbulb and chart icon symbolising how to use this information to prioritise your work and create more engagement opportunities.\n---\nA “Mountain of Engagement” for Open Source project starts with (1) A list of people's interaction with your work, and (2) 3-5 deepening bands/levels of engagement. (3) Then you can brainstorm and group your interactions into bands of engagement, and give each band a name. (4) With your work you can then identify what works and what doesn't work. (5) This gives the insight to prioritise your work to create more opportunities for your contributors.\n```\n\nThese roles can be contractual or informal, taken by paid or non-paid volunteers, and supported by legal or social policies. These roles and pathways for engagement for the contributors can be understood using [Mountain of Engagement](https://docs.google.com/presentation/d/1ipIUc1t6ogOpyK9gU_PPgD-UvW0Gs73pMIAdCLOG72Y/present?token=AC4w5VhpTqbOWqPsxwOsnzqMG_DYvAqvGA%3A1596111012295&includes_info_params=1&eisi=CJfzpO_49OoCFYbTJAodKr0HAQ#slide=id.p) as described by [Mozilla Open Leadership](https://mozilla.github.io/open-leadership-training-series/articles/building-communities-of-contributors/) and [Open Life Science](https://openlifesci.org/).\nThe purpose is to identify levels of engagement of contributors as they move from their roles as “observers”, “endorsers”, “contributors”, “leaders” and finally, “owners”.\n"
  },
  {
    "path": "book/website/collaboration/shared-ownership/shared-ownership-projects.md",
    "content": "(cl-shared-ownership-projects)=\n# Project Ownership\n\nBefore we unpack how a project's shared ownership affects research software’s sustainability, let’s define what we mean by ownership.\n\nIf a project is shared without any license, it is considered copyright by default, meaning, only the author can decide who can use the different components of their project.\nTherefore, the best practice is to add open licenses to a project that define the way the existing codebase, software or documentation can be used and shared.\n\nAn open source project is more than just the code and documents associated with the software.\nA major part of a project is about the people involved -- the roles they play, the way they interact with each other, share responsibilities, make contributions and receive recognition.\nNone of those is regulated by the license but is undeniably more important for the project's success.\n\nProject ownership is defined by responsibilities that are important for the success of a project.\nThese include defining goals, identifying resources, working towards finding solutions, addressing challenges as well as benefitting from the overall outcome {cite:ps}`Goff-Dupont2020ownership`.\nBy defining project ownership, we can build a clear understanding of how the responsibilities of project implementation, maintenance and sustainability are shared among different stakeholders, including the volunteer contributors.\nSuch operational processes in projects can make open source more meaningful, going beyond the software license itself.\n\nSimilar to the copyright default of software, if ownership in a project is not defined, it is not shared ownership.\nShared ownership for an Open source project should include the following aspects:\n\n## *Who* are the project contributors?\n\nContributors can be individuals, developer/research teams or an organisation.\nFor example, researchers, funding organisations, and host institutes.\nThese contributors can be paid members of the project such as the project lead and project coordinator, or volunteers from the wider open science ecosystem contributing in their own time.\nThese contributors engage in the project either because they are recruited in the project or have successfully found the project due to their personal interest.\nTo ensure that the project involves a diverse community of contributors, it is also important to make the project easy to find and access.\nFurthermore, contributors can be actively brought in by other contributors from their network.\n\n## *What* brings them to the project?\n\nContributors generally have some personal interest in the project or want to address a particular issue through their involvement.\nIt could be either using a product generated by the project, receiving some technical support, helping other contributors, gaining personal skills or getting exposed to new practices that they can bring back in other projects.\n\nBy identifying these personal motivations of different contributors, the project and ensure that the overall vision is actively aligned with the needs of their contributors.\n\n## *Why* will they take responsibility and accountability as a contributor to the project?\n\nFor a project to be driven by a community, it is crucial to define why contributors will be excited to be a part of the project.\nBased on the motivation of people to collaborate and contribute, we can help them identify the roles they can take and the kinds of contributions they can make.\nWell-defined roles and opportunities help everyone make meaningful contributions to the project.\n\n## *How* are they are recognised for their contributions?\n\nContributors work towards advancing the project they contribute to.\nIn open source projects, it could mean contributing to the codebase, documentation, community built around these or their personal leadership.\nThese can be achieved by openly acknowledging contributions made by individuals in an informal way, such as by internal and social communication.\nThis can be more effectively done in a more formal manner, such as by sharing authorships with contributors in publication, project repository or latest releases, creating pathways allowing individuals to move through the decision-making process, or creating incentivisation plans to give visibility and career boost outside the project.\n\n## *Where* can they learn about the project ownership in detail?\n\nThis should be openly shared in a document (or set of documents) that are easy to find and can be easily understood by its readers.\nDetails will depend on the scale of the project, but the model of shared ownership with pathways for contributors roles and rewards should be clearly defined.\n"
  },
  {
    "path": "book/website/collaboration/shared-ownership.md",
    "content": "(cl-shared-ownership)=\n# Shared Ownership in Open Source Projects\n\nOpen source or open research movement allows anybody to use, study, modify, and distribute software or research projects freely and for any purpose ([reference](https://opensource.org/osd)).\nAs much as open source is about sharing and distribution of software, it is equally important to highlight practices that support people’s interactions with the project as well as the communities that are built around a common interest and mission.\nVolunteer contributions are central to the success of open source projects who use frameworks for project peer-production and collaborations.\nThese contributions can be witnessed in the context of coding, reviewing, documenting, error reporting, bug fixing, method selection, mentorship, training, project maintenance and other community interactions.\nIn this chapter, we explore the “shared ownership” models to highlight that the open source projects should be owned by the community of contributors who work to ensure their development and sustainability.\n\n```{figure} ../../figures/open-source-collaboration.*\n---\nname: open-source-collaboration\nalt: This illustration shows that closed source projects are driven by the needs of the institution or the individuals whereas the open source community allows different people to interact, exchange ideas, collaborate and build resources using “by the community - for the community” principles\n---\nOpen source collaborative pathway compared to closed source projects that are driven by institute's personal motivation. Picture credit: _The Turing Way_ Community, & Scriberia. (2020, November). Illustrations from the Turing Way book dashes. Zenodo. http://doi.org/10.5281/zenodo.4323154\n```\n\n## Motivation\n\nA shared sense of ownership is important for motivating contributors to collaborate in a project as they align their interests with the project’s goals.\nThe concept of shared or collective ownership is widely practised in open source (see definition for [collective ownership](https://www.agilealliance.org/glossary/collective-ownership/)), but unfortunately, it is not always described in the projects.\nOften it is vaguely communicated or assumed either based on the contributors’ time or the scale of their contributions.\nIn the long term, it is not helpful for most contributors who don’t know if their contributors are valued, acknowledged or rewarded in the project.\n\nIn the subchapter {ref}`cl-shared-ownership-projects`, we explore what project ownership means in an open source world, in the subchapter {ref}`cl-shared-ownership-models`, we discuss different models that are out there and in the subchapter {ref}`cl-shared-ownership-challenges`, we discuss challenges that exist in adopting them in open source projects.\nUltimately, in the subchapter {ref}`cl-shared-ownership-defaults`, we nudge researchers to apply good practices for establishing shared ownership in their open source projects.\n\n*This chapter was originally discussed and written in an online post by Malvika Sharan, Warrick Ball, Ben Krikler, and Andrew Brown as a part of the [Collaboration Workshop 2021](https://www.software.ac.uk/cw21) speed blog series hosted by [Software Sustainability Institute](https://www.software.ac.uk).*\n"
  },
  {
    "path": "book/website/collaboration/stakeholder-engagement.md",
    "content": "(cl-stakeholder-engagement)=\n# Facilitating Stakeholder Engagement\n\nWhen working with stakeholders beyond your own team, there are many tools and best practices for improving the quality of engagement through activities like mapping relevant project stakeholders, organising stakeholder workshops, establishing shared language and understanding, and creating the foundation for effective collaboration.\n\nThis chapter will share guidance and resources for facilitating different forms of stakeholder engagement for data science collaborations drawing upon expertise from the Turing Research Application Management (RAM) team.\n(cl-stakeholder-mapping)=\n## Stakeholder mapping\n### Key question: Who is involved in a collaboration, either as a user, impacted group, part of the community of practice, or in some other capacity?\n\nThe goal of stakeholder mapping is to understand the people and organisations involved in a collaboration, and to collect all this information in one place. \nThis helps establish a shared understanding of who is involved in what capacity, which is a useful resource for onboarding new teammates and to make sure everyone is on the same page.\nThis activity is also often a precursor to other engagement activities such as impact assessments, user experience workshops, collaboration cafes and more, as stakeholder maps can help identify who should be centred in the research process.\nStakeholder mapping is a core activity of many {ref}`Research Infrastructure Roles<cl-research-infrastructure-roles>` and may serve different goals, for example:\n- {ref}`Research Community Managers<cl-infrastructure-community-managers>` may use this to establish a project governance structure and decide the most effective methods and channels for communication with each stakeholder.\n- {ref}`Research Application Managers<cl-infrastructure-ram>` may use this to categorise and prioritise different kinds of users of research outputs, such as local government vs. industry partners.\n- Research Project Managers may use this for project reporting and evaluation purposes and identifying who to invite for a certain meeting.\n\nStakeholder mapping is not meant to be a single source of truth.\nIt is a tool to capture a team's understanding of the stakeholder landscape, clarify relationships, and surface groups that may share common characteristics or challenges. \nA well thought-out, detailed stakeholder map will facilitate bringing a team onto the same page, which can help with developing engagement pipelines. \n\n### Example resources\n- The Alan Turing Institute, Tools, Practices, and Systems programme [stakeholder mapping template](https://miro.com/app/board/uXjVMGIR93o=/?share_link_id=456301587406)\n\n### RAM insights\n- Teams should be encouraged to define their own metrics for mapping stakeholders on a matrix for prioritisation. \nChoosing the right metrics will help identify the most important stakeholders to engage.\n- These metrics should be carefully chosen to represent the key stakeholder considerations and project team goals. \nFor example, as part of the mapping, the team may try to:\n   - Establish a community of practice for project governance.\n   - Prioritise communication methods and cadence for different stakeholder groups.\n   - Identify which groups may be negatively impacted by a research output.\n   - Identify which stakeholders are most prepared or willing to adopt a particular research output.\n(cl-stakeholder-req-gathering)=\n## Requirements gathering & alignment\n### Key question: How can we align stakeholders on shared language and goals?\n\nRequirements gathering is a helpful exercise used to collect information from different stakeholders involved in a project which can then be used to mitigate potential misunderstandings, agree on shared terminology, and identify opportunities for collaboration. \nWhen bringing people from different backgrounds or organisations into a collaboration, it can be helpful to align on shared language and understanding on key concepts relevant to a project.\nThis is motivated by the fact that different teams may have different ways of working and understandings of project outputs like \"case study\" or \"user-friendly website\" which can lead to miscommunication or misalignment of expectations.\nOnce the information is gathered in a single place, you can identify questions and highlights from the interviews to prompt group discussion for alignment.\n\n### Example resources\n- Turing RAM team [requirements gathering questionnaire example](https://github.com/alan-turing-institute/research-application-management/blob/main/resources/stakeholder_workshops/requirements_gathering.md) for understanding different team approaches to creating case studies.\n\n### RAM insights\n- Often times different people will use the same term to mean completely different things or for different purposes.\nThis exercise can help detangle the nuances of commonly used terms and whether or not there is overlap in the collaborators' understandings of it, and thus provides an opportunity to build shared understanding and goals.\n- A good measure of success for requirements gathering & alignment is a glossary of terms and concepts that the project team and additional stakeholders have created together, and can refer back to when confusion or misunderstanding arises.\nThis glossary should be a living and breathing document, that can be updated, and terms redefined, as the team's knowledge and expertise grows.\n- It is hard to overstate the importance of having shared language and understanding in a project team - not embedding this at an early stage can allow miscommunications and misinterpretations to snowball into highly incompatible outputs that don't represent the team, community or userbase!\n(cl-stakeholder-workshops)=\n## Organising stakeholder workshops\n### Key question: What work before, during, and after a workshop should be done to run an effective stakeholder workshop?\n\nWorkshops are best suited for engagement activities where there is a need to bring people together to deeply engage on an area of interest with the purpose of working on a task, as opposed to gatherings which are purely driven by conversation. \nThis ensures participants are taking active steps towards achieving a shared goal.\n\nOrganising an effective workshop is a multi stage process which can be segmented into three stages; pre-workshop, workshop, and post-workshop.\nWe think it's important to prepare for each stage with equal weight and consideration to ensure the best process for participants throughout.\n\n### Example resources\n- [RAM Stakeholder Workshop Checklist](https://github.com/alan-turing-institute/research-application-management/blob/main/resources/stakeholder_workshops/stakeholder_workshops.md) with key steps and considerations the pre-workshop, workshop, and post-workshop stages\n\n### RAM insights\n- Be prepared to rein in conversations which labour a point with no apparent solution\n- Read around the workshop topic to be at the very least prepared enough to engage with participants at a high or abstract level\n- Offer opportunities to network and make sure you make every effort to speak to all participants \n(cl-stakeholder-strategy-workshops)=\n## Strategy alignment workshops\n### Key question: How can we bring different ideas across a group of collaborators into a shared strategy?\n\nA group of collaborators will struggle to work together and progress if its members do not agree on what they are trying to achieve together. \nStrategy alignment goes deeper than agreeing on day to day work - it asks what the team chooses to prioritise, what they value, what motivates them, and ultimately what real-world impact they hope to see from their work.\nA helpful model to inform this exercise is Simon Sinek's [Golden Circle method](https://www.smartinsights.com/digital-marketing-strategy/online-value-proposition/start-with-why-creating-a-value-proposition-with-the-golden-circle-model/), where the team approaches their work in the following order:\n- Why: Why are we doing what we're doing? \n    - This is the ultimate 'North Star' or 'vision' of the project - the fundamental, emotive reason the work is being done.\n- How: How do we achieve our mission? \n    - This question concerns the broad focus areas, or 'pillars' that set up the project to achieve the vision.\n- What: What do we actually do?\n    - This question takes the why and the how, and identifies key activities that teams can undertake to achieve their goals.\n\nIt is important to take these conversations in order, so that strategy alignment can be built from the bottom-up.\n\n### Example resources\n- [Further RAM Guidance](https://github.com/alan-turing-institute/research-application-management/blob/main/resources/team_strategy/index.md) on facilitating Why/How/What conversations\n- {ref}`Chairing Events <cl-mec-chairing>`\n- {ref}`Tools for Collaboration <cl-mec-event-tools>`\n\n### RAM insights\n- Using the basic \"Why/How/What\" format as a starting point for the conversation helps provide focus and clarity and can lead to a better outcome. \nAs with all frameworks, this starting point should be adapted to match the understanding and ways of working of the specific project team.\n- By not overstructuring the conversation, you will also allow people the space to express their thoughts freely. \nWe feel this is an important approach as it allows open conversations to happen and things to emerge that otherwise might not.\n- Strong facilitation skills are crucial, including reading the room and identifying patterns in the conversation. \n- Doing this effectively takes a long time - at least 2 hours per session (we recommend a minimum of 6 hours, if not longer). \nThese sessions should be separated and standalone (for instance, 2 hours slots on different days), but close enough together to ensure continuity- schedule all session well ahead of time so that all team members can attend all sessions.\n- A synthesized output from these sessions, such as a comprehensive, professional slide deck, can be used both internally and externally by any team member to communicate the project to stakeholders.\n(cl-stakeholder-user-design)=\n## User-centric design\n### Key question: How can research outputs benefit from a user-centric design process?\n\nAlthough many research tools are created for a very narrow purpose, we encourage researchers to consider the user experience (UX) throughout the process and to incorporate UX design principles during development to make the tool more accessible and usable for all potential users. \nActivities such as user journey mapping and user testing can greatly enhance your understanding of who is using the research tool and how they employ the tool in a real-world scenario.\nBy considering potential users of the tool from the early stages of a project, you can include features that will make the tool easier to use and more relevant to potential stakeholders, and therefore more likely to be used and applied in practice. \n\nExisting resources can also benefit greatly from making improvements to the UX by establishing heuristics to define criteria for usability and to identify areas in need of improvement.\nBy utilising exercises and heuristics designed specifically to consider and evaluate the user experience, researchers will examine the assumptions built into the tool and gain a deeper understanding of how it can serve different users types.\nThese insights can help a team to develop a roadmap for the tool to plan out future developments with varied stakeholders in mind, leading to more meaningful stakeholder engagements based around a deeper understanding of how those stakeholders are interacting with and repurposing a research output.\n\n### Example resources\n- SuperBloom (formerly called Simply Secure) [Knowledge Base](https://simplysecure.org/knowledge-base/)\n- User Interface Design Basics at [usability.gov](https://www.usability.gov/what-and-why/user-interface-design.html)\n- Diataxis [framework for technical documentation](https://diataxis.fr)\n- Read the Docs [documentation hosting](https://readthedocs)\n- Nielsen Norman [heuristics](https://www.nngroup.com/articles/ten-usability-heuristics/)\n\n### RAM insights\n- UX and UI design are specialised skills that researchers are not expected to be familiar with, so consult available resources and bring in a professional team when possible!\n- Look for design firms that focus on coaching and prioritise user accessibility and an open, collaborative process. \nWorking with designers on a fixed project will improve the UX of your tool in the immediate term, but learning these skills as a team will allow you to consider UX and apply design tools at each stage of your project's lifecycle.\n- If in doubt or short of time, have a user try out your tool and ask them open ended questions about their experience. You'll be surprised at how much you can learn from doing this a few times!\n(cl-stakeholder-impact-assessment)=\n## Stakeholder impact assessments\n### Key question: How can we develop projects with continual sensitivity to the ways in which these impact stakeholders?\n\nStakeholder impact assessments (SIAs) are a tool used to gain anticipatory insight into the project's likely impacts, defined as the possible [harms](https://alan-turing-institute.github.io/turing-commons/skills-tracks/aeg/chapter2/harms/#3-bias-injustice-and-discrimination) and benefits.\nSIAs take the form of questionnaires addressing the ethical permissibility, transparency, accountability, and equity of projects.\nSIAs are used to identify and document the full range of potential impacts and provide project teams with a contextual awareness of the social environments impacted by their projects. \nThis activity can help teams steer the direction of their projects preemptively to ensure that they support the wellbeing and sustainability of the individuals and communities they impact and mitigate any harms. \n\nEvaluations of project impacts should ideally be done in collaboration with stakeholders. \nIn the context of SIAs, stakeholders are defined as individuals and communities that are impacted or may impact projects. \nStakeholders that are most vulnerable to potential project harms are considered the most salient. \nEngaging stakeholders in conducting SIAs helps secure the accuracy and integrity of SIA outcomes. \nThis is because gaps in identity and experience between project teams and impacted individuals may cause there to be differences between how team members view project impacts and how stakeholders experience them. \nFacilitating proportionate stakeholder engagement and input throughout the AI lifecycle is a way to gain a richer understanding of the impacts that projects may have on stakeholders. \n \nConducting a SIA is not a one-off activity but an iterative one that occurs at key points throughout the design, development, and deployment stages of the [AI project lifecycle](https://alan-turing-institute.github.io/turing-commons/skills-tracks/rri/rri-101-index/), each time informing the direction of the project so that it continually adapts to changing contexts. \nAfter each iteration is conducted, project teams are asked to re-assess questions addressed within the Stakeholder Engagement Process. \nThese questions motivate project teams to iteratively re-assess the extent to which their analysis of project stakeholders and reflection of team positionality continues to be accurate and relevant. \nThese re-assessments are used to determine engagement objectives and methods for each following SIA. \n\n### Example resources\n* A practical template for conducting SIAs can be found in Leslie, David (2019). Understanding artificial intelligence ethics and safety: A guide for the responsible design and implementation of AI systems in the public sector. https://doi.org/10.5281/zenodo.3240529\n\n### RAM insights\n* Ensuring that SIA outcomes accurately reflect the experiences of impacted stakeholders is critical for this tool to achieve its purpose, for this reason, taking a methodological approach to determining proportional levels of engagement is very important. \nImpact-informed guidance for conducting a Stakeholder Engagement Process (SEP) can be found in the [Turing Commons AI Ethics and Governance Skills Track](https://alan-turing-institute.github.io/turing-commons/skills-tracks/aeg/chapter3/engagement/).\nThe SEP is a complementary process that precedes SIAs and provides reflection questions set to identify and analyse project stakeholders, and reflect on team positionality in relation to project stakeholders. \nThese questions support teams in determining proportional engagement objectives and methods for conducting Stakeholder Impact Assessments. \n\n* The Turing Commons AI Ethics and Governance Skills Track also provides [further guidance](https://alan-turing-institute.github.io/turing-commons/skills-tracks/aeg/chapter3/impact/) on skills for conducting SIAs. \n"
  },
  {
    "path": "book/website/collaboration/team-manual/team-manual-on-off-boarding.md",
    "content": "(cl-team-manual-on-off-boarding)=\n# On- and offboarding team members\n\nHaving clear onboarding processes ensure that group members are off to a good start in the lab. \nOffboarding processes ensure that everything is taken care off when lab members leave for a future step. \nThe on- and offboarding checklists below provide some pointers on how to set up the on/off boarding checklists of your group, that can be a part of your {ref}`Team Manual <cl-team-manual>`.\n\n(cl-team-manual-on-boarding)=\n## Onboarding Checklist\n* Review relevant documents provided in a main resource such the {ref}`Team Manual <cl-team-manual>`. \nInformation may include:\n    * List of team members, their roles and projects\n    * Institutional policies as well as participation guidelines of the research group, institute, funder or country.\n    * Code of Conduct and reporting mechanism.\n    * Point of contacts for IT, HR, data protection, legal, communications  or other teams who you might need to connect for different purposes.\n    * Authorship and contributorship guidelines.\n* Check whether the team has a {ref}`Data Management Plan<rr-rdm-dmp>` or whether you need to set this up yourself \n    * Review your storage options and access to software and tools such as {ref}`Electronic Lab Notebooks<rr-rdm-elns>`.\n    * Especially when working with {ref}`sensitive data<pd-sdp>` it is important to familiarise new team members with the recommended practices.\n    * Consider options for long term storage and data sharing\n* Set up documentation for your workflows (lab notes, project repository, README files) based on the recommendations provided by your team (ideally outlined in the Team Manual or Data management Plan). \n    * Check whether there are existing templates that can be reused. \n* Ensure access to all needed facilities (lab pass, keys, folders, storage locations).\n* If any of this information is not clear, provide feedback on the onboarding process to improve it for future lab members!\n\n(cl-team-manual-off-boarding)=\n## Offboarding Checklist\n\n* Research objects are publicly shared via an appropriate data repository\n* Research objects that are not publicly shared are stored internally and responsibilities have been transferred, including access to documentation (READme files or labnotes) and ethical approvals.\n* Research objects that are dispensable are cleaned up to avoid unnecessary storage clutter and confusion. \n* The content of the Data Management Plan has been transferred, so that data can be found and reused within the research team. \n* It is clear which physical reagents are relevant and where they are stored - irrelevant reagents have been cleaned up. \n* Contact details for the future are provided - other personal data is removed\n* Have an exit meeting with supervisor/department head or HR.\n* Return any borrowed property (keys, passes, equipment).\n* The leaving lab member can be provided with a statement that describes their contributions during their employment, instead of having to rely on future reference letters.\n\n(cl-team-manual-off-boarding-example)=\n### Examples\n\n- [example offboarding checklist](https://doi.org/10.5281/zenodo.7520527)\n\n(cl-team-manual-on-off-boarding-resources)=\n## More information\n* [Harvard on and offboarding lists](https://osf.io/pw7ed/)\n* Research Data\n    * [Research Data Exit Checklist](http://hdl.handle.net/2142/111616)\n    * [Project Close-Out Checklist for Research Data](https://resolver.caltech.edu/CaltechAUTHORS:20200519-142758925)\n    * [Data Departure checklist](https://doi.org/10.7907/h314-4x51)\n* [It takes a laboratory to avoid data loss](https://www.nature.com/articles/d41586-022-02967-3) \n"
  },
  {
    "path": "book/website/collaboration/team-manual.md",
    "content": "(cl-team-manual)=\n# Team Manuals\n\nTeam manuals describe expectations for team members, highlight resources and provides documentation on processes. \nBelow follow some questions that you can consider when you set up a Team Manual.\n\n(cl-team-manual-benefits)=\n## Benefits of Team Manuals\n\n- Clarity about expectations\n- Everyone has access to the same information\n- Everyone can contribute to the team manual and updating will take less time\n- Discussions around ways of working are normalised\n- Group members will think more actively about how to do research\n- Answers to frequently asked questions will be available (knowledge management)\n- Can contribute to a safer lab environment (technically and socially)\n- You can hold people more easily {ref}`accountable<cl-team-manual-accountable>`\n\n(cl-team-manual-content)=\n## What to include in a Team Manual? \n\n### Main points \n1. Mission/vision statement:\nWhat are the research goals of the team, why are these the goals? \nHow does the team work? What is the history of the group? \nHow does the team fit into the department/institute? \nWhat are the [principles](https://www.lesleahlusko.org/principles-of-community-for-our-intellectual-family/)? \nHow do we do science in a way that fits with our mission/vision statement? \n2. Roles and expectations: What are the responsibilities of each team member, including the PI? \nWhen will these roles be discussed when a new member joins the team?\n\n### More details\n- Meta-processes: How is the lab manual updated? \nWho can propose the changes (ideally every member) and what is the process? \nDo you keep multiple versions of the lab manual? \nWhere will the lab manual be made available for all lab members to access?\n- Open Science: \nHow does the team manage and share code, data, materials? \nHow is documentation done? \n- Research process: \nhow is research conducted at the lab? \nHow is the data analysed? \nHow is the code written, version controlled? \nSee for example the [Research toolkit by the Open Data Institute](https://theodi.org/article/check-out-our-rd-open-research-tools/). \nIs work of lab members reproduced by other lab members (for example, to learn new techniques and to validate previous work)?\n- Communication: \nHow do people engage with each other? For suggestion on how to organise communication, see {ref}`cl-mec-remote-organising-meetings`.\n- Under what condition can people provide their best work? \nWhat support is needed? \nHow do people work? \nCan they work remotely? \nWhat are people's preferred working hours? \nWhat to arrange when you go on a holiday? \nAre there any weekly/daily tasks? \n- Inclusivity: \nHow are hiring practices inclusive of minoritised groups? \n- Resources: \nWhat do lab members need access to (servers, software, tools, room keys, library cards, and the like)?\n- On/off boarding: \nA list of what new members need to do when they start out, and a list what leaving members need to do before they go. \n- Behaviour: \nConsider setting up a code of conduct or policy on scientific integrity (and align with the {ref}`institutional/national policies<cl-team-manual-policies>` on this). \nWhat should people do when they encounter harassment/discrimination? What is the lab culture? \n- Credit: How to provide appropriate credit to the right people? \nHow to ensure that each contribution is recognised and rewarded? \nThis includes (lab) maintenance work, discussions, and ideas. \n- Metrics: When is a lab member successful? \nHow do you discuss and measure this progress so that the lab member can more easily succeed? \nHow are successes celebrated? \nHow are reproducible, ethical and inclusive data science practices included in this assessment? \nHow is maintenance work evaluated and celebrated? \n- Culture: \nHow are mistakes handled (see {cite:ps}`Rouder2019minimizing`)? \nHow is insecurity being normalised? How is feedback given and acted upon?\n- Engagement: \nwhat are the expectations around public outreach? \nWhat is the social media policy for personal accounts? \nHow are all the materials made accessible (image descriptions - see {ref}`ch-style-figures-alttext`, translations)?\nHow is the lab involved in the department? How does the lab work with participants?\n- Publications: What needs to happen before a paper is published? what are the preprint policies? \nWhat are the journal preferences? How does the lab deal with authorship ({ref}`cm-aa`)? \nsee {cite:ps}`Liboiron2017equity` and {cite:ps}`Chawla2018assigning` for author order discussions. \n    - Consider academic citation practices. [Who do you choose to link and re-circulate in your work? Who gets erased? Who should you stop citing?](http://www.criticalethnicstudiesjournal.org/citation-practices)\n- Conferences: \nHow do you give a talk? \nWhich conference should be attended and why? \nHow are visualisations made accessible? \nHow is work in progress presented? \nWhat is the conference budget (this should be separate from the training budget)? \n- Finances: What grants pay for the lab? \nWhat will/won't the lab pay for? \nWhat grants can people apply for? \nWhat to expect in terms of reimbursements? \n- Grants: How to deal with awarded grants? \nShould they be public to the whole lab or should only summaries and outcomes be available? \nWho can apply to grants?\n- Mentorship and development: \nHow do you get feedback from others? \nHow do you collaborate in/outside of the lab? \nWhat are the opportunities for development and mentoring. \nHow do you discuss career development? \nSee [Mentoring and Advising Contract Points of Agreement](https://docs.google.com/document/d/1oOPjjF8RJ1EOFvZMFAKe19hUVyQ5FRpS-tPV_uE1dcI/edit) or a [career template plan](https://www.skillsweaving.com/Downloads) as an example. How can you get mentoring outside of the lab?\n- Training: How are training opportunities formalised? \nWhat is the minimum amount of personal development days per year? \nWhat is the budget available? \n- Support: Where to go for help? \nThis can be support in/outside the lab.\n- Scientific resources: Is there a reading list that lab members should read?\n- Accountability: How do all lab members {ref}`hold each other accountable<cl-team-manual-accountable>`? \nWhat are procedures to follow? \nHow to ensure that this accountability is not on individuals but the collective?\n\n(cl-team-manual-policies)=\n### Institutional / national guidelines that affect Team Manuals\nInstitutional and national policies and guidelines prevail over the Manual. \n- Ethics and Safety: What are the safety procedures? What are the ethic procedures? \nIs there a research integrity office? \n- Research Integrity and culture: Is there an institutional policy on this? \nIf there is a dispute, what would be the procedure? Can you contact Human Resources about this?\n- What are the guidelines for research with animals, humans, personal data? See for example the {ref}`Guide on Ethical Research<er>`.\n- Where is institutional support situated? (Human Resources, Integrity Office, Research Data Management, Education).\n \n### Collaboration and consortium guidelines that extend beyond the Team's Manual\n- How do we choose who to collaborate with? \n- How do we work together between teams? \nHow do we ensure the manuals are not conflicting? \nWhich Team Manual has precedence?\n\n(cl-team-manual-start)=\n## How to set up and start a Team Manual?\nIdeally the group leader or another senior member of the group will start setting up a Team Manual. \nThey are in a better position to do so and have power over decision making. \nThis does not mean only senior members can be involved: the whole group should be able to provide input and it is important to hold discussions over points where there is no agreement in the group. \n\nIf you want to convince your supervisor that having a Team Manual is important: \n- Check if a comparable lab is using a Lab Manual and show them this. \nYou can also use the list provided (see below {ref}`cl-team-manual-examples`) as an example. \n- Team up with group members so that you're not the only person that wants to implement it.\n- Start out with a simplified template or share a draft so that the supervisor can easily start.\n\nThere needs to be a balance between an extensive and detailed manual and an operable manual that can be implemented. \nConsider the points listed in this overview as ideas to mix and match from in no particular order, and use and adapt those that make most sense in your particular setting.\n\nYou can gather input on the Team Manual from group members via discussion sessions, or surveys. \nSee [this questionnaire](https://docs.google.com/forms/d/e/1FAIpQLSemv4CRIngTtXA39CH_ooZo17jMGQs_7RqyIkgLKmoJBLPlOA/viewform) for an example on how to engage lab members about their preferences. \n \n(cl-team-manual-accountable)=\n## How do you keep each other accountable? \n\nWhen a Team Manual is established it is important that everyone is on board.\nIf someone is not following the Lab Manual it needs to be discussed why this is the case. \nIt could be that the Lab Manual needs to be updated, or a discussion needs to take place to re-align the values of the group members, or perhaps this lab member is not a right fit for the group. \n\nIf someone breaks the agreements it needs to be clear what the consequences are. \nThe Team/Lab needs to be held accountable, as otherwise there is no point of having a Lab Manual. \nSee also Patrick Lencioni's 'Teamwork: The Five Dysfunctions of a Team' ({cite:ps}`Lencioni2012five`): \n- Absence of trust\n- Fear of Conflict\n- Lack of commitment\n- Avoidance of accountability\n- Inattention to results\n\n(cl-team-manual-assess)=\n## How to assess your lab culture?\n* Leslie Vosshall's [lab survey](https://docs.google.com/forms/d/e/1FAIpQLScGCi7iACgmVBhFcE7G90oPwuTs-g9CQkrDmOUoQ4FvoT9CfA/viewform) to measure whether your lab is happy \n* [Improving lab culture through self-assessment: a case study](https://doi.org/10.1101/2021.12.08.471870) {cite:ps}`Hernandez2021improving`\n\n(cl-team-manual-examples)=\n## Examples of Team Manuals\n\n### Examples of different types of Team/Lab Manuals\n* [Code of Conduct Whitaker lab](https://github.com/WhitakerLab/Onboarding/blob/master/CODE_OF_CONDUCT.md) and the [Basin Research Group](https://docs.google.com/document/d/10y7TP48ik1rcQBPA5Do8mZM7DJ5EbF0hyWP-csgb1QE/edit)\n* [Witteman lab guidelines](https://docs.google.com/document/d/1I4qgoQlfezd4rB0ktSO2wHk-mBmw2DVlvw7hvnnFVGo/edit)\n* [CBIO lab statement](https://lgatto.github.io/cbio-lab/)\n* [Weecology Wiki](https://wiki.weecology.org/)\n* [Ethics and Values](http://faculty.washington.edu/bmarwick/values_and_ethics/) by Ben Marwick\n* [Faylab Lab Manual](https://thefaylab.github.io/lab-manual/index.html) and [ContextLab Manual](https://github.com/ContextLab/lab-manual) \n* [Bahlai lab Policies](https://github.com/BahlaiLab/Policies)\n* [OpenScapes how we work](https://github.com/Openscapes/how_we_work)\n\n### Further examples\n* [A list of Lab Manuals](https://docs.google.com/spreadsheets/d/1kn4A0nR4loUOSDn9Qysd3MqFJ9cGU91dCDM6x9aga-8/edit#gid=0), [a collection thread by Hao Ye](https://twitter.com/Hao_and_Y/status/1537428359277334528)\n* [10 recommendations for managing a nascent team or community](https://software.ac.uk/blog/2020-05-26-bootstrapping-development-team-during-time-crisis)\n* Non-scientific approaches to internal collaboration: [Oxide's Request-for-discussion process template](https://oxide.computer/blog/rfd-1-requests-for-discussion), modelled after the original spirit of the [Request for Comments](https://en.wikipedia.org/wiki/Request_for_Comments) process\n* [Open Science Team Agreements](https://zenodo.org/doi/10.5281/zenodo.7154100)\n* [Team Manual Template](https://docs.google.com/document/d/1LqGdtHg0dMbj9lsCnC1QOoWzIsnSNRTSek6i3Kls2Ik/edit)\n* [Lab manuals for efficient and high quality science in a happy and safe work environment](https://osf.io/gtn63) {cite:ps}`Kovacs2024labmanual`\n\n## Credit\nThis summary is based on an [X (formerly Twitter) Thread by \\@samuelmehr](https://twitter.com/samuelmehr/status/1139733291899080705) ([Webarchive](https://web.archive.org/web/20190615104618/https://twitter.com/samuelmehr/status/1139733291899080705)), as well as discussions during the [Open Science Retreat 2023](https://open-science-retreat.gitlab.io). \n\n(cl-team-manual-resources)=\n## Additional Resources on improving Research Culture\n* [Research Culture - UKRIO Webinar](https://www.youtube.com/watch?v=WH2cAChUzFA)\n* [Research Culture: Why every lab needs a handbook](https://doi.org/10.7554/eLife.88853) {cite:ps}`Tendler2023culture`\n* [How to grow a healthy lab](https://www.nature.com/collections/pmlcrkkyyq), [including Health tips for research groups](https://doi.org/10.1038/d41586-018-05146-5) {cite:ps}`Norris2018health`.\n* [Welcome to the lab](https://doi.org/10.7554/elife.79627) {cite:ps}`Andreev2022welcome`\n* [Guidelines Toward Inclusive Practices in Academics by eLife Community Ambassadors](https://osf.io/muk7v/wiki/home/)\n* [Ten simple rules towards healthier research labs](https://doi.org/10.1371/journal.pcbi.1006914) {cite:ps}`Maestre2019ten`\n* [Safety and belonging in the field: a checklist for educators](https://doi.org/10.31223/x53p6h) {cite:ps}`Greene2021safety`\n* [Ten simple rules for building an antiracist lab](https://doi.org/10.1371/journal.pcbi.1008210) {cite:ps}`Chaudhary2020ten`\n* [10 simple rules for a supportive lab environment](https://doi.org/10.1162/jocn_a_01928) {cite:ps}`Pike2022simple`\n* [Ten simple rules for creating a sense of belonging in your research group](https://doi.org/10.1371/journal.pcbi.1010688) {cite:ps}`RuedasGracia2022ten`\n* [Ten simple rules for how you can help make your lab a better place as a graduate student or postdoc](https://doi.org/10.1371/journal.pcbi.1010673) {cite:ps}`Rillig2022ten`\n* [Ten simple rules to cultivate belonging in collaborative data science research teams](https://doi.org/10.1371/journal.pcbi.1010567) {cite:ps}`Gaynor2022ten`\n* [Building a culture of open and reproducible science](https://www.youtube.com/watch?v=__PNXPl2xq0&list=PLeDygc8TN_J6h3RbDDVPW5oTJzRBVg7BQ&index=3&t=3472s)\n"
  },
  {
    "path": "book/website/communication/aa/aa-equitable.md",
    "content": "(cm-aa-equitable)=\n# Large and Equitable Authorships \n\nLarge collaborative projects are becoming more frequent and dealing with the authorship of hundreds or even thousands of authors can be difficult. \n\nSome scientific studies, such as clinical trials and Big science projects, require collaboration from many different teams of researchers and different types of specialists. \nThis research is being published with very large authorships. \nAn example is the publications by CERN that often have thousands of authors in alphabetical order. \nHere is a [link to a 2021 paper from CERN that has 3078 authors](http://cds.cern.ch/record/2753518#) as an example of this type of authorship.    \n\nThis type of shared authorship model is increasingly found in open science projects and communities where the ethos requires a more equitable authorship that truly reflects all the contributions made. \n*The Turing Way* community wants to recognise all contributions and therefore these are recorded carefully in a number of ways. Here is a link to our {ref}`Chapter on acknowledgements<ch-acknowledgement>`.\nWe use an [all contributors bot](https://allcontributors.org/) to record the type of contributions different members make that is shown on our Github Readme file and we also have {ref}`contributor profiles<ch-acknowledgement-record>` at the end of the book, in which each contributor can record their contributions in more detail.  \n\nAlthough The Turing Way is not an academic article, it is a published online book, and therefore we have {ref}`authorship guidelines<ch-acknowledgement-members>`. \nThe first author is always *The Turing Way* Community and then authors are listed in alphabetical order by last name. \nAuthorship is cumulative so authors will always remain authors. \nConsequently, this model of authorship gives equal recognition as an author to any contribution and therefore in this sense is an authorship of contributors rather than authors.\n\nThis is similar to a consortia authorship. \nThis is a collective of authors and all members of the consortium are considered authors and must be listed in the published articles as such. Sometimes this is seen in the journal as a large list of authors or can be shown as the community name, however underneath all of the author names of the community will be visible.\n\nAnother recent development in the use of the CRediT taxonomy is the idea of providing a cover page to an article much like seen on film-credits. This recent [pre-print by the Living with Machines Project](https://livingwithmachines.ac.uk/highlighting-authors-contributions-and-interdisciplinary-collaborations-in-living-with-machines/) has taken this approach. \nThe authors remark that this model of authorship relies on all authors openly acknowledging the importance of everyone's contributions.\nThe Living with Machines project is discussed in the {ref}`personal story about authorship in interdisciplinary projects<cm-aa-stories-interdisciplinary>` at the end of this chapter.\n\nThe use of ORCID is another way to ensure equitable authorship. ORCID is a persistent digital identifier for researchers. \nIt means that even if a researchers name changes in some way, such as not using exactly the same name on each paper or a change of surname, their publications will still be linked back to them. \nIt guarantees recognition for your contributions. \n\nFind out more information about {ref}`ORCID<cm-citable-orcid>` in our sub-chapter in the Guide for Communication. \n"
  },
  {
    "path": "book/website/communication/aa/aa-misconduct.md",
    "content": "(cm-aa-misconduct)=\n# Types of authorship misconduct\n\nThere are various forms of authorship misconduct. \nThese reflect unequal power structures in academia. \nAuthorship misconduct results in a lack of transparency and accountability in research.\n\nA study of inappropriate authorship in biomedical journals found 21.0% of the article included honorary authorship, ghost authorship or both in 2008. \nThis is a reduction from a study in 1996 (29.2%) but shows that these practices are still prevalent {cite}`wislar2011honorary`. \n\n(cm-aa-misconduct-honorary)=\n## Honorary authorship\nHonorary authorship is when an individual becomes a named author even though they have not made a substantial contribution and/or met authorship criteria. \n\nA recent study of academic misconduct found 35.5% of survey respondents across all disciplines had added authors to their own manuscripts even though those authors made minimal contributions to the project {cite}`fong2017manipulation`. \nThe study also found that being an Assistant or Associate Professor significantly increases your likelihood of being an honorary author. \n\nThis can also be called: \n* Gift or guest authorship - naming an individual author out of respect or gratitude. \n* Coercive authorship - a senior researcher forcing a junior researcher to include a gift or guest author.\n\nThis practice happens for a number of reasons:\n* Junior researchers may feel pressured into accepting honorary authorship for more senior researchers in their research group in an attempt not to offend or due to these researchers having power over their career progression. \n* In some disciplines, department head or senior researchers may be added regardless of their contribution.\n* It could also be seen as a good move to include more experienced colleagues to raise the apparent quality of the paper and therefore give more chance for publication.  \n\n(cm-aa-misconduct-ghost)=\n## Ghost authorship\nGhost authorship is an author that makes a significant contribution to the writing of the article without getting acknowledged. \n\nThis could be due to:\n* a professional writer employed to draft an article on behalf of a company.\n* a scientist could employ a professional writer to overcome a lack of writing skills, limited time or lack of knowledge of journal requirements.\n\nThere are also ghost contributors that are contributors to a project but are not usually involved in the writing process.\nTherefore, these contributors are unlikely to be named on academic papers such as those that collected the data, performed data analysis, make software and contribute in many other ways to a research project. \n\nIt is common that those on temporary or short-term contracts, such as postdoctoral researchers, may have moved on to another project before publications are finalised. \nThis can also include voluntary work such as University students working on a project during their studies. \n\nThese contributions may therefore be missed off the authorship of any publications even though they have contributed to the research in some way. Therefore, without significant effort on the part of the article writers or whoever is in overall charge of the article, and also without a more inclusive authorship policy, these researchers will not get a chance for their contributions to be recognised. \n\n"
  },
  {
    "path": "book/website/communication/aa/aa-overview.md",
    "content": "(cm-aa-overview)=\n# Overview of Academic Authorship\n\nA great deal of value is placed on academic authorship because a peer-reviewed journal article is still seen as the most valued output from a research project. \nThe number of articles an academic researcher is named on, and particularly whether the person is named as the first author, has a significant impact on their career.  \n\nBut who should be an author on an article? And can we move away from the idea of first author taking the most credit?\n\n(cm-aa-overview-who)=\n## Who is an author? or are they actually contributors?\n\nAssigning names to a publication can be a tricky business. \nHowever, an important decision that needs to be made at the outset of a project is whether the names on the articles produced from the project are going to be authors or contributors, or a combination of both. \n\nThe decision may essentially be out of your hands as journals and publishers have specific policies on authorship criteria. \nTherefore, if you want to publish in a specific journal you will have to adhere to the policy and make an agreement about this within your project.\n\nA general definition of an author is seen as the person that is the creator of the written work (creator of the ideas and the actual physical writing) and there is an ownership for the author regarding the content of what is written. \n\nHowever, most research involves a team of people to make it happen. So who decides whether these contributions are worthy of authorship or just an acknowledgement?\n\nIt is still common to give authorship to only those that have actually taken part in the writing or editing of the article as well as other substantial aspects of the research. \nThis often excludes large contributions to the project from technicians, undergraduate and postgraduate students, and people involved in the infrastructure of the project such as research software engineers. \nIt also raises ethical issues concerning who takes credit for the work on a project.\n\n(cm-aa-overview-first)=\n## First author dominance\n\nBeing the first author impacts that person's reputation and visibility due to: a perceived view that this person makes the greatest contribution, citation indices that in the past only counted citations for the first-named author, and citations within academic articles being shortened to the first author's surname followed by \"et al.\" (latin for \"and others\") {cite:ps}`Frandsen2010name,VanPraag2008benefits`. \nThe number of citations that papers have and what journals they are published in are often important criteria for obtaining new jobs, getting promoted and winning funding applications.\n\nThe practice of the first author taking prominence over others also has social implications. \nFor example, it might be a difficult decision for a researcher to change their name, due to marriage or divorce, as this action could have a negative impact on their research career. \n\nLinks to discussions about the impact of changing names in academia: \n* Article from The Conversation - [How three scientists navigated the personal and career implications of a name change with marriage](https://theconversation.com/how-three-scientists-navigated-the-personal-and-career-implications-of-a-name-change-with-marriage-114918)\n* [Married women in academia - did you change your name?](https://www.reddit.com/r/AskAcademia/comments/2dfqho/married_women_in_academia_did_you_change_your/).\n* London School of Economics Impact of Social Sciences Blog - [For academic publishing to be trans-inclusive, authors must be allowed to retrospectively change their names](https://blogs.lse.ac.uk/impactofsocialsciences/2020/09/30/for-academic-publishing-to-be-trans-inclusive-authors-must-be-allowed-to-retroactively-change-their-names/).\n\nIt is not the place of this chapter to argue against this academic culture of competitive citation but it must be noted that there are now many different types of outputs that can be attributed in different ways. \nTherefore, we are currently seeing a slow shift in the sole importance of journal articles. \nSuch outputs might include datasets, code or blogs that document a research project and these essentially have as much value as a journal article in terms of communication and the reproducibility of the research.\n\nHere are two good articles on how we need to move away from the culture of first and last authors and reflect more diverse outputs:\n* [No more first author, no more last author by Gretchen Kisher]( https://www.nature.com/articles/d41586-018-06779-2)\n* [Challenges in assessing contributions to reproducible research and open science by Malvika Sharan](https://malvikasharan.github.io/blogs/dora-panel-open-science/).\n\nHowever, decisions concerning authorship are still central in the minds of most academics and also used as a marker of a project's impact. \nTherefore, decisions about authorship need to be taken and the two main decisions to make are: who should get authorship on the paper? and what order the names should take? \n\nContributions to research projects and how these translate into the authorship of a journal article are tackled in many different ways dependent on what discipline the study is based in, the location of the publication (which journal or publisher is used), the motivation of the project contributors and the number of people involved in the project. \nThe name order is heavily based in a discipline specific tradition of what is understood by that order and this can create tension when new research collaborations are set up.\n\n```{figure} ../../../figures/acknowledge-authors.* \n---\nheight: 500px\nname: acknowledge-authors\nalt: We need to move away from the concept of 'authorship' (depicted as one person supported by four unindentifiable figures) to acknowledging contributors - represented by lots of visible figures representing investigation, conceptualisation, data curation, formal analysis, and funding acquisition. \n---\nAcknowledging contributors. _The Turing Way_ project illustration by Scriberia. Zenodo. [http://doi.org/10.5281/zenodo.3332807](http://doi.org/10.5281/zenodo.3332807)\n```\n\nThere is a growing trend pushing against more traditional ideas of authorship; in the number of authors and their order, and that authorship should reflect the contributions of the whole research team or community. Such an inclusive authorship model is hard to achieve and must be planned at the beginning of any project so that all contributions are recorded.\n"
  },
  {
    "path": "book/website/communication/aa/aa-resources.md",
    "content": "(cm-aa-resources)=\n# Resources: \n* American Journal of Experts [The ethics of manuscript authorship](https://www.aje.com/en/arc/ethics-manuscript-authorship/e) including a link to the white paper - credit where credits due. \n\n* [British sociological association authorship guidelines](https://www.britsoc.co.uk/publications/guidelines-reports/authorship-guidelines.aspx)\n\n* [Committee of Publication Ethics (COPE) website](https://publicationethics.org/).\n  \n* [How to handle authorship disputes: a guide for new researchers](https://publicationethics.org/files/2003pdf12_0.pdf).\n\n* [CRediT Taxonomy](https://casrai.org/credit/)\n\n* [London School of Economics Impacts of Social Sciences blog on CRediT Taxonomy](https://blogs.lse.ac.uk/impactofsocialsciences/2020/01/20/credit-check-should-we-welcome-tools-to-differentiate-the-contributions-made-to-academic-papers/)\n\n\n\n"
  },
  {
    "path": "book/website/communication/aa/aa-stories-community.md",
    "content": "(cm-aa-stories-community)=\n# Personal stories - Large Collaborative Research Community\n\n## Discussion with Remi Gau and Isil Poraz Bilgin from the Brainhack community\n\nBrainhack is an open science community that has an innovative meeting format to promote scientific collaboration and education in an open, inclusive environment. \nRemi, Isil and their colleagues have been dealing with the issue of how to determine contributions and authorship in such a large community.\n\n**More information about Remi Gau:**\n* Website: [remi-gau.github.io](https://remi-gau.github.io/)\n* X (formerly Twitter): [RemiGau](https://twitter.com/RemiGau)\n\n**More information about Isil Poyraz Bilgin:**\n* GitHub: [complexbrains](https://github.com/complexbrains)\n* X (formerly Twitter): [complexbrains](https://twitter.com/complexbrains)\n\n**1. What is the *normal* practice of authorship for academic papers in your discipline? or used to be the normal practice?**\n\n**Remi:** My background is in Biology and Psychology. \nMost papers are multi-author and so have more than one author. Single authorship can happen but not for experimental work. \nThis work usually involves at least a Principal Investigator with a Postdoctoral Researcher or PhD student.\n\nSingle author papers don't have a bad reputation. \nThey tend to be theoretical, summarizing articles or opinion pieces. \nHowever, they are more unusual now. This is because of a need to collaborate as projects are more complex and therefore require more skills and hence more people.\n\nThere are still some problematic practices happening such as providing materials for the project because of wanting to get on the paper. \nSo yes, these people are providing something that makes the project possible, such as a raw material needed for the project, but are not making a substantial contribution to the project in any other way.\n\nIn terms of the order of authors on papers, usually the two first names are very important and the two last names. \nFirst names are the people who have completed the most work on the project and the last two names have supervisory roles. \nThe middle ranking authors can be random or alphabetical.\n\nThere is a slow move towards using the [CRediT system](https://casrai.org/credit/) now; giving a description of what the contributions have been. \nThe issue with this is that it is a very detailed description of the different roles and there is a lot of push back about this and trying to do things differently. \n\nThe increase in large collaborative papers and also the generation of software in projects means authorship needs to be dealt with in a different way.\n\n\n**Isil:** I am a mathematician and have a Computer Science MSc, so I have more insights from the engineering practices due to my background, in which the authorship models follow a more compact authorship line-up. \nThis means authorship that mainly constitutes of PhD or Postdoctoral students who actively work in the project as the first authors and the most senior person, such as the supervisors, principal investigators as the last author. \nHowever, with the development of more interdisciplinary research in the field, we have seen an increase in the number of authors that are included in papers.\n\nAs the general rule of thumb, the author lists are created by those who made a 'significant intellectual contribution' to scientific research. \nHowever the complication comes from having no clear definition or metrics to quantify the significance of the contribution that has been made. \n\nThe only definition that has been made to this day is by the American Institute of Physics (AIP) as _\"Authorship should be limited to those who have made a significant contribution to the concept, design, execution, or interpretation of the research study”_, which still does not give a clear guideline regarding how to evaluate the contributors in the fairest and consistent way across journals, institutions and laboratories. \n\n\n**2. When did you discuss authorship in your project?**\n\n**Remi:** This was done very early in the project. \nWe spent some of the first three meetings, in which the two main questions were finding out how to deal with authorship and the journal we wanted to aim for. \nWe also discussed how we were dividing up the tasks.\n\nEven with this early approach, there were some headaches. \nThe main issues were whether authorship should be all alphabetical, random or ranking. \n\nThe order does let people know to what level they want to contribute and has implications on different peoples input into the project.\n\nAlphabetical authorship order would not seem very radical in some groups, such as an open science crowd. \nBut in other settings it is very radical and may mean that some researchers are less keen to contribute if they don't get the recognition for their work that they think they should get.\n\n**Isil:** In addition to these, there have been some discussions regarding using consortium authorships with some examples given from previous papers by the community members as in [SciPy paper](https://www.nature.com/articles/s41592-019-0686-2) or as in [Open Brain Consent](https://onlinelibrary.wiley.com/doi/full/10.1002/hbm.25351). \n\nBut going back to what Remi mentioned, through the discussions, the feeling was that there had been some missing links in the general understanding regarding what the audience of a community paper should be in comparison to a scientific paper. \nHow the authorship model and the expectations regarding the contributions should be justified and what they should be formed like.\n\nTherefore, these consortium authorship models remained a topic that needed more extensive discussions, which was not possible due to the pressure of time.\n\n\n**3. Who had the discussion about authorship in your project?**\n\n**Remi:** Everybody was included in the discussions at the beginning of the project and we had a vote on it. \n\nThese general guidelines were documented but were to be revisited at a later stage of the project. \n\nProblems arose when more people joined the project. \nMost people agreed with the framework and guidelines but I'm not sure that they were made aware of this fully when onboarding. \nIt was a rush and the process was rushed. \n\nLater on there were more discussions about authorship.\n\nThe time scale of the project, and the writing of articles, is going to affect the authorship process. \n\nIt will affect who gets a say and if the decisions are made correctly. \nIf you have to move fast, then having a democratic decision takes a long time in a large community and might not be possible. \nTo speed up the process, we found some core members needed to make decisions, but this undermines the process.\n\n**Isil:** Also the discussions, the voting to be done, the decisions taken or to be taken were all shared through the public communication channels and a google email list that includes all the contributors to make sure everyone had a chance to see this information or follow the process one way or another. \n\n\n**4. What approach have you decided to take in your project?**\n\n**Remi:** Our guidelines set out that we list authors into three groups: \n    \n* Group 1 are a core team of people that are actively working in the project and writing the paper. \nFor example, the actual writing of the paper, brainstorming and recording agendas for meetings. \nWe are using an all contributors model like *The Turing Way's* but with our own emojis in a checklist. \nThis core team were ranked in terms of their contributions but this did create an issue of how to decide the value of different contributions and I would suggest that this should be decided firmly at the beginning.\n    \n* Group 2 are those people that did not actively write the paper but are active in the Brainhack community so they ran events, gave talks or led a project. \nThese members were listed alphabetically.\n\n* Group 3 is the last author. \n    It was decided to be the Brainhack community (not by name but part of the community). \n    There were some discussions about a web list of names.\n\nWe did have to revisit these guidelines.\n\n**Isil:**  Just to add to this, the groups were formed organically as a bottom-up process and kept open to participation at any point in time through data collection and writing processes. \n\nDue to the personal time schedules and commitments, some people were only able to be present at the beginning of the discussions and some were present throughout the whole time or some were able to contribute at the end. \nHowever, at the end of the day, we tried to do our best to quantify any contributions given at any time point throughout the process independent of the amount of presence that had been shown.\n\n\n**5. How have you gone about paper writing practically?**\n\n**Remi:** We started by brainstorming to break the paper into different sections and then created sub teams, where each team worked on one section. \nThere were at least 4 teams.\n\nThere was also a master editing team to unify all these sections and another team to work on the figures, tables and glossary.\n\nVery early on we realised that the paper would be this fixed thing. \nHowever, we wanted there to be an evolving version. \nWe were restricted with the word limit to the paper and we wanted to spill over with all the ideas and keep evolving so we started a Jupyter book. \nSo there is also a team working on the [Jupyter book](http://brainhack.org/brainhack_jupyter_book/).\n\nOnce all of the sections were written and then passed to the editing team, they were sent to the co-authors.\n\nWe took lots of notes in meetings and fed this back to all co-authors. \nAll meetings were recorded and videos made available. \n\nOnce the paper was finished we sent it out for Community review. \nThis was done by putting the pre-print online for any contributors to check. \n\nThen another meeting took place with the core team to finalise these comments. \nThe community review followed the example of the [INCF - A standards organisation for open and FAIR neuroscience](https://www.incf.org/).\n\n**Isil:** The teams for the sections were self-organized by those members who wanted to share their ideas and experiences in that particular domain such as educational aspect, community building or projects. \nThere was no clear cut division between these section teams, the members were fluid across the teams as needed.\n\nAlthough this was helpful given the race we were in against the time in completing the tasks at hand, making this organisation more explicit between the members of the teams might have given greater opportunities for contributions from more contributors who represent a larger variety of backgrounds and opinions.  \n\n\n**6. What have been the problems with doing this?**\n\n**Remi:** We under specified the ranking system for the core team.\nWe did not want the core team to do the ranking, we wanted more of a bottom up approach. \nLike a tiering system of what their contributions were. \n\nWe wanted to use the contributions checklist to rank people such as the number of boxes that they had ticked. \nWe tried to go about this by ranking people in subteams, but this made people very uncomfortable. \nThe community ethos was against a ranking system and also it was unclear that they would not rank themselves. \nThis lack of clarity made it hard to decide how to make a change to this system once it was in place. \nThe process needed to be slowed down and discussed more thoroughly about how to rank people fairly. \nDecisions were finally made about how to rank authors by a core team. \nBut it was time constraints and the ever increasing people onboarding to the community that caused an issue.\n\nFor other publications we will probably just use the 'Brainhack community' as consortium authorship. \nEach person's name will appear underneath the community name as a list and therefore all named authors will get the citation. \nThis will make our authorship more equitable.\n\n**Isil:** Remi has touched upon the many important points above. \n\nJust to add, one of the difficulties we also had was to have a full representation of the Brainhack community in this beautiful work. \nThe nature of the Brainhack community has made it a real challenge to trace back all the contributors and have them involved in the publication process. \nIt is a voluntary based organization that has had events all around the world since 2012. \nSometimes these events are run as stand-alone events, or under the roof of the yearly organized Brainhack Global or even by one of the biggest international neuroscience society - Organization for Human Brain Mapping (OHBM) - through their yearly conference. \n\n\nBecause of his past leadership and many other involvements in OHBM Brainhack events, Remi at the OHBM side and I personally at the Brainhack Global side, we spent weeks tracing back to these Brainhack organizers and attendees, chasing the changed affiliations, and persuading them they should be in this project and why it matters for the future of the Open science and the community itself. There were, however, still missing members or data to be represented in this whole process.\n\nI believe this is a difficulty in writing a paper that strives to engage and embrace an inclusive and representative approach. \nWe want differing ideas, backgrounds and experiences at its heart but we have to deal with the aforementioned struggles.\n\nTherefore, I also strongly believe that adopting an accumulative 'Brainhack community' consortium authorship model would create better, fair and equal opportunities for the representation of every single member of the community. \nThis will create a better chance of incentivizing and acknowledging the years of commitments and efforts given by each member of the community.\n\n\n\n**7. What collaborative tools did you use for the writing and projects?**\n\n**Remi:** We used Google docs and sheets. \nAlso forms for information from authors.\nBut some Google tools are not accessible in some countries such as China.\nSo it is good to have a discussion about what tools to use so that everyone has access to the same software and tools from the start.\n\n**Isil:** Also since we had a lot of supplementary details regarding the years-long events and projects that were run under Brainhack events, that was not able to go into the paper due to the limitation of the word count.\nWe created a supplementary Jupyterbook for which we had a public repository on Github, that is constituted of {term}`Markdown` files for the content of the book, .json files for the data to process and many graphics to summarise the data.\n\n[Recent article from the Brainhack community](https://pubmed.ncbi.nlm.nih.gov/33932337/): Gau R, Noble S, Heuer K, Bottenhorn KL, Bilgin IP, Yang YF, Huntenburg JM, Bayer JMM, Bethlehem RAI, Rhoads SA, Vogelbacher C, Borghesani V, Levitis E, Wang HT, Van Den Bossche S, Kobeleva X, Legarreta JH, Guay S, Atay SM, Varoquaux GP, Huijser DC, Sandström MS, Herholz P, Nastase SA, Badhwar A, Dumas G, Schwab S, Moia S, Dayan M, Bassil Y, Brooks PP, Mancini M, Shine JM, O'Connor D, Xie X, Poggiali D, Friedrich P, Heinsfeld AS, Riedl L, Toro R, Caballero-Gaudes C, Eklund A, Garner KG, Nolan CR, Demeter DV, Barrios FA, Merchant JS, McDevitt EA, Oostenveld R, Craddock RC, Rokem A, Doyle A, Ghosh SS, Nikolaidis A, Stanley OW, Uruñuela E; Brainhack Community. **Brainhack: Developing a culture of open, inclusive, community-driven neuroscience.** Neuron. 2021 Jun 2;109(11):1769-1775. doi: 10.1016/j.neuron.2021.04.001. Epub 2021 Apr 30. PMID: 33932337.\n\n*This interview was conducted by Emma Karoune.*\n\n"
  },
  {
    "path": "book/website/communication/aa/aa-stories-interdisciplinary.md",
    "content": "(cm-aa-stories-interdisciplinary)=\n# Personal stories - Authorship on Interdisciplinary Projects\n\n## Federico Nanni and Mariona Coll Ardanuy - Living with Machines\n\n[Living with Machines](https://livingwithmachines.ac.uk/) is a research project that rethinks the impact of technology on the lives of ordinary people during the Industrial Revolution.\n\nIt brings together an interdisciplinary group of researchers from a range of disciplines to create research methods, tools and data. They are working to change perceptions of how collaborations can be done and in doing this are discovering and working through some interesting challenges, including the issue of academic authorship. \n\n### Find out more about their work below:\n\n**Federico Nanni:**\n* ORCID: [0000-0003-2484-4331](https://orcid.org/0000-0003-2484-4331)\n* X (formerly Twitter): [f_nanni](https://twitter.com/f_nanni)\n* GitHub: [fedenanni](https://github.com/fedenanni)\n\n**Mariona Coll Ardanuy**\n* ORCID: [0000-0001-8455-7196](http://orcid.org/0000-0001-8455-7196)\n* GitHub: [mcollardanuy](https://github.com/mcollardanuy)\n\n**1. What is the *normal* practice of authorship for academic papers in your discipline? or used to be the normal practice?**\n\nWe are an interdisciplinary project and therefore bring with us the usual practices of authorship from two distinct disciplines: Computational linguistics and the Humanities (History). This makes it trickier when trying to decide how to tackle authorship on our publications. \n\nSome of our team are Computational linguists, which is a scientific field concerned with modelling language computationally. In the project, we use natural language processing that is the engineering side of Computational linguistics. We are used to working on papers that have a team of authors and papers are produced and published at pace. \n\nOther team members are from Humanities disciplines where sole author papers are common and are even required for career progression. The pace of publication in humanities is much slower. \n\nThese two different approaches to authorship make it very hard to establish who should be an author or who should just be acknowledged. It is also difficult to work out who contributed the most, therefore establishing a ranking order of authors for papers, as we all have different roles in the project that are equally important to the overall goals. \n\nThe publications we have published so far are more focused on the computational linguistics side of the project and therefore we have been generous with authorship for the whole team. This is due to the acceptance in computational linguistics that a team would have worked together to achieve this work. \n\nHowever, when writing more historically based papers we may need to consider that some of our team members need sole author publications and that adding authors onto these papers devalues the perceived prestige of the paper for them. In this case, we will be careful to fully cite our previous technical papers and acknowledge all of the team in an acknowledgement section.  \n\n\n**2. When did you discuss authorship in your project?**\n\nWe started this process early but did not make much progress really until the first major paper of the project was about to be submitted. We then had to decide how to properly credit everyone in our team and it was driven by the need to get it done.\n\n**3. Who had the discussion of authorship in your project?**\n\nEveryone was involved in the discussions about authorship in meetings led by the Principal Investigator - Professor Ruth Ahnert. All our voices were listened to in these discussions and the approach to authorship in the project had good intentions from the start.\n\nThe discussions were very interdisciplinary as the project has a lot of postdoctoral researchers that all bring with them expert knowledge. \n\n**4. What approach have you decided to take in your project?**\n\nWe adopted the [CRediT taxonomy](https://casrai.org/credit/) to better present each author's contributions to the work. However, we felt it does not cover all the roles in our project so we adapted it. We felt that some of the categories were a bit vague and we wanted to be specific about the roles played by our team members. \n\nThe categories that we added were implementation, reproducibility, interpretation, historical analysis and annotation. \n\nWe encountered an issue with the roles that were not being perceived equally, such as conceptualisation and supervision being seen as having more prestige than other roles. Therefore, even when trying to acknowledge team members contributions more inclusively there are still problems that arise. \n\nWe decided to produce a cover page for the pre-print of our first methods paper. We wanted to reflect our thinking about moving away from an author list and raise the curtain on roles that are often hidden in research projects. \n\nThe cover page makes the jobs on the project more explicit, you therefore do not presume what the authors do as you would with a list. \n\nYou can find out more about this in our blog - [Highlighting authors' contributions and interdisciplinary collaborations in Living with Machines](https://livingwithmachines.ac.uk/highlighting-authors-contributions-and-interdisciplinary-collaborations-in-living-with-machines/).\n\nAs we are trying to challenge how things are usually done, we were expecting this approach to bring conflicts and difficult discussions. Everyone came to this project with a similar mindset and this helped us to resolve any issues. \n\n**5. How have you gone about this practically?**\n\nWe used a Google doc to send around the CRediT taxonomy and everyone could fill in their own name under the different categories. \n\nWe did find that everyone had different opinions - some people did put themselves in many categories and others would only put their name in one when they should have got credit for more. \n\nThis meant that there had to be a degree of moderation when finalising the list of contributions.\n\n**6. What have been the problems with doing this?**\n\nThe cover page was a statement that was put in our pre-print to try to solve the issue of assigning contributions fairly and the need for a list of authors but it was a footnote in the final published article. Therefore, there still had to be a list of authors, and a first author for publication. \n\nThe main author, Mariona, was easy to decide as she had been the main writer and lead in everything to do with that paper but after that the order of authors was difficult. \n\nSome team members don't have the same need for publications as postdoctoral researchers because they hold permanent positions or work in areas where other types of outputs, such as code, are more important. This adds another layer of consideration that needs to be addressed when discussing the author list. \n\nThere are also issues with assigning corresponding authors as in some fields this carries a perception of supervision or seniority in the team. In our case, it was just who was best to contact to find out more about the project. \n\n**7. How are you approaching the writing of the papers?** \n    \nWe had one person leading on a publication. They defined the structure, had an understanding of what was expected by the journal in terms of structure and formatting, they split up the paper into sections for different people to write and then everyone could write their parts. Then one person edited this work. It does need one person to edit the whole paper so they can have an idea of the overall flow and structure. \n\nThis approach worked well for the technical papers we have written.\n\n**8. What collaborative tools are you using for the writing and projects?**\n\nWe are using Overleaf, which is a LaTex based writing software, but I think some people are using Google docs for collaborative writing. \n\n*This interview was conducted by Emma Karoune. We would like to thank Federico and Mariona for the useful discussions about academic authorship, and for commenting on this personal story and the wider academic authorship chapter.*\n"
  },
  {
    "path": "book/website/communication/aa/aa-tips.md",
    "content": "(cm-aa-tips)=\n# Tips for Getting Authorship Right\n\n(cm-aa-tips-who)=\n## Establish who wants to be an author\n\nIt is worth considering that not everyone on the same research project or in the same community will have the same motivation when it comes to authorship. \nNot everyone places the same importance on academic citation rates and therefore this is an issue that needs to be considered at the start of a project.\n\n**Strong motivation** \nThere will be team members that are focused on an academic career path and feel paper authorship is a driving force for career progression. \nThey will put high importance on being an author and probably will also have strong opinions on how they want authorship to be attributed and what order authors names should take. \n\n**Medium motivation** \nOther team members, probably more established academics who already have a substantial amount of publications and in stable employment, may be less worried about the order of authors on their papers or how contributions are attributed and tracked. \n\n**Low motivation** \nTeam members that are not interested in a purely academic career but still are an integral part of the team and have made substantial contributions to the project, such as research engineers, may not be interested in authorship at all.  \n\n(cm-aa-tips-culture)=\n## Encourage a culture of ethical and equitable authorship\nThere may be unethical practices that exist in your discipline, or even in your institution, but this does not mean that you have to follow them. \nYou can implement a more ethical and equitable authorship approach in your own research.\n\n* Find out about your own institution's authorship policy or make one yourself.\n* If you know what journal you are going to target for your publications, then find out about their authorship policy. \n* Read about ethical authorship such as on the [Committee on Publication Ethics (COPE) website](https://publicationethics.org/).\n\n(cm-aa-tips-plan)=\n## Plan an authorship strategy early on in a project\nThe earlier that authorship is discussed, the more awareness project members will have. \nThis will hopefully lead to less conflict about authorship when it comes to the paper writing stage of the project. \n\nIt is not good practice to wait until you have finished writing a paper to have these discussions and this could lead to a lot of problems.\n\n* Have a discussion about authorship at the outset of the project or even in the planning stage. These discussions need to involve the whole team.\n    * This needs to include: \n        * What journals you are targeting - this means you can find out about their own authorship policies. \n        * How the order of authors will be decided or are you following one type of authorship model/definition from the beginning. \n        * How you will track contributions - will this be done for all contributions or a selected list? How will you do this? a checklist/all contributors bot? Who will be in charge of maintaining the list of contributors? \n        * Whether the authorship policy/guidelines will be reviewed, when this will be done and how this will be done.\n\n* Produce documentation on the decisions that have been made in these meetings. \n    * If possible, video the meetings where this is discussed, produce meeting notes and store them on your project repository. \n    * This needs to include a formal statement about authorship, different peoples roles, when it will be reviewed and how it will be reviewed.\n\n* Make sure that every member of the project has signed an authorship agreement at the beginning of the project or this agreement/vote has been recorded in meeting notes.\n    * Someone should be assigned to oversee this and also to get this agreement from any new members that join during the project.\n\n* Record a time for the policy to be reviewed, who will do it and what will happen in this review. \n\n(cm-aa-tips-onboarding)=\n## Make the authorship policy and agreement part of onboarding\nIt is likely that you will have new members join your project at different stages and it is important that you make the authorship policy known to them during onboarding.\n\n* Make sure that onboarding during the project includes documentation explaining your authorship approach and a signed agreement to the project policy. \n    * This might be a choice of whether to be an author with this policy or to opt out of it all together.\n\n(cm-aa-tips-revisit)=\n## Revisit the authorship policy before you start to write each article\nEach article from a project may not have the same authorship due to the specialist nature of certain types of publications and different aspects of a project. \n\n* To make credit for the project more equitable, it is worth considering what publications can be written to give a chance for different team members to be first author.  \nYou may also want to have some publications that give authorship to the whole team equally. \n    * Junior members of the team will gain more advantage from first author papers than more senior members. It will have an impact on their career status and job prospects.\n    * Sharing out the first author role will also distribute the workload more fairly throughout your team as the first author is responsible for a large part of the work involved in writing and administering the paper. \n"
  },
  {
    "path": "book/website/communication/aa/aa-traditions.md",
    "content": "(cm-aa-traditions)=\n# Discipline Specific Authorship Traditions\n\nWhen you speak to researchers from different disciplines about academic authorship, you get many different answers about who they think should be an author, what order the authors should take and what the order means. \nIt is therefore apparent that there are different discipline-specific traditions about how authorship is conducted for journal articles. \n\n(cm-aa-traditions-humss)=\n## Humanities and social science disciplines\n\nSingle author publications are more common in Humanities disciplines than in Science, Technology and Medicine. \nResearch, and the writing aspect of this, is more often seen as a solo endeavour due to the nature of the subjects involved and therefore single author papers and books are highly valued. \nHowever, a recent [white paper by Taylor & Francis](https://authorservices.taylorandfrancis.com/co-authorship-in-the-humanities-and-social-sciences/) concerning co-authorship in the humanities and social sciences found that co-authorship seems to be increasing with 74% of respondents to a recent survey reporting their typical number of authors per paper being two or more.\n\nThis tradition though does mean that co-authorship is less well discussed and there seems to be no consensus on how it should be approached. \nThe Taylor & Francis white paper also states that issues have arisen concerning the over-crediting of senior or supervisory researchers and only 18% of respondents reporting having received training in determining academic authorship.\n\n(cm-aa-traditions-med)=\n## Medical Sciences\nThe [International Committee of Medical Journal Editors (ICMJE) has a clear set of guidelines for medical science](http://www.icmje.org/recommendations/browse/roles-and-responsibilities/defining-the-role-of-authors-and-contributors.html) that is also used more widely in other scientific disciplines journals. \nThe criteria are clear for authorship and require substantial contributions to several areas of the research project, including writing or editing. It sets out four criteria that must all be met to be deemed an author on the paper: \n* Significant involvement in the study design, data collection or analysis.\n* Involvement in drafting or revising the manuscript.\n* Approval of the final version of the manuscript.\n* Responsibility for accuracy and integrity of all aspects of research.\n\nIf all these criteria are not met then these contributors can only be added to the acknowledgements. \nTherefore, these criteria are not inclusive in terms of authorship for all contributions to a research project, even if they are substantial contributions such as software development.\n\nMany journals in this discipline still use their own guidelines or modified versions of the ICMJE guidelines due in part to a disagreement that an individual whose sole contribution is as the main writer would not qualify as an author {cite}`Panter2021bestpractices`. \nIt is thought that this should allow authorship because to write a paper you would also need to understand and interpret the data therefore fulfilling the first criteria. \n\n(cm-aa-traditions-nat)=\n## Natural Sciences\nThe natural sciences have no standard way to define academic authorship. \n\nLeading journals such as the Proceedings of the National Academy of Sciences of the United States of America ([PNAS](https://blog.pnas.org/iforc.pdf)) have set out that 'authorship must be limited to those who have contributed substantially to the work'. \n\nThey also specify that the specific contributions of authors to the published work must be written in the footnote to the paper. \nExamples of designations include: designed research, performed research, contributed new reagents or analytic tools, analyzed data, wrote the paper.\n\nThis does mean that an author could be someone that does not write the paper, however, they must have agreed to the version of the paper that is submitted so this implies they have at least read and made comments on the final version.\n\nOther journals such as [PLOS One](https://journals.plos.org/plosone/s/authorship), [e-life](https://reviewer.elifesciences.org/author-guide/journal-policies) and [F1000 Research](https://f1000research.com/gateways/nc3rs/for-authors/article-guidelines/research-articles) are using the ICMJE criteria for authorship but in combination with a wider attribution for different contributions using the [CRediT Taxonomy](https://casrai.org/credit/).  \nThis is a high-level taxonomy that includes 14 roles to represent typical roles within scientific research making the contributions section of a paper at least more inclusive. \n\n(cm-aa-traditions-order)=\n## Order of authors and what this means\n\nThe order of authors is also different in each discipline and the placement of each author is often not understood outside of each discipline. \nThe nuances of the author order are not explained anywhere in an academic paper for others to understand, such as how the authors have decided this order and the relevance of it to them.\n\nHowever, in general the first author is seen as the person that has given the main contribution to the project in terms of forming the ideas and structure for the research paper, writing and editing of the article and being in charge of organising the article submission. \nThey are also often the corresponding author that deals with any queries regarding the article. \nAlthough, in some academic circles being the corresponding author is a measure of academic status and does not have to be the same person as the first author. \n\nIn social sciences, the first author indicates who should get the most credit for the research and the authors are then listed in order of descending contributions, all the way to the last author who has made the least contribution. See the LSE Impact of social sciences blog - [First among equals](https://blogs.lse.ac.uk/impactofsocialsciences/2015/06/18/first-among-equals-guidelines-authorship-credit/) for a wider discussion on first authors. \n\nHowever, in many disciplines the last author or the last two authors have significance and are senior members of the research team. \nThese team members are likely to be in supervisory roles in the project. This could be as PhD supervisors, Principal Investigators or Co-investigators. \n\nThe authors in the middle of the list, between the first author and last author/s, can be in the order of most contributions to least, or as an alphabetical list. \n\nSome disciplines, such as mathematics (see this [Wikipedia page on academic authorship](https://en.wikipedia.org/wiki/Academic_authorship) for more information), have always used alphabetical lists with no indication in the order given to the amount of contributions made. \n"
  },
  {
    "path": "book/website/communication/aa.md",
    "content": "(cm-aa)=\n# Academic Authorship\n\n(cm-aa-prerequisites)=\n## Prerequisites\n\n| Prerequisite | Importance | Skill Level | Notes |\n| -------------|----------|------|----|\n| {ref}`Open Research<rr-open>` | Helpful | Beginner | None |\n\n```{figure} ../../figures/acknowledge-authors.*\n---\nname: acknowledging contributors\nalt: The image shows the current system of authorship with many people holding up one person who is receiving the most credit. Then it shows lots of contributors working together to bring together different contributions of a project to publish a project with all these contributions being equally acknowledged.\n---\nIllustration about acknowledging contributions in academic articles.\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: 10.5281/zenodo.3332807.\n\n```\n\n(cm-aa-summary)=\n## Summary\nThis chapter sets out information about academic authorship traditions in different disciplines, which people are traditionally considered to be \"authors\", how practices concerning authorship are changing, and how you might go about trying to achieve the authorship model you want to use.\n\n(cm-aa-motivation)=\n## Motivation and Background\nThe academic landscape is rapidly changing in favour of research projects involving large collaborations and interdisciplinary teams. \nThis makes decisions concerning academic authorship hard to navigate and especially the need to consider different types of contributions fairly. \nConsequently, there is a shift in how researchers are thinking about assigning authorship for research outputs and what types of contributions are recognised and therefore valued.\n"
  },
  {
    "path": "book/website/communication/binder/zero-to-binder.md",
    "content": "(z2b)=\n# Zero-to-Binder\n\nIn this chapter, we will create a Binder project from scratch: we will first make a repository on GitHub and then launch it on mybinder.org.\nSections where you are expected to complete a task are denoted by three traffic light 🚦 emojis.\nSome steps give you the option of Python, Julia or R - click on the tab of your preferred language.\n\n```{admonition} Attributions\nThis tutorial is based on Tim Head's _Zero-to-Binder_ workshops which can be found here: <http://bit.ly/zero-to-binder> and <http://bit.ly/zero-to-binder-rise>\n\nThank you to Anna Krystalli and Oliver Strickson for their help developing the R and Julia content, respectively.\n```\n\n```{attention}\nBinder can take a long time to load, but this doesn't necessarily mean that your Binder will fail to launch.\nYou can always refresh the window if you see the \"... is taking longer to load, hang tight!\" message.\n```\n\n```{admonition} If you are using R...\nIf you are following the R path, we have included some alternative steps using the [`holepunch` package](https://github.com/karthik/holepunch) which will build your environment using a [rocker base image](https://github.com/rocker-org/rocker) and should, ultimately, be faster to build and launch.\n```\n\n(z2b-reqs)=\n## Requirements\n\nYou will need:\n\n- **Some code and some data.**\n  The code should take less than **10 minutes to run**, and the data should be less than **10 MB**.\n  This might mean that you just pick one script from a bigger project, or bring a subset of your data.\n  Note that it's really important that the code and data can be made **public** because we'll be using the public binder instance.\n- **A GitHub account.**\n  Please sign up for one if you don't already have one: <https://github.com/join>\n\n(z2b-step-1)=\n## 1. Creating a repo to Binderize\n\n🚦🚦🚦\n\n\n`````{tab-set}\n````{tab-item} Python\n:sync: key1\n1) Create a new repo on GitHub called \"my-first-binder\"\n   - Make sure the repository is **public**, _not private_!\n   - Don't forget to initialise the repo with a README!\n2) Create a file called `hello.py` via the web interface with `print(\"Hello from Binder!\")` on the first line and commit to the `main` branch\n````\n\n````{tab-item} Julia\n:sync: key2\n1) Create a new repo on GitHub called \"my-first-binder\"\n   - Make sure the repository is **public**, _not private_!\n   - Don't forget to initialise the repo with a README!\n2) Create a file called `hello.jl` via the web interface with `println(\"Hello from Binder!\")` on the first line and commit to the `main` branch\n3) Create a file called `Project.toml` (WARNING: the capitalisation is important!) with the following content and commit it to `main`.\n   This will install Julia into the Binder environment.\n\n   ```julia\n   [compat]\n   julia = \"1.3\"\n   ```\n````\n\n````{tab-item} R\n:sync: key3\n1) Create a new repo on GitHub called \"my-first-binder\"\n   - Make sure the repository is **public**, _not private_!\n   - Don't forget to initialise the repo with a README!\n2) Create a file called `hello.R` via the web interface with `print(\"Hello from Binder!\")` on the first line and commit to the `main` branch\n3) Create a file called `runtime.txt` with `r-2022-01-01` on the first line.\n   This date represents the snapshot of [CRAN](https://cran.r-project.org/) hosted on the [RStudio Package Manager](https://packagemanager.rstudio.com) we will use.\n   Commit this file to the `main` branch.\n\n   ```{note}\n   In R you can use `holepunch::write_runtime()` to create a `runtime.txt` in the `.binder/` directory; it will be configured with today's date.\n   ```\n````\n`````\n\n(z2b-public-repo)=\n### Why does the repo have to be public?\n\nmybinder.org cannot access private repositories as this would require a secret token.\nThe Binder team choose not to take on the responsibility of handling secret tokens as mybinder.org is a public service and proof of technological concept.\nIf accessing private repositories is a feature you/your team need, we advise that you look into building your own [BinderHub](https://binderhub.readthedocs.io).\n\n(z2b-step-2)=\n## 2. Launch your first repo!\n\n🚦🚦🚦\n\n1) Go to **<https://mybinder.org>**\n2) Type the URL of your repo into the \"GitHub repo or URL\" box.\n   It should look like this:\n   > **https://github.com/YOUR-USERNAME/my-first-binder**\n3) As you type, the webpage generates a link in the \"Copy the URL below...\" box\n   It should look like this:\n   > **https://mybinder.org/v2/gh/YOUR-USERNAME/my-first-binder/HEAD**\n4) Copy it, open a new browser tab and visit that URL\n   - You will see a \"spinner\" as Binder launches the repo\n\nIf everything ran smoothly, you'll see a JupyterLab interface.\n\n(z2b-background-1)=\n### What's happening in the background? - Part 1\n\nWhile you wait, BinderHub (the backend of Binder) is:\n\n- Fetching your repo from GitHub\n- Analysing the contents\n- Building a Docker image based on your repo\n- Launching that Docker image in the cloud\n- Connecting you to it via your browser\n\n(z2b-step-3)=\n## 3. Run the script\n\n🚦🚦🚦\n\n````{tab-set}\n```{tab-item} Python\n:sync: key1\n1. From the launch panel, select \"Terminal\"\n2. In the new terminal window, type `python hello.py` and press return\n```\n\n```{tab-item} Julia\n:sync: key2\n1. From the launch panel, select \"Terminal\"\n2. In the new terminal window, type `julia hello.jl` and press return\n```\n\n```{tab-item} R\n:sync: key3\n1. From the launch panel, select \"Terminal\"\n2. In the new terminal window, type `Rscript -e 'source(\"hello.R\")'` and then press return\n```\n````\n\n`Hello from Binder!` should be printed to the terminal.\n\n(z2b-step-4)=\n## 4. Pinning Dependencies\n\nIt was easy to get started, but our environment is barebones - let's add a **dependency**!\n\n🚦🚦🚦\n\n`````{tab-set}\n````{tab-item} Python\n:sync: key1\n1) In your repo, create a file called `requirements.txt`\n2) Add a line that says: `numpy==1.25.0`\n3) Check for typos! Then commit to the `main` branch\n4) Visit **https://mybinder.org/v2/gh/YOUR-USERNAME/my-first-binder/HEAD** again in a new tab\n````\n\n````{tab-item} Julia\n:sync: key2\n1) In your repo, edit the `Project.toml` file\n2) Add a new block that says:\n\n   ```julia\n   [deps]\n   CSV = \"336ed68f-0bac-5ca0-87d4-7b16caf5d00b\"\n   ```\n\n3) Check for typos! Then commit to `main`.\n4) Visit **https://mybinder.org/v2/gh/YOUR-USERNAME/my-first-binder/HEAD** again in a new tab\n````\n\n````{tab-item} R\n:sync: key3\n1) In your repo, create a file called `install.R`\n2) Add a line that says: `install.packages(\"readr\")`\n3) Check for typos! Then commit to the `main` branch\n4) Visit **https://mybinder.org/v2/gh/YOUR-USERNAME/my-first-binder/HEAD** again in a new tab\n\n```{note}\nIf using `holepunch`, you can create an `install.R` file and automatically add the code to install all dependencies in your project using `holepunch::write_install()`.\n```\n````\n`````\n\nThis time, click on \"Build Logs\" in the big, horizontal, grey bar.\nThis will let you watch the progress of your build.\nIt's useful when your build fails or something you think _should_ be installed is missing.\n\n```{note}\nSometimes Binder's build logs prints things in red font, such as warnings that `pip` is not up-to-date (`pip` is often out of date because it's regularly updated!) or installation messages, especially if you're using R.\nThese red messages don't necessarily mean there's a problem with your build and it will fail - it's just an unfortunate font colour choice!\n```\n\n(z2b-background-2)=\n### What's happening in the background? - Part 2\n\nThis time, BinderHub will read the configuration file you added and install the specific version of the package you requested.\n\n(z2b-dependencies)=\n### More on pinning dependencies\n\n````{tab-set}\n```{tab-item} Python\n:sync: key1\nIn the above example, we used two equals signs (`==`) to pin the version of `numpy`.\nThis tells Binder to install that _specific_ version.\n\nAnother way to pin a version number is to use the greater than or equal to sign (`>=`) to allow any version above a particular one to be installed.\nThis is useful when you have a lot of dependencies that may have dependencies on each other and allows Binder to find a configuration of your dependencies that do not conflict with one another whilst avoiding any earlier versions which may break or change your code.\n\nFinally, you could not provide a version number at all (just the name of the library/package) and Binder will install the latest version of that package.\n```\n\n```{tab-item} Julia\n:sync: key2\nIn the above example, we copied a hash into our `Project.toml` file which is related to the version of the package we'd like to install.\nFor a full dependency graph, we would also need to include a `Manifest.toml` file which would document dependencies of dependencies.\nBetween these two files, we are able to instantiate an exact replication of a Julia environment.\n\nOf course we can imagine that, as the environment grows and the inter-dependencies become more complex, it would become very taxing to write these files by hand!\nThe truth is that you'd never do it manually, the built-in package manager `Pkg` can [generate them automatically](https://julialang.github.io/Pkg.jl/v1/environments/).\n```\n\n```{tab-item} R\n:sync: key3\nIn the above example, we specified that we want to use R in our project by including a date in `runtime.txt`.\nThe date tells Binder which CRAN snapshot to source R and packages from.\nThese snapshots are sourced from the [RStudio Package Manager](https://packagemanager.rstudio.com) (RSPM).\nIn the above example, the RSPM snapshot dated `r-2022-01-01` is used and the version of R and `readr` available at that date and installed.\nFor the example workflow to work correctly, please ensure you do not supply a date earlier than this example date.\n\nThis provides some rudimentary package versioning for R users but is not as robust as pinning versions in a `requirements.txt` in Python.\nFor more robust and specific version pinning in R, have a look at the [`renv`](https://rstudio.github.io/renv/) package.\n```\n````\n\n(z2b-step-5)=\n## 5. Check the Environment\n\n🚦🚦🚦\n\n`````{tab-set}\n````{tab-item} Python\n:sync: key1\n1) From the launch panel, select \"Python 3\" from the Notebook section to open a new notebook\n2) Type the following into a new cell:\n\n   ```python\n   import numpy\n   print(numpy.__version__)\n   numpy.random.randn()\n   ```\n\n   ```{attention}\n   Note the two underscores either side of `version`!\n   ```\n\n3) Run the cell to see the version number and a random number printed out\n   - Press either SHIFT+RETURN or the \"Run\" button in the Menu bar\n````\n\n````{tab-item} Julia\n:sync: key2\n1) From the launch panel, select \"Julia\" from the Notebook section to open a new Julia notebook\n2) Type the following into a new cell:\n\n   ```julia\n   using Pkg\n   Pkg.status()\n   ```\n\n3) Run the cell to see the version number printed out\n   - Press either SHIFT+RETURN or the \"Run\" button in the Menu bar\n````\n\n````{tab-item} R\n:sync: key3\n1) From the launch panel, select \"R\" from the Notebook section to open a new R notebook\n2) Type the following into a new cell:\n\n   ```r\n   library(readr)\n   packageVersion(\"readr\")\n   read_csv(system.file(\"extdata/mtcars.csv\", package = \"readr\"))\n   ```\n\n3) Run the cell\n    - Press either SHIFT+RETURN or the \"Run\" button in the Menu bar\n    You should see the following output:\n      - the version number of the installed version of `readr`\n      - a tibble of the contents of the `mtcars.csv` which is a csv file included in package `readr`\n````\n`````\n\n```{attention}\nIf you save this notebook, it **will not** be saved to the GitHub repo.\nPushing changes back to the GitHub repo through the container is not possible with Binder.\n**Any changes you have made to files inside the Binder will be lost once you close the browser window.**\n```\n\n(z2b-step-6)=\n## 6. Sharing your Work\n\nBinder is all about sharing your work easily and there are two ways to do it:\n\n- Share the **https://mybinder.org/v2/gh/YOUR-USERNAME/my-first-binder/HEAD** URL directly\n- Visit **<https://mybinder.org>**, type in the URL of your repo and copy the {term}`Markdown` or ReStructured Text snippet into your `README.md` file.\n  This snippet will render a badge that people can click, which looks like this: ![Binder](https://mybinder.org/badge_logo.svg)\n\n🚦🚦🚦\n\n1) Add the {term}`Markdown` snippet from **<https://mybinder.org>** to the `README.md` file in your repo\n   - The grey bar displaying a binder badge will unfold to reveal the snippets.\n     Click the clipboard icon next to the box marked with \"m\" to automatically copy the {term}`Markdown` snippet.\n2) Click the badge to make sure it works!\n\n(z2b-step-7)=\n## 7. Accessing data in your Binder\n\nAnother kind of dependency for projects is **data**.\nThere are different ways to make data available in your Binder depending on the size of your data and your preferences for sharing it.\n\n(z2b-small-files)=\n### Small public files\n\nThe simplest approach for small, public data files is to add them directly into your GitHub repository.\nThey are then directly encapsulated into the environment and versioned along with your code.\n\nThis is ideal for files up to **10MB**.\n\n(z2b-medium-files)=\n### Medium public files\n\nTo access medium files **from a few 10s MB up to a few hundred MB**, you can add a file called `postBuild` to your repo.\nA `postBuild` file is a shell script that is executed as part of the image construction and is only executed once when a new image is built, not every time the Binder is launched.\n\nSee [Binder's `postBuild` example](https://mybinder.readthedocs.io/en/latest/using/config_files.html#postbuild-run-code-after-installing-the-environment) for more uses of the `postBuild` script.\n\n```{note}\nNew images are only built when Binder sees a new commit, not every time you click the Binder link.\nTherefore, the data is only downloaded once when the Docker image is built, not every time the Binder is launched.\n```\n\n(z2b-large-files)=\n### Large public files\n\nIt is not practical to place large files in your GitHub repo or include them directly in the image that Binder builds.\nThe best option for large files is to use a library specific to the data format to stream the data as you're using it or to download it on demand as part of your code.\n\nFor security reasons, the outgoing traffic of your Binder is restricted to HTTP/S or GitHub connections only. You will not be able to use FTP sites to fetch data on mybinder.org.\n\n(z2b-private-files)=\n### Private files\n\nThere is no way to access files which are not public from mybinder.org.\nYou should consider all information in your Binder as public, meaning that:\n\n- there should be no passwords, tokens, keys and so on in your GitHub repo;\n- you should not type passwords into a Binder running on mybinder.org;\n- you should not upload your private SSH key or API token to a running Binder.\n\nIn order to support access to private files, you would need to create a local deployment of [BinderHub](https://binderhub.readthedocs.io) where you can decide the security trade-offs yourselves.\n\n```{note}\nBuilding a BinderHub is not a simple task and is usually taken on by IT/RSE groups for reasons around managing maintenance, security and governance.\nHowever, that is not to say that they are the _only_ groups of people who should/could build a BinderHub.\n```\n\n(z2b-step-8)=\n## 8. Get data with `postBuild`\n\n🚦🚦🚦\n\n`````{tab-set}\n````{tab-item} Python\n:sync: key1\n1) Go to your GitHub repo and create a file called `postBuild`\n2) In `postBuild`, add a single line reading: `wget -q -O gapminder.csv http://bit.ly/2uh4s3g`\n   - `wget` is a program which retrieves content from web servers.\n     This line extracts the content from the bitly URL and saves it to the filename denoted by the `-O` flag (capital \"O\", not zero), in this case `gapminder.csv`.\n     The `-q` flag tells `wget` to do this quietly, meaning it won't print anything to the console.\n3) Update your `requirements.txt` file by adding a new line with `pandas` on it and another new line with `matplotlib` on it\n   - These packages aren't necessary to download the data but we will use them to read the CSV file and make a plot\n4) Click the binder badge in your README to launch your Binder\n\nOnce the Binder has launched, you should see a new file has appeared that was not part of your repo when you clicked the badge.\n\nNow visualise the data by creating a new notebook (selecting \"Python 3\" from the Notebook section) and run the following code in a cell.\n\n```python\n%matplotlib inline\n\nimport pandas\n\ndata = pandas.read_csv(\"gapminder.csv\", index_col=\"country\")\n\nyears = data.columns.str.strip(\"gdpPercap_\")  # Extract year from last 4 characters of each column name\ndata.columns = years.astype(int)              # Convert year values to integers, saving results back to dataframe\n\ndata.loc[\"Australia\"].plot()\n```\n\n```{note}\nSee this [Software Carpentry lesson](https://swcarpentry.github.io/python-novice-gapminder/09-plotting/index.html) for more info.\n```\n````\n\n````{tab-item} Julia\n:sync: key2\n1) Go to your GitHub repo and create a file called `postBuild`\n2) In `postBuild`, add a single line reading: `wget -q -O gapminder.csv http://bit.ly/2uh4s3g`\n   - `wget` is a program which retrieves content from web servers.\n     This line extracts the content from the bitly URL and saves it to the filename denoted by the `-O` flag (capital \"O\", not zero), in this case `gapminder.csv`.\n     The `-q` flag tells `wget` to do this quietly, meaning it won't print anything to the console.\n3) Update your `Project.toml` file by adding new dependencies to `[deps]` with the following lines:\n\n   ```julia\n   DataFrames = \"a93c6f00-e57d-5684-b7b6-d8193f3e46c0\"\n   Plots = \"91a5bcdd-55d7-5caf-9e0b-520d859cae80\"\n   ```\n\n   - These packages aren't necessary to download the data but we will use them to read the CSV file and make a plot\n4) Click the binder badge in your README to launch your Binder\n\nOnce the Binder has launched, you should see a new file has appeared that was not part of your repo when you clicked the badge.\n\nNow visualise the data by creating a new notebook (selecting \"Julia\" from the Notebook section) and run the following code in a cell.\n\n```julia\nusing DataFrames\nusing CSV\nusing Plots\n\ndata = CSV.read(\"gapminder.csv\", DataFrame)\n\n# Extract the row corresponding to Australia\naus_gdp = data[data[:, :country] .== \"Australia\", :]\naus_gdp = Matrix(aus_gdp[:,2:end])[:]  # as vector\n\n# Extract the years as Ints from the column names\nyears = [x[end-3:end] for x in names(data)[2:end]]\nyears = parse.(Int, years)\n\n# Plot\nplot(years, aus_gdp)\n```\n````\n\n````{tab-item} R\n:sync: key3\n1) Go to your GitHub repo and create a file called `postBuild`\n2) In `postBuild`, add a single line reading: `wget -q -O gapminder.csv http://bit.ly/2uh4s3g`\n   - `wget` is a program which retrieves content from web servers.\n     This line extracts the content from the bitly URL and saves it to the filename denoted by the `-O` flag (capital \"O\", not zero), in this case `gapminder.csv`.\n     The `-q` flag tells `wget` to do this quietly, meaning it won't print anything to the console.\n3) Update your `install.R` file to install two additional dependencies, `\"tidyr\"` and `\"ggplot2\"`. To do so, supply a character vector of the required packages to `install.packages()` instead of a single character string. The installation command should now look like this:\n\n   ```r\n   install.packages(c(\"readr\", \"tidyr\", \"ggplot2\"))\n   ```\n\n    - These packages aren't necessary to download the data but we will use them to read the CSV file, process it and make a plot\n4) Click the binder badge in your README to launch your Binder\n\nOnce the Binder has launched, you should see a new file has appeared that was not part of your repo when you clicked the badge.\n\nNow visualise the data by creating a new notebook (selecting \"R\" from the Notebook section) and running the following code in a cell.\n\n```r\nlibrary(readr)\nlibrary(tidyr)\nlibrary(ggplot2)\n\ndata <- read_csv(\"gapminder.csv\") %>%\n    pivot_longer(-country,\n                 names_to = \"year\",\n                 values_to = \"gdpPercap\",\n                 names_prefix = \"gdpPercap_\",\n                 names_transform = list(year = as.integer))\n\ndata[data$country == \"Australia\", ] %>%\n    ggplot(aes(x = year, y = gdpPercap)) +\n    geom_line()\n```\n````\n`````\n\n(z2b-beyond-notebooks)=\n## Changing the Interface\n\nThroughout this tutorial, we have been using the JupyterLab interface.\nThis is the default interface for newly created Binder instances.\nHowever, this is not the only interface available on mybinder.org, the Classic Notebook view and RStudio are available too.\n(An R environment needs to be installed for RStudio to be available.)\n\nYou can access the different interfaces in different ways.\nThe easiest way is to use the buttons in the JupyterLab Launcher, but you can provide URL parameters to directly open a specific interface (or file!) when the Binder instance launches.\nWe'll now cover three ways you can manipulate your Binder URL to navigate between interfaces.\n\n### from inside a running Binder\n\nHere is the structure of the URL inside a running Binder instance running JupyterLab:\n\n> **https://<some-prefix>.mybinder.org/user/<a composite of your username, your repo name and a hash>/lab**\n\nYou can change the interface from JupyterLab to either the Classic Notebook or RStudio by changing the `/lab` part of the URL to:\n\n- **Classic Notebook:** `/tree`\n- **RStudio:** `/rstudio`\n\n### by changing the mybinder.org launch link\n\nHere is the launch link you have been using throughout this tutorial:\n\n> **https://mybinder.org/v2/gh/YOUR-USERNAME/my-first-binder/HEAD**\n\nYou can access each interface by appending one of the following to the end of you URL:\n\n- **Jupyter Notebook:** `?urlpath=tree`\n- **JupyterLab:** `?urlpath=lab`\n- **RStudio:** `?urlpath=rstudio`\n\n### by using the mybinder.org form\n\nYou can also set the interface when constructing your launch link on the mybinder.org website (instead of editing the URL directly) as demonstrated in the below gif.\n\n```{figure} https://user-images.githubusercontent.com/1448859/53651127-4dabe900-3c46-11e9-8684-2cfde840d4ce.gif\n---\nname: changing_interfaces\nalt: A gif demonstrating how to change the interface of a Binder on the mybinder.org website\n---\nUse the \"URL to open\" option on the mybinder.org site to select your interface\n```\n\n(z2b-over-to-you)=\n## Now over to you!\n\nNow you've binderized (bound?) this demo repo, it's time to binderize the example script and data you brought along!\n\n**Some useful links:**\n\n- Choosing languages:\n  - **<https://mybinder.readthedocs.io/en/latest/howto/languages.html>**\n- Configuration files:\n  - **<https://mybinder.readthedocs.io/en/latest/using/config_files.html>**\n- Example Binder repos:\n  - **<https://mybinder.readthedocs.io/en/latest/sample_repos.html>**\n- Getting data:\n  - With `wget`: **<https://github.com/binder-examples/getting-data>**\n  - With `quilt`: **<https://github.com/binder-examples/data-quilt>**\n  - From remote storage: **<https://github.com/binder-examples/remote_storage>**\n\n**Advanced usage patterns:**\n\n- Separating content from environment with `nbgitpuller` to reduced rebuilds:\n  - **<https://discourse.jupyter.org/t/tip-speed-up-binder-launches-by-pulling-github-content-in-a-binder-link-with-nbgitpuller/922>**\n- Tips for reducing the start-up time of your repository:\n  - **<https://discourse.jupyter.org/t/how-to-reduce-mybinder-org-repository-startup-time/4956>**\n"
  },
  {
    "path": "book/website/communication/binder.md",
    "content": "(binder)=\n# Binder\n\nIn this chapter, we will discuss Project Binder and mybinder.org as a means to transparently and interactively share research.\n\n(binder-share)=\n## Why should you share your work?\n\nMotivation for sharing research outputs is more deeply explored in the {ref}`rr-open` chapter.\n\nIn short, sharing your research code can help provide context to the results you present by illustrating the process you went through to reach them.\nBy sharing code, we also avoid reinventing the wheel in order to make progress on a research topic since the previous tools are available to be built on top of.\n\nHowever, the biggest barrier to sharing code is often installing packages and setting up the computational environment, as we will see in the next section.\nBy sharing your work via platforms such as mybinder.org:\n\n- Installing software packages is no longer a challenge\n- People using different operating systems have similar experiences since the computation is happening on the platform, not their local machine\n- Your work can be distributed to a broader audience since the technical barrier has been lowered\n\n(binder-what)=\n## What is Project Binder?\n\nWe've discussed why it's important to share your work and we've reached a point where we've decided to publish some Jupyter Notebooks with analysis code on a collaboration platform, such as GitHub.\n\nGitHub is a great platform for sharing code _statically_.\nIf the repository is public, anyone can navigate to your Notebook and read the contents.\nHowever, _running_ code is a lot more complicated than just displaying it as GitHub does.\nA lot of interdependent parts are required to run code, such as:\n\n- a copy of the code itself;\n- the appropriate software to execute it;\n- any extra packages the code depends on that aren't shipped as part of the core software;\n- any input data the analysis requires;\n- and you also need some hardware (a computer!) to run it on as well.\n\nOn top of acquiring all those parts, you also have to install them correctly and in such a way that they are not influenced or come into conflict with other software that may be running on your machine.\nIt's a lot of work!\n\nHow much easier would it be if we could **run code in the browser**, similar to how it's displayed?\nThis is what Project Binder aims to achieve.\n\nProject Binder provides a user with the following infrastructure:\n\n- some hardware to execute code, usually a server hosted in the cloud but can be on-premise hardware too;\n- a computational environment containing:\n  - the appropriate software,\n  - any extra package dependencies,\n  - any required input data,\n  - and a copy of the code itself (Notebooks or scripts);\n- a URL to where the environment is running so the code can be interacted with by you or your collaborators.\n\nProject Binder has packaged together all of the moving parts that make it challenging to share computational work into a simple to use interface.\nThere is a **free and public** version of this interface running at [**mybinder.org**](https://mybinder.org).\n\nThe cartoon below, by Juliette Taka, demonstrates one workflow a that scientist using Binder might adopt.\n\n```{figure} ../../figures/binder-comic.*\n---\nname: binder_comic\nalt: > \n  Illustration showing the steps Jane takes to make her computational research reproducible using Jupyter Notebooks and Binder.\n  Step 1: Jane, seated at her computer, writes a paper based on her experiments. She describes her work in a Jupyter Notebook, combining prose, code, visualisations, and additional resources (for example, source code, data, media). She wants others to be able to reproduce, check, and improve her calculations.\n  Step 2: She publishes her notebook and resources to a public repository (for example, GitHub, GitLab, Bitbucket).\n  Step 3: She makes the repository Binder-ready by adding configuration files that describe the software environment needed to run the notebook.\n  Step 4: The globe is surrounded by people accessing the notebook—everyone can now run and reproduce her computations from anywhere.\n---\nFigure credit: [Juliette Taka, Logilab and the OpenDreamKit project](https://opendreamkit.org/2017/11/02/use-case-publishing-reproducible-notebooks/)\n```\n\nYou can find out more about Project Binder and mybinder.org on their [About mybinder.org page](https://mybinder.readthedocs.io/en/latest/about/about.html).\n\n(binder-disam)=\n### Disambiguation\n\nIn this section, there are some related terms, which will be outlined here for clarity:\n\n- **Project Binder**: An open community that makes it possible to create sharable, interactive, reproducible environments.\n  The technological output of this project is a {ref}`rr-binderhub`.\n- **BinderHub**: A cloud-based infrastructure for generating Binders.\n  The most widely-used is [mybinder.org](https://mybinder.org), which is maintained by the Project Binder team.\n  It is built upon a range of open source tools, including [JupyterHub](https://z2jh.jupyter.org), for providing cloud compute resources to users via a browser; and [`repo2docker`](https://repo2docker.readthedocs.io/), for building docker images from projects.\n  Since it is an open project, it is possible to create other BinderHubs which can support more specialised configurations.\n  One such configuration could include authentication to enable private repositories to be shared amongst close collaborators.\n- **A Binder**: A sharable version of a project that can be viewed and interacted within a reproducible computational environment running in the cloud via a web browser.\n  By automating the installation of the computing environment (as discussed in the {ref}`rr-renv` chapter), Project Binder transforms the overhead of sharing such an environment into the act of sharing a URL.\n- **[mybinder.org](https://mybinder.org)**: A public and free BinderHub.\n  Because it is public, you should not use it if your project requires any personal or sensitive information (such as passwords).\n- **Binderize**: The process of making a Binder from a project.\n\n(binder-appropriate)=\n## When is it appropriate to use mybinder.org?\n\nMaintaining a free, anonymous service in the cloud is a lot of voluntary work and costs a lot of money.\nIn order to reduce the running costs somewhat, mybinder.org places computational restrictions on each running Binder instance.\nThese restrictions are:\n\n- 1 CPU, and\n- 1 GB of RAM.\n\nHence, mybinder.org is **not** an appropriate place to perform end-to-end replications of Machine Learning workflows, for example!\n\nAnd this is the primary reason why this chapter on Binder has been placed in the \"Guide for Communication\".\nWith these computational restrictions, mybinder.org lends itself very well to hosting interactive demonstrations and learning resources for software packages or research analyses.\nIn this scenario, the people clicking the Binder link probably want to learn something, and sitting through a time-consuming model-training process likely won't help them achieve that.\nInstead, you could provide pre-trained models or instructions on how to train the models on their own hardware and _come back_ to the Binder for the remainder of the interactive tutorial.\n\nSo, when is it appropriate to use mybinder.org?\n\n- When you want to _communicate_ something in an interactive manner, such as short analyses, tutorials, or even blogs!\n  Check out [Achintya Rao's blog powered by mybinder.org](https://blog.achintyarao.in/about/)!\n- When the code and associated data (if relevant) are publicly available\n- When the code you want to run interactively does not require a lot of resource or specialist resources (for example, GPUs)\n\n(binder-faqs)=\n## FAQs\n\nMany common questions are answered on the [About mybinder.org page](https://mybinder.readthedocs.io/en/latest/about/about.html).\n\n### How do I save my changes back to my repository?\n\nUnfortunately, you can't.\nAt least, not from the command line in a running Binder instance.\n\nWriting back to a hosted repository, whether it be on GitHub or some other platform, will require a credential of some kind to authorise you to write to that repository.\nAnd as has been mentioned, mybinder.org is a completely public service and you should not provide any sensitive information to a running Binder instance under any circumstances.\n\nHowever, mybinder.org does run an add-on called [`jupyter-offlinenotebook`](https://github.com/manics/jupyter-offlinenotebook) which provides a download button to save your notebooks locally, _even if your browser has lost its connection with the cloud infrastructure that is providing the compute!_\nThis means you can save your progress locally, update your repository with your saved notebooks, and relaunch your Binder with the updated notebooks.\n\n```{figure} ../../figures/binder_notebook_banner.*\n---\nname: binder_notebook_banner\nalt: Screenshot of a Jupyter Notebook interface running on mybinder.org. The “Download” button near the top right is highlighted in purple. This button allows users to save their notebook file locally. The notebook is titled “visualise,” and the interface shows standard Jupyter toolbar options, including file operations, kernel selection, and resource usage (147.1 MB / 2 GB). \n---\nUsing this \"Download\" button in a Jupyter Notebook running on mybinder.org will allow you to save your notebooks locally, even after the Binder instance has been disconnected from computational resources.\n```\n\n### How can I collaborate with my peers on mybinder.org?\n\nIt's not impossible, but there's definitely room to develop this feature in comparison to other \"free cloud compute\" services available.\n\nThose who are interested in this, can find out more in [this Discourse post](https://discourse.jupyter.org/t/collaborating-on-one-binder-instance/407) and in the [`jupyterlab-link-share` repository](https://github.com/jtpio/jupyterlab-link-share).\n\n### How is mybinder.org different to Google Colab?\n\nGoogle Colab provides a \"kitchen sink\" computational environment with many of the most popular data science software packages pre-installed.\nIn contrast, mybinder.org builds bespoke images for each repository launched, specifically installing the packages listed in your configuration files.\n\n### Can I connect to `INSERT DATA PROVIDER HERE`?\n\nNetwork connections on mybinder.org are quite limited for security and abuse-prevention purposes.\nThat being said you should be able to connect to an external data provider so long as it satisfies the following two criteria:\n\n- It can be accessed over an HTTP/HTTPS connection\n- You do not need credentials to access the data\n\nRemember, mybinder.org is an entirely public service and under no circumstances should you provide confidential information, such as credentials, to a Binder instance.\n\n(binder-segue)=\n## How to create a Binder-ready project\n\nThe next chapter contains a [Zero-to-Binder tutorial](#z2b) that will guide you through creating your first Binder-ready project on GitHub.\n"
  },
  {
    "path": "book/website/communication/blogs/blogs-personal-stories.md",
    "content": "(cm-blogs-personal-stories)=\n# Personal Stories - Blogs\n\n## Veronika Cheplygina: Writing a Successful Blog Series\n\n**Dr Veronika Cheplygina** is an Associate Professor at the IT University Copenhagen. Veronika strives to make science more open and inclusive.\n\nYou can find out more about her work from the links below:\n* Personal website: [veronikach.com](https://veronikach.com/)\n* X (formerly Twitter): [DrVeronikaCH](https://twitter.com/DrVeronikaCH)\n* ORCID: [0000-0003-0176-9324](https://orcid.org/0000-0003-0176-9324)\n\nWe would like to thank **Dr Veronika Cheplygina** for answering our interview questions about her very successful blog series called ['How I fail'](https://veronikach.com/failure/).\n\n## 1. Why did you start your blog?\n\nVery originally (during university) I wanted to have a blog because I was interested in setting it up, and not actually in writing anything.\nI did try to write some awkward posts, but felt mostly embarrassed about them and ended up deleting them.\nOnly during my PhD/postdoc, I think, I started writing more frequently, mostly updates about my work, exploring productivity tools, and failures.\n\n## 2. How did you get started?\n\nAs described above it was quite gradual, the first blog I set up, I programmed in PHP myself (and it had lots of bugs).\nThen I switched to a free WordPress blog and then installed WordPress on my website.\nAs for writing on the blog, when I did start to write more, I made it a habit to write (for example) once a week, and it became more natural after a while.\nAlso, it became more clear what is really \"my\" topics to write about, or not.\nThe CV of Failures I shared during my postdoc resonated, and that later turned into the How I Fail series.\n\n## 3. What impact do you think your blog is making on your research/project/community?\n\nIt helps people to see stories by other real people, and relate to the issues that are discussed.\n\n## Can I just get you to expand on the impact question? Did your blog lead to more impact in a project, or perhaps got you more noticed to secure a job, or help build a community?\n\nYes, I get noticed because people know me from my Twitter and blog, usually this translates into talk invitations.\nLast year when I announced I was leaving my tenure track, I also had a few suggestions for jobs, which in the end translated into my current (tenured) position.\n\nI am not sure there is an explicit community, but I do feel like I have a supportive community on Twitter.\nIt has also resulted in some great projects, like the Avengers for Better Science workshop, which was funded by the Mozilla Foundation, or the Ten Simple Rules paper about Twitter.\n\nFor the blog, I have a sense of what kind of person reads my blog, even if I have never met them.\nIt's great to see the statistics for previous blog posts, and receive a thank you email or message once in a while.\n\n\n## 4. What tools/software do you use most to produce your blog?\n\nPrimarily WordPress. I use Mailchimp to send out a newsletter (only if there are any new posts) and Canva if I make graphics (but usually I'm too lazy).\nWordPress shares my new posts to Twitter and LinkedIn.\n\n## 5. Do you have any top tips for other people that might be interested in starting a blog?\n\nMake it a habit to post something. Review your posts after a while to see what kind of tags/categories you seem to use more often, and which kind get more responses.\n\n## 6. Do you have any tips on things to avoid?\n\nDon't fall into the \"X step simple formula for bloggers\" which is optimized to create short content with lots of clicks.\nThere are lots of types of \"real\" blogs that do not do this, and which have dedicated readers.\n\n## 7. Where do you see your blog going in the future?\n\nIt's been on the back burner a bit last year, so first of all I would like to get back to writing regularly.\nI'm also thinking about compressing some of the information into a book, for example, but I haven't quite decided on the format yet.\n\n## 8. Is there anything else that you want to share?\n\nIt's like running, it's better to just start and go regularly, instead of waiting until you have professional shoes.\n\n*This interview was conducted by Emma Karoune*\n"
  },
  {
    "path": "book/website/communication/blogs/blogs-webpage.md",
    "content": "(cm-blogs-webpage)=\n# Building a Webpage for Blogs\n\nMaking a website for a blog is easier than you think so don't be put off if you have never made one before.\n\nYou need to consider:\n* **Skill level** - This is important but can be learnt by anyone that regularly uses a computer.\n* **Budget** - there are plenty of free options for websites but you can pay for certain services such as different themes.\n* **Time** - It does take time to initially build the website and get it into the state that you want.\nTherefore, consider using the tool that will be the least time consuming for you to build and maintain.\n\n(cm-blogs-webpage-simple)=\n## Simple Website - Non-Coding Options\n* **Wordpress**\n    * Very popular site to use for blogs.\n    * You can start a blog for free but added functions will cost you.\n    * Simple to set up as built-in easy block-like fashion.\n    * Here's a [link](https://wordpress.com/go/category/content-blogging/) for help.\n    * This is worth a read about [starting a WordPress blog](https://www.podcastinsights.com/start-a-wordpress-blog/).\n* **Google sites**\n    - Not originally set up for blogs but can be adapted for this purpose or used as a project website with blog-type updates.\n    - It's free as part of the free Google Suite.\n    - You can pay for business accounts through Google workspace for more options.\n    - It has an accessible interface much like Google slides that are easy to use and publish as a website.\n    - Find more information at the [Google site help page](https://support.google.com/sites/?hl=en#topic=7184580)\n\nHere is a link to an [article that compares google sites and wordpress](https://superbwebsitebuilders.com/google-sites-vs-wordpress/).\n\nThere are other options out there and you can always pay for someone to build your blog website if you have the resources. \n\nThese options are highlighted as they are very accessible and it's always worth to learn new skills.\n\n(cm-blogs-webpage-advanced)=\n## Advanced Website Building - Programming Needed\n\n* **Github pages**\n    * If you know how to set up a Github repository then this is an accessible way to create a repository and then convert it into web pages.\n    * You can select from various free themes using [Jekyll](https://docs.github.com/en/github/working-with-github-pages/setting-up-a-github-pages-site-with-jekyll).\n    * This is a good resource to learn how to make GitHub pages - [Collaborative Github Docs](https://cassgvp.github.io/github-for-collaborative-documentation/docs/tut/4-2-Make-your-Pages-site.html).\n    * This blog uses Github pages - [The Open Archaeobotanist](https://ekaroune.github.io/The-Open-Archaeobotanist/).\n    * You can use this blog post by Sarah Gibson [to create a blog with Hugo and Github pages](https://sgibson91.github.io/blog/hugo-tutorial/).\n"
  },
  {
    "path": "book/website/communication/blogs.md",
    "content": "(cm-blogs)=\n# Blogs for Research Communication\n\nA blog is a website that contains informal articles, usually with a central theme.\nThis could be an academic topic such as open science or be used to report the progress of a research project.\nBlog posts are the articles on the website and they are typically displayed in reverse chronological order so that the most recent post appears first at the top of the web page.\n\nBlog posts are short, informal pieces of writing.\nThey are meant to be written regularly and can be used to build momentum on a particular issue, event or project.\nIn this way, blog posts suit research projects, particularly open projects and communities, because there can be frequent updates of activities and findings to bring greater attention and therefore transparency to your work.\n\nStarting a blog does take some investment as a web platform needs to be built and the blog needs to be frequently updated with new posts.\nIt is therefore best to share the load of this work with your team in some way or plan to get people from outside of your immediate team to write guest posts.\n\n(cm-wa-comms-blogs-start)=\n## How to Start a Blog\n\n### Themes and Audience\n\nThe first decision to make is to choose the theme and the audience that you want to target.\nThis will determine the readability level and overall style of your blog.\n\n* Examples of themes include interesting research topics, a personal diary blog of your research career, a project blog to keep track of all the different aspects of the project or a community blog to help with building and maintaining the community.\n* Most importantly the theme needs to have plenty of content for you to write about, be interesting to you and also engaging for others.\n\n## Planning for Maintenance\n\nIt's always good to make a plan and try to stick to it.\n\n* You need to plan what posts you could write for your theme for the next six months or a year.\n* This will tell you if your theme is substantial enough for a prolonged period.\n* One post a month is a good starting point as this gives you a manageable amount of time to get material together, progress projects or attend events to write about.\n\n## Building a Website\n\nNext, you need to consider where your blog is going to be.\n\n* If you have never made a website before, it is not as hard as it sounds.\n* There are lots of free and easy options for this but it does depend on your computer skills.\n* You could practice writing blog posts and put them on existing blogging sites (your institution may already have one) before building your own.\n\nWe discuss this in detail in the subchapter {ref}`cm-blogs-webpage`.\n\n## Writing Your First Post\n\nOften starting a piece of writing is the hardest part, and writing your first blog may seem even harder.\nJust try to start writing in any way as a messy first draft can always be edited later.\n\n* The first post could be an introduction to yourself, those involved in the blog or a statement of your intentions for the blog.\n* It might also be good to prepare a few posts for the first release to have a greater impact.\n\n## Advertising Your Blog\n\nGet your blog noticed.\n\n* It's a good idea to tell your target audience about your blog and again each time you release a post.\n* Use mailing lists from key associations linked to your research.\n* Use social media such as X (formerly Twitter) or Facebook.\n* Ask colleagues to retweet or send out emails to advertise your blog.\n\n## Analysing the Impact\n\nSuccess is very much in the eye of the beholder but there are many methods or metrics that you can use to track the success of your blog.\n\n* Google analytics can be used with Google sites or put into Github pages.\nThis gives you information about how many people are accessing your blog and where they are based.\n* There are lots of different metrics that can be tracked.\nHere is a good post that explains [20 metrics every blogger needs to track to measure success](https://www.dreamhost.com/blog/metrics-every-blogger-needs-to-track/).\n\n## Keep Writing and Planning\n\n* Stick to your plan, although be responsive to new opportunities such as guest bloggers.\n* Plan time in your schedule for writing the blog and maintaining the website (see the top tips from our case study).\n"
  },
  {
    "path": "book/website/communication/citable/citable-cff.md",
    "content": "(cm-citable-cff)=\n# Software Citation with CITATION.cff\n\nThe [Citation File Format](https://citation-file-format.github.io) lets you provide citation metadata, for software or datasets, in plaintext files that are easy to read by both humans and machines.\n\n```{figure} ../../../figures/recognition.*\n---\nname: recognition\nwidth: 500px\nalt: >\n  Illustration by Scriberia for The Turing Way, highlighting the role of software citation in increasing recognition for developers.\n  Two groups stand on separate pillars: researchers on a taller grey pillar and developers on a shorter green pillar labelled \"CODE\".\n  Large black arrows labelled \"software citation\" point upward, lifting the developers.\n  Above both groups is the word \"RECOGNITION\" in bold, with a glowing badge and green stars.\n  A green arc connects the two pillars, suggesting a bridge of acknowledgement.\n  Below, three figures sit at desks, representing the broader community.\n---\nResearch software developers get recognition by making software citable. _The Turing Way_ project illustration by Scriberia. Zenodo. [http://doi.org/10.5281/zenodo.3332807](http://doi.org/10.5281/zenodo.3332807)\n```\n\nTo provide this metadata, start by writing a `CITATION.cff` file and include it with your software or dataset.\nA `CITATION.cff` file aggregates the information in a key-value format that can be easily interpreted and updated by humans, and easily parsed and converted with existing tools.\n\n(cm-citable-cff-why)=\n## Why Use `CITATION.cff`?\n\nThere are great advantages when using a `CITATION.cff` file for the citation information for your software!\n\nIt's easier for you:\nWhen you host your software source code on GitHub and have a `CITATION.cff` in your repository, you can use the Zenodo-GitHub integration to automatically publish new releases of the software.\nZenodo will use the information from `CITATION.cff` and show it together with the publication.\nYou don't have to edit this information manually on Zenodo anymore.\n\n```{figure} ../../../figures/software-credit.*\n---\nname: software-credit\nwidth: 500px\nalt: >\n  Illustration by Scriberia for The Turing Way, highlighting the importance of giving software creators credit through the use of `CITATION.cff` files.\n  On the right, a developer sits at a desk, writing code represented by binary and angled brackets.\n  A pink path of code flows toward two people on the left.\n  One person holds a large wallet labelled \"Credits\", while the other kneels and holds a magnifying glass that zooms in on the word \"CFF\" along the code path.\n  A speech bubble above them reads, \"More credits for the software creators!\"\n---\nMore credits for the software creators. _The Turing Way_ project illustration by Scriberia. Zenodo. [http://doi.org/10.5281/zenodo.3332807](http://doi.org/10.5281/zenodo.3332807)\n```\n\nIt's easier for the users of your software:\n\n1. They can directly use the citation information from `CITATION.cff` to cite your software.\n2. If your source code is on GitHub, they will show the citation information in the sidebar as a formatted citation, and also in the BibTeX format.\nUsers can copy either, paste it into their manuscripts, and/or cite your software correctly.\n3. If they use the Zotero reference manager, they can import the citation metadata directly from the `CITATION.cff` file in the GitHub repository to their reference manager.\n\n(cm-citable-cff-how-to-create)=\n## How to Create a `CITATION.cff` File\n\nThe `CITATION.cff` is a `YAML` file with its own schema definition.\nThe schema defines the rules for each field, and which fields are required and which ones are optional.\nThe user must follow these rules in order to create a valid `CITATION.cff` file.\n\nA minimal example of a valid `CITATION.cff` file, that only contains the required keys, would look like this:\n\n```yaml\nauthors:\n  - family-names: Doe\n    given-names: John\ncff-version: 1.2.0\nmessage: \"If you use this software, please cite it using the metadata from this file.\"\ntitle: \"My research software\"\n```\n\nHowever, adding more fields can help you create more descriptive metadata of your software.\nThe example below also provides important information of software such as version, release date, DOI, license, keywords.\n\n```yaml\nabstract: \"This is my awesome research software. It does many things.\"\nauthors:\n  - family-names: Doe\n    given-names: John\n    orcid: \"https://orcid.org/0000-0001-8888-9999\"\ncff-version: 1.2.0\ndate-released: \"2021-10-13\"\nidentifiers:\n  - description: \"This is the collection of archived snapshots of all versions of My Research Software\"\n    type: doi\n    value: 10.5281/zenodo.123456\n  - description: \"This is the archived snapshot of version 0.11.2 of My Research Software\"\n    type: doi\n    value: 10.5281/zenodo.123457\nkeywords:\n  - \"amazing software\"\n  - research\nlicense: Apache-2.0\nmessage: \"If you use this software, please cite it using the metadata from this file.\"\nrepository-code: \"https://github.com/citation-file-format/my-research-software\"\ntitle: \"My Research Software\"\nversion: 0.11.2\n```\n\nThe complete list of fields is described in the [CFF schema guide](https://github.com/citation-file-format/citation-file-format/blob/main/schema-guide.md).\nIn the next section, you can find out which tools can help you create and use the `CITATION.cff` file.\n\n### Steps to Make Your Software Citable\n\nTo make your software citable, you need to follow the two steps below.\n\n#### Step 1. Create a `CITATION.cff` File\n\nThere are two ways of creating a `CITATION.cff` file.\n\n1. Use [cffinit](https://citation-file-format.github.io/cff-initializer-javascript/), a web application which guides you through the process of creating your citation file.\n  The `cffinit` has a few advantages compared to manual editing such as\n\n    - no need for installing extra tools;\n    - no need for manual validation;\n    - guidance for each fields;\n    - visual feedback to indicate issues.\n\n    We suggest using `cffinit` as it simplifies the creation and validation.\n    For more details on using `cffinit` see {ref}`cm-citable-cffinit`.\n2. Edit the file manually in your favorite code editor.\n  The disadvantages of this method are installing the required tools on your system and doing the validation yourself.\n  Also, the error messages of the validation can be relatively long and difficult to understand.\n  Once you have a `CITATION.cff` file, it needs to be validated to make sure there are no issues.\n  You can validate your `CITATION.cff` file on the command line with the [`cffconvert` Python package](https://pypi.org/project/cffconvert/).\n\n    ```shell\n    cd path/to/CITATION.cff\n    cffconvert --validate\n    ```\n\n    If you prefer to use Docker, you can use the [`cffconvert` Docker image](https://hub.docker.com/r/citationcff/cffconvert):\n\n    ```shell\n    cd path/to/CITATION.cff\n    docker run --rm -v ${PWD}:/app citationcff/cffconvert --validate\n    ```\n\n    If you get error messages, look for the relevant validation error and fix it.\n\n```{note}\nTo make sure your GitHub repository always has a valid `CITATION.cff` file, you can use the [cff-validator](https://github.com/marketplace/actions/cff-validator) GitHub Action.\n```\n\n#### Step 2. Add Your `CITATION.cff` to a Public Code Repository\n\nAfter creating a valid `CITATION.cff` file, you will need to add it to root of your code or data repository so that it can be easily found and cited.\n\n(cm-citable-cff-updating)=\n## Updating your `CITATION.cff` file\n\nWhen you need to update your `CITATION.cff` file, for example to add an author or to change the information about releases, you will need to edit the file manually. It is recommended to update your `CITATION.cff` file before making a software release.\n\n(cm-citable-cff-how-to-cite)=\n## How to Cite Using `CITATION.cff`\n\nIf you have found software or datasets that contain a `CITATION.cff`, there are a few ways to obtain the reference information to cite them in your publication.\n\n- You can use one of the tools, such as `cffconvert` command line program, to convert your `CITATION.cff` file to one of the [supported formats](https://github.com/citation-file-format/cff-converter-python#supported-output-formats), such as APA, BibTeX or EndNote.\n- Alternatively, if the software or datasets you want to cite are available on GitHub, you can use GitHub's interface to copy the reference in either APA or BibTeX formats by clicking the \"Cite this repository\" button (see the green area in the image below).\nFor more details on software citation on GitHub please see [GitHub's guide on software citation](https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-citation-files).\n\n```{figure} ../../../figures/github-cff-integration.*\n---\nname: github-cff-integration\nalt: >\n  Screenshot of a GitHub repository showing the automatic citation box generated from a `CITATION.cff` file.\n  On the right, a dropdown labeled \"Cite this repository\" is expanded, displaying citation formats in APA and BibTeX.\n  The APA citation is visible with author names listed, and a button below labeled \"View citation file\".\n  This box appears in the repository sidebar beneath metadata such as license type and tags.\n  The screenshot demonstrates how GitHub displays citation information when a `CITATION.cff` file is included.\n---\n\"Cite this repository\" automatically converts the `CITATION.cff` file to APA's and BibTex's format. The screen capture is from the [Citation File Format repository](https://github.com/citation-file-format/citation-file-format).\n```\n\n```{note}\n\"Cite this repository\" button only appears when there is a `CITATION.cff` file in the repository.\n```\n\n(cm-citable-cff-available-tools)=\n## Available Tools\n\nSeveral tools exist to facilitate the creation and validation of `CITATION.cff` files, as well as the conversion to and from other formats.\nThe Citation File Format’s repository provides [a list of all known tools](https://github.com/citation-file-format/citation-file-format#tools-to-work-with-citationcff-files-wrench) for this.\n"
  },
  {
    "path": "book/website/communication/citable/citable-cffinit.md",
    "content": "(cm-citable-cffinit)=\n# Create a `CITATION.cff` using `cffinit`\n\n`cffinit` is a web application which helps users create a `CITATION.cff` file.\nThe application provides guidance for each field of the [CFF schema](https://github.com/citation-file-format/citation-file-format/blob/main/schema-guide.md) and does the validation automatically.\nWhen there are issues, `cffinit` will provide a visual feedback on relevant fields.\n\nIn the following sections you can find details about each step of the process.\n\nTo get started, visit [`cffinit`](https://citation-file-format.github.io/cff-initializer-javascript/) and click on the \"Create\" button to continue to the **Start** screen.\n\n```{figure} ../../../figures/gifs/cffinit-0.gif\n---\nname: cffinit-0\nwidth: 80%\nalt: Landing page of cffinit.\n---\nLanding page of cffinit. [^cffinitversion]\n```\n\n[^cffinitversion]: All screen captures in this section refer to `cffinit` v2.0.0.\n\n## Start\n\nOn the first page of the application, enter the title of your work, write a message to indicate how you want your software to be mentioned, and select whether you are creating a `CITATION.cff` file for software or a dataset.\n\n```{figure} ../../../figures/gifs/cffinit-1.gif\n---\nname: cffinit-1\nwidth: 80%\nalt: First page of the application, for Title, Message and Type. Fields are empty.\n---\nFirst page of the application, for Title, Message and Type. [^cffinitversion]\n```\n\nYou can see the preview of the generated `CITATION.cff` file on the right.\n\nIf there are issues in any of the fields, they will be highlighted and error messages will be shown in red.\nWhen the generated `CITATION.cff` file is not valid, the preview widget will have a red border.\n\n```{note}\nAs title, message and author are required fields by the schema, these fields will be highlighted until you provide them.\n```\n\nClick next to continue to the **Authors** screen.\n\n```{figure} ../../../figures/gifs/cffinit-1-filled.gif\n---\nname: cffinit-1-filled\nwidth: 80%\nalt: First page of the form, for Title, Message and Type. Fields are filled.\n---\nFirst page of the form, for Title, Message and Type. Fields are filled. [^cffinitversion]\n```\n\n## Authors\n\nThe CFF schema requires at least one author in the `CITATION.cff` file.\nClick the \"Add author\" button to open a form to do so.\nFill the relevant fields for authors.\nAdding ORCID for authors is highly recommended.\nSee {ref}`cm-citable-orcid` to learn more about ORCID.\n\n```{figure} ../../../figures/gifs/cffinit-2.gif\n---\nname: cffinit-2\nwidth: 80%\nalt: Second page of the form, for Authors.\n---\nSecond page of the form, for Authors. [^cffinitversion]\n```\n\n```{figure} ../../../figures/gifs/cffinit-2-add-author.gif\n---\nname: cffinit-2-add-author\nwidth: 80%\nalt: Second page of the form, for Authors. Author addition in progress.\n---\nSecond page of the form, for Authors. Author addition in progress. [^cffinitversion]\n```\n\nAfter adding one author, you have the minimum required information for a valid `CITATION.cff` file.\nAdd more authors as needed.\nClick next afterwards to continue.\n\n```{figure} ../../../figures/gifs/cffinit-2-filled.gif\n---\nname: cffinit-2-filled\nwidth: 80%\nalt: Second page of the form, for Authors. One author filled.\n---\nSecond page of the form, for Authors. One author filled. [^cffinitversion]\n```\n\n## Minimal `CITATION.cff` file\n\nWell done!\nNow your `CITATION.cff` file meets the minimum requirements.\nIn this screen you can download the generated file or copy it from the preview widget.\nWe highly recommend that you add more information.\nClick the \"Add more\" button to add more fields to your citation file to make it even better.\n\n```{figure} ../../../figures/gifs/cffinit-3.gif\n---\nname: cffinit-3\nwidth: 80%\nalt: Last page of the minimal form.\n---\nLast page of the minimal form. [^cffinitversion]\n```\n\n## Additional fields\n\nAll additional fields are optional, but it is recommended that you fill the most relevant for your work.\n\n```{note}\nIf you decide not to continue further, you can press the \"Finish\" button to skip all remaining steps and go to the final screen.\n```\n\nOn this screen, you will see new steps in the stepper.\nHere is a brief description of the additional screens:\n- Identifiers: Add DOIs, URLs, and Software Heritage identifiers;\n- Related resources: URLs of repositories related to the work and its website;\n- Abstract: A short summary of the work;\n- Keywords: Keywords describing the work;\n- License: The license under which the work is available;\n- Version specific: Information about a specific release or commit, including the date of the release.\n\n```{figure} ../../../figures/gifs/cffinit-3-advanced.gif\n---\nname: cffinit-3-advanced\nwidth: 80%\nalt: Third page of the form. More options appear on the left.\n---\nThird page of the form. More options appear on the left. [^cffinitversion]\n```\n\nClick next to start adding additional fields.\n\n## Final screen\n\nGreat that you made it to the final screen!\nAfter adding all the relevant information, you will have a validated `CITATION.cff` file.\nDownload or copy it and add it to your public repository to get the credit you deserve!\n\n```{figure} ../../../figures/gifs/cffinit-final.gif\n---\nname: cffinit-final\nwidth: 80%\nalt: Last page of the complete form.\n---\nLast page of the complete form. [^cffinitversion]\n```\n"
  },
  {
    "path": "book/website/communication/citable/citable-cite.md",
    "content": "(cm-citable-cite)=\n# Citing your own Research Objects\n\nWhen citing your own research objects, it is important to consider the type of research object you are referring to. \nHere, we provide explanations for citing data, physical samples, and software.\n\n(cm-citable-cite-data)=\n## Citing Data\nWhen sharing a dataset, use the assigned DOI (from the [data repository](#rr-rdm-repository)) and add this to your data availability statement at the end of the paper (similar to the acknowledgement section). \nIt is important to also cite your dataset in the references themselves, as only the citations in the reference section will contribute to citation counts.\nData citation is important because it facilitates access, transparency and potentially reproducibility, reuse, and credit for researchers, and might be required when data is shared under a license that requires citation (for example, CC-BY). \nFor more information check the chapter about [](#rr-licensing).\n\nData citation also provides recognition and visibility for the repositories that share data.\n\nYou can find examples of these statements in the publishers' (research data) author policies.\n\n### Data availability statement examples:\n\n**Using the Digital Object Identifier (DOI):**\n- “The data that support the findings of this study are openly available in [repository name] at `http://doi.org/[doi]`.”\n\n**If no DOI is issued:**\n- “The data that support the findings of this study are openly available in [repository name] at [URL], reference number [reference number].”\n\n**When there is an embargo period you can reserve your DOI and still include a reference to the dataset in your paper:**\n- “The data that support the findings will be available in [repository name] at [URL / DOI] following a [6 month] embargo from the date of publication to allow for the commercialisation of research findings.”\n\n**When data cannot be made available:**\n- “Restrictions apply to the data that support the findings of this study.\n[Explain nature of restrictions, for example, if the data contains information that could compromise the privacy of research participants] Data are available upon reasonable request by contacting [name and contact details] and with permission of [third party name].”\n-  “The data that support the findings of this study are available upon request.\nAccess conditions and procedures can be found at [URL to restricted access repository such as [EASY](https://easy.dans.knaw.nl/ui/home).]”\n\n**When code is shared:**\n- \"Data and code to reproduce the results shown in the paper can be obtained from The Turing Way on Zenodo ([https://zenodo.org/doi/10.5281/zenodo.3233853](https://zenodo.org/doi/10.5281/zenodo.3233853)), GitHub ([https://github.com/the-turing-way/the-turing-way](https://github.com/the-turing-way/the-turing-way)) and shared on the Software Heritage archive [swh:1:dir:ae7bd89ad9c35186ddd8f6869fbceebe32d382b2;origin=https://github.com/the-turing-way/the-turing-way;visit=swh:1:snp:6827073ea24f18029902d0efbf49dc3f09df3d17;anchor=swh:1:rev:c9da9af36e98ad59f231f252ccc8e12676c9492a](https://archive.softwareheritage.org/swh:1:dir:ae7bd89ad9c35186ddd8f6869fbceebe32d382b2;origin=https://github.com/the-turing-way/the-turing-way;visit=swh:1:snp:6827073ea24f18029902d0efbf49dc3f09df3d17;anchor=swh:1:rev:c9da9af36e98ad59f231f252ccc8e12676c9492a) for long term preservation and findability.\n- \nWe used R version 4.2.2 (*use citation() to check the suggested citation*) and the following R packages: ggplot2 ([Wickham 2016](https://cran.r-project.org/web/packages/ggplot2/citation.html)), another example (*and citation added to the references!*).\" \n\n**More Data Availability Statement examples:**\n\nYou can find more examples on the [Manchester's Data Access Statements page](https://www.library.manchester.ac.uk/services/research/research-data-management/sharing/data-access-statements/), the [AMS Data Availability Statement examples](https://www.ametsoc.org/index.cfm/ams/publications/author-information/formatting-and-manuscript-components/data-availability-statement-examples/), or [Nature's Tips for writing a dazzling Data Availability Statement](https://researchdata.springernature.com/posts/tips-for-writing-a-dazzling-das-data-availability-statement).\n\n(cm-citable-cite-samples)=\n## Citing Physical Samples\n\nWhen sharing results related to physical samples (such as archaeological material, genomics samples), ideally a persistent identifier is assigned to track the samples and their associated data. \nAs with [data citation](#cm-citable-cite-data), you include a citation in the references and a more detailed explanation in the data availability statement. \nTo learn more about how to cite physical samples and to check out examples, see the [Scientific Author Guide for Publishing Open Research Using Physical Samples](https://doi.org/10.6084/m9.figshare.24669057.v1) by {cite:ps}`Damerow2024physical`.\n\n(cm-citable-cite-software)=\n## Citing Software\n\nA software citation has a lot of the same elements as a data citation, described above, and are described in more detail in the [Software Citation Principles](https://www.force11.org/software-citation-principles).\nDepending on the journal, you may also include a Software/Code Availability Statement. In such section, you can describe where the code developed during the research presented in the paper can be found, similar to how you would provide information about data availability.\nFor an example you can look at the [Data and Code Availability Statements - Sample text](https://social-science-data-editors.github.io/guidance/Requested_information_dcas.html) or [Availability Statement Templates](https://www.agu.org/publish-with-agu/publish/author-resources/data-and-software-for-authors).\n\n::::{tab-set}\n:::{tab-item} GitHub\n:sync: github_tab\nTo make your code citable, you can use the integration between [Zenodo](https://zenodo.org/) and GitHub.\n\n- Create a file to tell people how to cite your software. Use this [handy guide](https://citation-file-format.github.io/cff-initializer-javascript/) to format the file.\n- Link your GitHub account with a Zenodo account. This guide explains [how](https://guides.github.com/activities/citable-code/).\n- You can tell Zenodo what information or metadata you want to include with your software by converting your `CITATION.cff` file to `zenodo.json`.\n\n    ```bash\n    pip install cffconvert\n    cffconvert --validate\n    cffconvert --format zenodo --outfile .zenodo.json\n    ```\n\n- Add `.zenodo.json` to your repository.\n- On Zenodo, flip the switch to the 'on' position for the GitHub repository you want to release.\n- On GitHub, click the *Create a new release* button.\nZenodo should automatically be notified and should make a snapshot copy of the current state of your repository (just one branch, without any history), and should also assign a persistent identifier (DOI) to that snapshot.\n- Use the DOI in any citations of your software and tell any collaborators and users to do the same!\n\n:::\n:::{tab-item} GitLab\n:sync: gitlab_tab\n\n\n\nTo make your code citable, through an automated publication of your Gitlab repository to [Zenodo](https://zenodo.org/):\n\n- Create a file to tell people how to cite your software. Use this [handy guide](https://citation-file-format.github.io/cff-initializer-javascript/) to format the file.\n- Convert your `CITATION.cff` file to `.zenodo.json`.\nThis file tells Zenodo what information or metadata you want to include with your software.\n\n    ```bash\n    pip install cffconvert\n    cffconvert --validate\n    cffconvert --format zenodo --outfile .zenodo.json \n    ```\n\n- Add `.zenodo.json` to your repository.\n- Use the [gitlab2zenodo](https://gitlab.com/sbeniamine/gitlab2zenodo) package to publish a snapshot of your repository to your Zenodo instance.\nBy following the installation and setup instructions of this package, you will get a workflow on your [CI](#rr-ci-options) that will take care of the publication to Zenodo.\n- Use the DOI in any citations of your software and tell any collaborators and users to do the same!\n\n```{note}\nIf you don't have a Zenodo record for your software yet when you attempt to publish it for the first time, you may encounter an error due to the undefined `ID`. \nTo address this issue, we recommend manually creating a record on Zenodo and updating the value of the {ref}`CI <rr-ci-options>` variable `zenodo_record`. \nDetailed instructions for this process can be found in the [gitlab2zenodo](https://gitlab.com/sbeniamine/gitlab2zenodo) installation and setup instruction.\n```\n\n:::\n::::\n\n(cm-citable-cite-DMP)=\n\n## Citing Data Management Plans\n\nYou can deposit your DMP in a repository like Zenodo or your institutional repository to receive a DOI, or use a DMP platform that assigns DOI, making it formally citable.\nConsider publishing your DMP at project award or start to establish your data management approach early.\n\nWhen preparing a public DMP, you may want to redact sensitive information such as detailed budget figures or preliminary hypotheses, while keeping the data management methodology transparent.\nPublishing your DMP demonstrates transparency, provides templates for others planning similar projects, and shows funders and institutions your commitment to rigorous data management.\n\nFor more information on obtaining DOIs and making research outputs citable, see our [chapter on persistent identifiers](#rr-rdm-pid) and [making research citable](#cm-citable).\nExamples of published DMPs can be found by searching Zenodo for \"data management plan\" or exploring public DMPs on [DMPtool](https://dmptool.org).\n"
  },
  {
    "path": "book/website/communication/citable/citable-linking.md",
    "content": "(cm-citable-linking)=\n\n# Linking Research Objects\n\nLinking your data, code and article will ensure that you receive **credit** for your work and it will increase the visibility of your research outputs.\nThere are several different ways to do this.\nYou can decide to:\n\n1) Open up your Research Object publicly, at the same time as, for example, the **preprint** of your article, or\n\n2) Keep the Research Object closed until the article is published.\n\n(cm-citable-linking-open)=\n## 1. Open the Research Objects\n\nThe easiest way to connect your dataset to your publication is to publish the dataset first (for example, at the same time as the **preprint**).\nThis will provide you with the correct information for your **Data Availability Statement** and your references (see {ref}`Citing Data<cm-citable-cite-data>`), and will allow reviewers to include the dataset in their review.\nIf any adjustments are needed based on the review process you can often upload a new version of the dataset (see for example [Zenodo](https://zenodo.org/), [Figshare](https://figshare.com/), [4TU.ResearchData](https://data.4tu.nl/)). This will provide you with a new DOI for the latest version, and some repositories (such as Zenodo) allow you to have a canonical DOI that will always point to the latest version of the dataset). See {ref}`cm-citable-steps-doi` for more information about DOIs. \nRemember that the contributors and date of deposition are publicly available, making it unlikely that others will 'scoop' you.\nBut if you are hesitant about opening up your dataset before the article is published, you can either publish the dataset under restricted access, under embargo, or reserve a DOI in advance and publish the Research Object later.\n\n(cm-citable-linking-closed)=\n## 2. Keep the Research Objects closed\n\n### Publish the Research Objects under restricted access\n\nPublishing your data under restricted access means that the data is uploaded to the repository, but you're only providing access to individuals that request access or you can provide access through sharing a private link.\n\n* You decide with whom to share the private link and whether individuals that request access will obtain access.\n    * You can share the data with reviewers.\n* Your metadata (information about the data) is publicly available.\n* You can provide the correct DOI in the paper's **Data Availability Statement** and in the reference list (see {ref}`Citing Data<cm-citable-cite-data>`).\n* After your article is published:\n    * Add the DOI of the publication to the dataset;\n    * Change the access permission rights to public (see for example [Zenodo](https://zenodo.org/)).\n\n### Publish the Research Objects under embargo\n\nAn embargo means that you have already uploaded the data to the repository, but are not providing access to the data until a certain date.\n\n* No one has access to your data until the embargo period has expired (you can define this period), or until you changed the access permissions yourself.\n    * You cannot share the data with reviewers.\n* Your metadata (information about the data) is publicly available.\n* You can provide the correct DOI in the paper's **Data Availability Statement** and in the reference list (see {ref}`Citing Data<cm-citable-cite-data>`).\n* After your article is published:\n    * Add the DOI of the publication to the dataset;\n    * Change the access permission rights if the embargo has not yet expired (see for example [Zenodo](https://zenodo.org/)).\n\n(cm-citable-linking-reserve-doi)=\n### Reserve a DOI and publish later\n\nSeveral data repositories, such as [Zenodo](https://zenodo.org/) and [Figshare](https://figshare.com/), allow you to reserve a DOI.\nReserving a DOI means you are not required to upload your data yet, but you will need to provide some metadata (title, author/contributors) to complete the DOI reservation. The reserved DOI will be in use after you actually uploaded the data and decide to publish the data.\n\n* No one has access to your data or the metadata yet, because the landing page of your dataset is not working yet.\n    * Your data is not available to reviewers.\n* You can provide the correct DOI in the paper's **Data Availability Statement** and in the reference list (see {ref}`Citing Data<cm-citable-cite-data>`).\n* After your article is published:\n    * Upload the dataset to your reserved DOI;\n    * Add the DOI of the publication to the dataset;\n    * Publish your dataset.\n\n# Check the data DOI in your publication\n\nWhichever route you decide to take, it is important to double-check the proof of your article.\nThe DOI for your dataset should be correctly listed in the **Data Availability Statement** and in the reference list.\nFor more information see {ref}`Citing Data<cm-citable-cite-data>`.\n\n\n\n## More resources:\n\n* [How to disclose data for double-blind review and make it archived open data upon acceptance](https://ineed.coffee/5205/how-to-disclose-data-for-double-blind-review-and-make-it-archived-open-data-upon-acceptance/)\n* [Anonymous data sharing using the Open Science Framework](https://help.osf.io/hc/en-us/articles/360019930333-Create-a-View-only-Link-for-a-Project)\n* [Anonymous GitHub](https://anonymous.4open.science/)\n"
  },
  {
    "path": "book/website/communication/citable/citable-metadata.md",
    "content": "(cm-citable-metadata)=\n\n# Connection Metadata: Creating Rich Linkages\n\nThe strategies above describe when and how to publish research outputs, but there's another crucial aspect: connection metadata.\nThis is structured, machine-readable information that formally links your research outputs together through their persistent identifiers.\n\nWhen you \"add the DOI of the publication to the dataset\" (see {ref}`Reserve DOI<cm-citable-linking-reserve-doi>`), you're creating connection metadata.\nBut where exactly does this information go, and how do you create these links?\nThis section provides practical guidance on using connection metadata to build a connected scholarly record.\n\nFor background on persistent identifiers and the infrastructure that makes these connections possible, see [](#rr-rdm-pid).\n\n## Why Link Through Metadata?\n\nYou might wonder: isn't it enough to mention the DOI in the paper text or README file?\nWhile that's helpful, formal metadata links provide additional benefits:\n\n- **Machine-readable**: Automated systems can discover all outputs related to a paper or dataset\n- **Bidirectional**: Both resources show the connection, not just one\n- **Typed relationships**: The metadata specifies what kind of relationship exists\n- **Aggregatable**: Citation databases and metrics systems can trace the full impact\n- **Discoverable**: Finding one output helps users discover all related outputs\n\n(cm-citable-linking-related)=\n## Linking Research Outputs\n\nWhen you have multiple related research outputs (a dataset, the code that analyzes it, the paper that describes it), you can formally link them in the PID metadata, for example, in DataCite metadata schema, this information is captured in the **relatedIdentifier** field.\n\n### Types of Relationships\n\nPID metadata schema uses standardized **relationship types** to describe how resources relate to each other.\nExamples from the DataCite schema include:\n\n| Relationship Types | Use Case | Example |\n|-------------------|----------|---------|\n| IsSupplementTo / IsSupplementedBy | When one output supplements another | A dataset *IsSupplementTo* the paper that describes it |\n| IsDerivedFrom / IsSourceOf | When one output is derived from another | A cleaned dataset *IsDerivedFrom* the raw data |\n| Cites / IsCitedBy | Formal citation relationships | A paper *Cites* a methodology it uses |\n| IsPartOf / HasPart | When outputs are components of a larger whole | Individual datasets *IsPartOf* a data collection |\n| References / IsReferencedBy | General references | Documentation *References* a protocol |\n| IsVersionOf / HasVersion | Connections between versions | A is a version of B |\n| IsNewVersionOf / IsPreviousVersionOf | Specific version succession | Version 2 *IsNewVersionOf* version 1 |\n| Compiles / IsCompiledBy | When code or workflows produce outputs | An analysis script *Compiles* a figure |\n\nFor a complete list, see [DataCite's relatedIdentifier documentation](https://support.datacite.org/docs/datacite-metadata-schema-v44-recommended-and-optional-properties#102-relatedidentifier).\n\n### How to Add Related Identifiers\n\nThe specific process depends on which repository you're using, but the general approach is similar:\n\n#### During initial deposit:\n1. When uploading your research output, look for fields like:\n   - \"Related identifiers\"\n   - \"Related works\"\n   - \"Linked resources\"\n   - \"Relations\"\n2. Add the DOI of the related resource\n3. Select the appropriate relationship type from a dropdown menu\n4. Specify the direction if needed\n\n#### After initial deposit:\n1. Contact the repository's support team or use the metadata update form\n2. Provide the DOI of your resource and the related DOI\n3. Specify the relationship type\n4. The repository will update the metadata\n\n### Repository-Specific Examples\n\n::::{tab-set}\n:::{tab-item} Zenodo\n:sync: tab1\n- When creating or editing a record, scroll to \"Related identifiers/works\"\n- Click \"Add related identifier\"\n- Enter the identifier (DOI, arXiv ID, and so on)\n- Choose relationship type from dropdown\n- Choose resource type of the related item\n- The interface shows both sides (for example, \"this dataset *is supplement to* that publication\")\n:::\n:::{tab-item} Figshare\n:sync: tab2\n- In the item editor, find the \"Links\" or \"Related items\" section\n- Add the DOI of related resources\n- Select relationship type\n- Figshare may have limited relationship type options compared to full DataCite schema\n:::\n:::{tab-item} OSF\n:sync: tab3\n- In a project or component, use the \"Links\" widget\n- Add external links including DOIs\n- Describe the relationship in the link description\n- OSF's native connections between project components are automatic\n:::\n:::{tab-item} Dryad\n:sync: tab4\n- During submission, there's a \"Related Works\" section\n- Add manuscript DOIs automatically if submitting through journal integration\n- Add additional related resources manually with relationship types\n:::\n::::\n\n**For institutional repositories:**\n- Check your repository's documentation or contact repository staff\n- They can add related identifier metadata even if there's no self-service option\n\n### Best Practices for Linking Outputs\n\n- **Link early**: Add relationships when you first deposit outputs, or update metadata as soon as related outputs are published\n- **Link bidirectionally**: If a dataset supplements a paper, add the link from both sides if possible\n- **Be specific**: Use the most precise relationship type (IsSupplementTo is more specific than References)\n- **Link comprehensively**: Connect all related outputs (data, code, paper, protocols, presentations)\n- **Update when publishing**: If you reserved a DOI for a paper, update data/code metadata once the paper has its final DOI\n\n### Example: Connecting a Complete Research Project\n\nThe Implementing FAIR Workflows project is registered with a project ID (https://doi.org/10.60581/zaev-6p15), which links to the ORCIDs of the project team members, the ROR ID of partner organizations, and the outputs of the project - such as registeration, datasets, software, reports - are openly shared with DOI.\nDataCite Commons, the DOI metadata discovery portal aggregates the metadata of all project related resources and present a full overview: https://commons.datacite.org/doi.org/10.60581/zaev-6p15\n\n\n\n(cm-citable-linking-funding)=\n## Connecting Research to Funding\n\nResearch outputs can be formally linked to the grants that funded them through **fundingReference** metadata.\nThis creates a traceable connection from funding organizations through researchers to the resulting outputs.\n\n### Why Cite Funding?\n\nYou might already acknowledge funding in your papers, but structured funding metadata provides additional benefits:\n\n- **Funder reporting**: Automated systems can discover all outputs from a grant\n- **Impact tracking**: Funders can measure return on investment\n- **Transparency**: The public can see how research funds are used\n- **Credit**: Proper attribution for funding sources\n- **Discovery**: Others researching similar topics can find related funded work\n\n### Acknowledgment vs. Citation\n\nThere's an important distinction:\n\n#### Acknowledgment (text-based):\n- Written in the acknowledgments section of a paper\n- Example: \"This work was supported by grant ABC-123 from the Example Foundation\"\n- Not machine-readable\n- Not standardized\n- Often inconsistent across outputs from the same grant\n\n#### Citation (structured metadata):\n- Included in the PID metadata using fundingReference fields\n- Machine-readable and standardized\n- Searchable and aggregatable\n- Links to persistent identifiers for the funder and potentially the grant\n\nBoth are valuable, but citation through metadata enables much more powerful tracking and discovery.\n\n### Components of Funding Metadata\n\nComplete funding metadata includes:\n\n**Funder Information:**\n- **Funder Name**: The organization providing funding\n- **Funder Identifier**: A persistent identifier for the funder (usually from Crossref Funder Registry)\n  - Example: National Science Foundation = `https://doi.org/10.13039/00000001`\n  - Example: Wellcome Trust = `https://doi.org/10.13039/00000035`\n\n**Grant Information:**\n- **Award Number**: The specific grant identifier\n  - Example: \"NE/X012345/1\" or \"R01-GM12345\"\n- **Award Title**: The title of the funded project (optional but helpful)\n- **Award URI**: A persistent identifier for the grant itself, if available\n\n### How to Add Funding Information\n\n**During deposit:**\n1. Most repositories have a \"Funding\" section in their upload forms\n2. Start typing the funder name - many repositories auto-complete from the Funder Registry\n3. Add the grant/award number\n4. Add grant title if there's a field for it\n5. Repeat for additional funders (many projects have multiple funding sources)\n\n**After deposit:**\n1. Contact the repository to update metadata\n2. Provide complete funding information:\n   - Funder name (and Funder ID if you know it)\n   - Grant number\n   - Grant title\n\n**Repository-specific guidance:**\n\n::::{tab-set}\n:::{tab-item} Zenodo\n:sync: tab1\n- \"Funding\" section during upload\n- Type-ahead search of Funder Registry\n- Add multiple funders\n- Fields for grant number and details\n:::\n:::{tab-item} Figshare\n:sync: tab2\n- \"Funding\" field in metadata editor\n- Free text, but try to match official grant information\n:::\n:::{tab-item} Dryad\n:sync: tab3\n- \"Funding information\" during submission\n- Connected to journal submission data when available\n:::\n:::{tab-item} OSF\n:sync: tab4\n- Not currently supported in core OSF metadata\n- Can include in project description/wiki\n- Supported in some OSF-integrated services\n:::\n::::\n\n### Best Practices for Funding Citation\n\n- **Add funding to all outputs**: Not just papers - include in data, code, protocols, and other outputs\n- **Use official grant numbers**: Match the funder's format exactly\n- **Include all funders**: If multiple organizations contributed, cite them all\n- **Add early**: Include funding information when you first deposit outputs\n- **Be consistent**: Use the same grant number format across all outputs from that grant\n- **Check with your funder**: Some funders have specific requirements for how grants should be cited\n\n### Example Funding Metadata\n\nA dataset might include:\n```\nFunder: UK Research and Innovation\nFunder Identifier: https://ror.org/001aqnf71\nAward Number: MR/V012345/1\nAward Title: Understanding Climate Change Impacts on Grassland Ecosystems\n\nFunder: Natural Environment Research Council\nFunder Identifier: https://ror.org/02b5d8509\nAward Number: NE/X067891/1\n```\n\n:::{note}\nA project might list both the parent organization (UKRI) and the specific council (NERC) if both provided funding or if the specific council should be credited.\n:::\n\n(cm-citable-linking-people)=\n## People and Organizations in Metadata\n\nJust as research outputs have persistent identifiers, so do people and organizations.\nIncluding these identifiers in your research output metadata creates a rich network of connections.\n\n### ORCID: Persistent Identifiers for Researchers\n\n{abbr}`ORCID (Open Researcher and Contributor ID)` provides unique identifiers for researchers that distinguish them from everyone else, even people with identical names.\n\nFor comprehensive guidance on ORCID, see our {ref}`dedicated ORCID chapter<cm-citable-orcid>`.\n\n**Key points for connection metadata:**\n- Include your ORCID when depositing research outputs\n- Add ORCIDs for all co-authors when possible\n- The ORCID connects all your outputs across different repositories and publications\n- Your ORCID profile can automatically collect works that cite your ORCID\n\n**Format:** ORCIDs are 16-digit numbers formatted as `0000-0001-2345-6789`\nAs URLs: `https://orcid.org/0000-0001-2345-6789`\n\n### ROR: Persistent Identifiers for Organizations\n\n{abbr}`ROR (Research Organization Registry)` provides unique identifiers for research institutions.\n\n**Uses in metadata:**\n- Author/creator affiliations\n- Contributor affiliations\n- Institution hosting the research\n- Partner organizations in collaborations\n\n**Format:** ROR IDs are URLs like `https://ror.org/013meh722` (University of Cambridge)\n\n**How to add:**\n- Some repositories support ROR ID fields for affiliations\n- When creating or editing records, look for organization/affiliation fields\n- Search the [ROR Registry](https://ror.org) to find your institution's ID\n\n### Benefits of Including People and Organization Identifiers\n\n**For researchers:**\n- All your work is connected, regardless of name changes or institutional moves\n- Easier to prove your contributions for promotion, tenure, or grant applications\n- Automatic collection of citations and reuse\n- Proper disambiguation from others with similar names\n\n**For institutions:**\n- Track all research outputs from the institution\n- Demonstrate research impact and productivity\n- Support reporting requirements\n- Identify collaboration networks\n\n**For the research community:**\n- Discover all work by a researcher or institution\n- Understand collaboration patterns\n- Track research mobility\n- Measure impacts more accurately\n\n### Building a Fully Connected Scholarly Record\n\nWhen you combine all these types of connection metadata, you create a rich, queryable network:\n\nA **dataset** (DataCite DOI) can be connected to:\n- The **researchers** who created it (ORCIDs)\n- Their **institutions** (ROR IDs)\n- The **grants** that funded it (Funder IDs + award numbers)\n- The **paper** describing it (Crossref DOI)\n- The **code** that analyzes it (DataCite DOI)\n- The **protocol** used to collect it (DataCite DOI)\n- **Previous and new versions** of itself (version relationships)\n\nThis interconnected graph enables:\n- Comprehensive discovery (find all related materials)\n- Complete attribution (credit all contributors)\n- Impact measurement (trace outputs from funding to reuse)\n- Reproducibility (access all components needed)\n- Trust (transparent provenance and connections)\n\nFor more on the infrastructure enabling these connections, see [](#rr-rdm-pid).\n"
  },
  {
    "path": "book/website/communication/citable/citable-orcid.md",
    "content": "(cm-citable-orcid)=\n# ORCID to Collect your Research Objects\n\nYou can use ORCID to access or sign up to services that utilise ORCID, for example, publisher requirements, funding management portals ([ResearchFish](https://researchfish.com/)), the [CRIS (current research information system)](https://en.wikipedia.org/wiki/Current_research_information_system) at your institute and data repository like [Zenodo](https://zenodo.org).\n\nORCID is an acronym for ‘Open Researcher and Contributor ID'.\nORCID is a long-lasting unique identifier for you as a researcher, comparable to a personal identification number that your government may issue to you.\nORCIDs are 16-digit numbers formatted as `0000-0001-2345-6789`. they can also be presented as URLs: `https://orcid.org/0000-0001-2345-6789`\n\nWatch this short video for more information:\n\n::: {iframe} https://player.vimeo.com/video/97150912\n:width: 100%\n:::\n\n\n(cm-citable-orcid-why)=\n## Why You Should Get an ORCID\n\nORCID allows you to provide a unique identity for your body of work independent of your name.\nIt enables you to collect and others to find all your research work and related outputs so they can use and cite them.\n\nAll your research objects with different DOIs will remain linked to your unique identifier even if you change your name or your institute.\nThis way, you only have to enter the information once.\n\nYou can use ORCID to access or sign up to services that utilise ORCID, for example, publisher requirements, funding management portals ([ResearchFish](https://researchfish.com/)), the [CRIS (current research information system)](https://en.wikipedia.org/wiki/Current_research_information_system) at your institute and data repository like [Zenodo](https://zenodo.org).\n\nYou can use your ORCID to your CV/resume so that anyone can have a look at all your research outputs.\nYou can also use your ORCID profile to create a CV using [ROpenSci package rorcid](rorcid: https://github.com/ropensci/rorcid) as described [here](https://discuss.ropensci.org/t/using-rorcid-to-generate-a-website-cv/1806).\n\n```{figure} ../../../figures/orcid-ids.*\n---\nname: orcid-ids2\nalt: A researcher surrounded by a ring formed of all her different outputs, linked by an ORCID. Text reads \"ORCID IDs\" and \"One Ring to Rule All Outputs.\"\n---\nORCID IDs link all your research outputs together.\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n(cm-citable-orcid-use)=\n## Using ORCID\n\nYou can sign up very quickly here: [https://orcid.org/login](https://orcid.org/login).\nOnce you have signed up and verified your email address you can start adding in your outputs by importing them through [trusted organisations](https://support.orcid.org/hc/en-us/articles/360006973893) and [search and link wizards](https://support.orcid.org/hc/en-us/articles/360006973653-Add-works-by-direct-import-from-other-systems)\n\nYou can use your ORCID ID whenever you’re prompted to do so, give your [trusted organisations](https://support.orcid.org/hc/en-us/articles/360006973893) (funders, publishers, institutions) permission to automatically update your ORCID record.\n\n"
  },
  {
    "path": "book/website/communication/citable/citable-otherscite.md",
    "content": "(cm-citable-otherscite)=\n# Citing other people's Research Objects\n\nWhen citing research objects from other people/researchers, ensure you verify when, where, and how to properly cite those research objects.\nBelow, we provide a brief explanation for each of these three scenarios.\n\n(cm-citable-otherscite-when)=\n## When to cite a research object?\n\nAs a rule-of-thumb, every research object that plays a significant role in your research project should be cited in the publication or methodology paper. \nFor example, when using software to analyse your research data, it is vital to cite and attribute it properly.\nIn some cases, the contribution of a research object may be small but critical to your results.\nYou should always consider giving credit to others for their work, showing gratitude to them, and try to implement more repeatable science {cite:ps}`LaZerte2021`\n\nIf you are unsure about what to cite because you doubt the contribution of a particular research object to your research, you can answer the following questions from {cite:ps}`ShouldICite`\n- Does the software ask you to cite it?\n- Did the software play a critical part in, or contributed something unique to, your research?\n- Did the software manipulate or create your data? \nThis includes storage, visualisation, and communication of your data and results.\n- Do the authors of the software rely on academic credit for funding? \nLook for academic institutions in email addresses, URLs.\n\nIf the answer to any of these questions is yes, then you need to cite that research object.\n\n(cm-citable-otherscite-where)=\n## Where to cite a research object?\n\nYou should directly cite research objects from others in the publication where relevant.\nFor example, if specific software was used to process data, it should be cited in the section describing the processing. \nSimilarly, if all the figures in a publication are created using the same software, it may be more useful to mention and cite that software in the main text or acknowledgements. \nAnother example is when videos or images from others are explicitly mentioned; this as an opportunity to cite those research objects. \nIn all cases, these research objects should commonly be included in the reference section.\n\nThe best practice is to pair citations in the reference section with in-text citations {cite:ps}`Stall2023`.\nThis approach avoids mentioning datasets or software in footnotes or only in supplementary materials, where clear citations may not be provided.\nIn cases where a research object was used as a test or pilot but did not play a role in the final publication, it is possible to mention these in the acknowledgements section.\nThis ensures proper credit is given, even if the object was not ultimately used.\n\n\n(cm-citable-otherscite-how)=\n## How to cite a research object?\n\nIdeally, other people's research objects would have a persistent identifier to make citation easier to others.\nIn some cases, published research objects may include a statement on how to cite their research objects. \nA common practise of citing other people's work (such as publications) is also valid for citing other research objects (such as data, software, images, presentations, workflows).\nA citation includes the following information:\n- Author(s)\n- Title\n- Year/Date of publication\n- Publisher or Repository (in repositories you can describe the type of research object, for example, Dataset, Software, Presentation)\n- Version (if indicated)\n- Access information (a URL or DOI)\n\nLike a regular citation, citing a research object is done in a specific citation style. \nA citation style is a specific arrangement, order and formatting of information necessary for a citation.\nFor instance, the MLA style was developed by Modern Language Association (originally used in the humanities) and the APA style was developed by American Psychological Association (originally used in psychology and the social sciences). \nA specific citation style may also be requested by the journal you are publishing in.\n- MLA citation style uses the following format:\n`Author. \"Title of the Source.\" Title of the Container, Other contributors, Version, Number, Publisher, Publication date, Location.`\n- APA citation style uses the following format:\n`Author. (Year). Title of data set (Version number). [Retrieved from] ***OR*** [DOI]`\n\nThere are many citation styles available (see [Scribbr Citation Styles Guide](https://www.scribbr.com/citing-sources/citation-styles/)), and fortunately, there are several web interfaces to generate those citations. \nIf you have the DOI of the research object, you can use tools like [CiteAs](https://citeas.org/ ) or [DOI2bib](https://www.doi2bib.org/) to directly obtain the citation in a given citation style or as a [BibTex](https://en.wikipedia.org/wiki/BibTeX) format. \n\nAnother approach is to find sources where the citation is already available in BibTex format and then apply the desired style in Latex.\nFor example, for R packages you can use `citation(PACKAGE_NAME)` to check if the package has a defined citation preference (such as a paper instead of a link to the code repository URL), as explained in @LaZerte2021. \n\n## More information\n- [The Anatomy of a Data Citation](https://datacitation.cessda.eu/The-Anatomy-of-a-Data-Citation) by CESSDA\n"
  },
  {
    "path": "book/website/communication/citable/citable-resources.md",
    "content": "(cm-citable-checklist)=\n# Checklists and Resources\n\n(cm-citable-checklist-authors)=\n## Checklist For Authors\n\n- Pick out key datasets and software your conclusions rely on\n- Cite data and software just like you would cite a paper\n- Publish your own data/software and cite that too\n- Get an [ORCID ID!](https://orcid.org/)\n\n(cm-citable-checklist-data)=\n## For Data Creators\n\n- Deposit your data in a stable repository\n- Get a persistent identifier (DOI) for your data\n- Include an example citation in your dataset's README file\n\n(cm-citable-checklist-software)=\n## For Software Developers\n\n- Deposit key version snapshots of your software in a stable repository\n- Get a distinct persistent identifier for each key version\n- Include an example citation in your software manual\n\n(cm-citable-checklist-recommendation)=\n## Further Recommendation\n\n- [DataCite Citation Guidance](https://datacite.org/cite-your-data.html)\n- [FAIR data principles](https://www.force11.org/group/fairgroup/fairprinciples)\n- [FORCE11 Data Citation principles](https://www.force11.org/datacitationprinciples)\n- [FORCE11 Software Citation principles](https://www.force11.org/software-citation-principles)\n- [Getting Started with your ORCID record](https://support.orcid.org/hc/en-us/articles/360006896894-Getting-started-with-your-ORCID-record)\n- [Making software citeable](https://book.the-turing-way.org/communication/citable/citable-cite#citing-software)\n- [OpenAIRE Guide on Person Identifiers](https://www.openaire.eu/how-can-identifiers-improve-the-dissemination-of-your-research-outputs)\n"
  },
  {
    "path": "book/website/communication/citable/citable-steps.md",
    "content": "(cm-citable-steps)=\n# Steps for Making Research Objects Citable\n\nThere are many reasons why authors don't cite the data, protocols, software and hardware that they use, but one of the biggest ones is that it's not clear how.\nYou can go a long way to reducing this barrier by following a few steps to make it as easy as possible.\n\n(cm-citable-steps-object)=\n## 1. Identify Your Research Objects\n\nWe want to emphasise that most of our research objects should be shared so that other researchers can reproduce and reuse them.\n Therefore, the first step is to identify all the research components that you would share online.\nPractising open research isn't essential to get credit for your data or software, but it makes it much easier for others to build on your work in a way that acknowledges your contribution.\nThere is a growing body of evidence that shows open research tends to be cited more than non-open research of equivalent quality and significance.\n\nAs part of the citation for your research objects, it is important to publish research objects beyond papers, such as images, data, software, protocols, methods, and workflow associated with your research.\n\nThe best way to get started with this will be to look up some examples of what kind of research objects are or should be cited.\nFinding commonly referenced research objects in your discipline serves two purposes:\n1. It demonstrates that software & data are things that can be cited;\n2. It gives authors a reference and format that they can copy and paste directly into their document.\n<!-- TODO: Cite relevant paper for this (Piwowar et al 2013?) -->\n\n```{note}\nYou can learn more about the different types of research objects in the chapters {ref}`making your research open<rr-open>` and {ref}`making your research FAIR<rr-rdm>`.\n```\n\n(cm-citable-steps-publish)=\n## 2. Publish your work online\n\nOnline publications are attached to [persistent identifiers](https://www.youtube.com/watch?v=iea6d5oI8Ag) that are used for citing them.\nIt's important to note that not everything published online gets a unique identifier but it is important that research objects are published online with DOIs as described below.\n\n(cm-citable-steps-doi)=\n### DOIs\n\n```{figure} ../../../figures/DOI.*\n---\nname: doi\nalt: This image shows three boxes with materials on top. The main box in the middle has 'identifiers' written on it with three discs on top of it that are labelled 'data sets'. Both boxes by their side have journal articles on top of them. An arrow on the top of the image points to these images as being 'Digital Object Identifiers'. There is text at the bottom of the image which says 'Persistent', 'Unique', 'Trusted'.\n---\nDigital Object Identifiers or DOIs are persistent, unique and trusted. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\nUnique identifiers or persistent links for digital objects are more formally called [Digital Object Identifiers or DOIs](https://en.wikipedia.org/wiki/Digital_object_identifier).\nUsing DOIs makes it much easier for others to cite your data, reduces the risk of link rot and means you can track how your research is being used and cited.\n\n### Servers that provide DOIs\n\nIndependent of the paper, different research objects can be published online on servers that offer DOIs.\nSome of these servers are [Zenodo](https://zenodo.org/) and [FigShare](https://figshare.com/) (for different objects such as figures, presentations and reports), [Data Dryad](https://datadryad.org/stash) (for data), [Open Grants](https://www.ogrants.org/) (for grant proposals) and [Open Science Framework (OSF)](https://osf.io/) (for different components of an open research project).\n\nIt's perfectly possible to cite a dataset or software package directly, and most major publishers now permit this in their style guides.\nHowever, it can sometimes help to have a more conventional paper to cite, and this is where software and data journals come in.\nThese journals are similar to methods journals, in that they tend not to include significant results but instead focus on describing data and software in sufficient detail to allow reuse.\nSome examples include:\n- [Journal of Open Research Software](https://openresearchsoftware.metajnl.com/)\n- [Journal of Open Source Software](https://joss.theoj.org/)\n\nYou can read more about these different article types in our {ref}`Chapter on Publishing Different Article Types<cm-dif-articles>`.\n\n(cm-citable-steps-referencing)=\n## 3. Add Machine-Readable Referencing Information\n\nYou can go a step further by allowing people to import information about your research objects into their preferred referencing database.\nIf [BibTeX](https://en.wikipedia.org/wiki/BibTeX) is popular in your field for managing references, post a `.bib` file of *all* your outputs (not just your papers).\nIf [Endnote](https://endnote.com/) is more popular, make an Endnote export available.\nIf you use GitHub, GitLab or a similar public repository, consider creating a `CITATION.cff` file in each repository, which will describe how someone can refer to different research outputs from your project.\nYou can read more about `CITATION.cff` in {ref}`Software citation with CITATION.CFF <cm-citable-cff>`.\n\nIf possible, provide several formats: you won't need to update these very often and it will pay off.\n\n"
  },
  {
    "path": "book/website/communication/citable/citable-versioning.md",
    "content": "(cm-citable-linking-versions)=\n# Managing Versions Through PIDs\n\nResearch outputs often evolve over time: you might fix errors in a dataset, improve code, or update protocols.\nPersistent identifiers provide structured ways to handle versioning while maintaining clear connections between versions.\n\n## Version DOIs vs. Concept DOIs\n\nSome repositories (notably [Zenodo](https://support.zenodo.org/help/en-gb/1-upload-deposit/97-what-is-doi-versioning)) implement a two-level DOI system:\n\nVersion DOI\n: A version DOI points to one specific version of a resource and never changes. Use this when you want to cite a specific version for reproducibility. For example: `10.5281/zenodo.3332807` (version 1.0).\n\nConcept DOI\n: A concept DOI points to the resource as a whole, across all versions, and always resolves to the latest version. Use this when you want to cite the work in general. For example: `10.5281/zenodo.3332806` (concept, always latest).\n\nThe concept DOI creates an umbrella that links all versions together.\nWhen you publish a new version, it gets a new version DOI, but the concept DOI remains the same.\n\n## When to Create a New Version vs. New Resource\n\nYou should create a new version when the fundamental resource remains the same but has been improved or corrected. This includes situations like fixing errors or bugs, adding new data points to an existing dataset, improving documentation or metadata, or making minor methodological adjustments. The key characteristic of a new version is that it represents an evolution or refinement of the original resource rather than a fundamentally different output.\n\nIn contrast, you should create an entirely new resource when the changes are substantial enough that the output could stand alone independently. This applies when you're collecting fundamentally different data, completely redesigning a protocol, or making major methodological changes that alter the nature of the work. These situations call for a new DOI rather than a new version because the new output represents distinct scholarly work.\n\nWhen in doubt, ask yourself: \"Would citing the old version still be valid and useful?\" If yes, create a new version. If no, create a new resource.\n\n## How to Publish New Versions\n\n::::{tab-set}\n:::{tab-item} Zenodo\n:sync: tab1\n1. Go to your published record\n2. Click \"New version\"\n3. Zenodo creates a copy with a new reserved DOI\n4. Update files and metadata as needed\n5. Publish the new version\n6. The concept DOI automatically updates to point to the latest version\n7. Both version DOIs remain active and independently citable\n:::\n:::{tab-item} Figshare\n:sync: tab2\n1. Edit your existing item\n2. Upload new files\n3. Figshare versioning happens automatically\n4. Each version is preserved and accessible through the item history\n:::\n:::{tab-item} OSF\n:sync: tab3\n1. Update files in your project or component\n2. OSF maintains version history automatically\n3. The DOI always points to the current state\n4. Previous versions are accessible through the interface\n:::\n:::{tab-item} Other repositories\n:sync: tab4\n1. Check specific repository documentation\n2. Some may require creating a new record and linking with IsNewVersionOf relationship\n3. Contact repository support for guidance\n:::\n::::\n\n## Version Metadata Links\n\nWhether or not your repository has automatic version handling, you can explicitly link versions through connection metadata.\n\n## Best Practices for Versioning\n\n- **Document changes**: Include a changelog or version notes explaining what changed\n- **Preserve old versions**: Don't delete previous versions - persistence is the point of PIDs\n- **Update related resources**: If you publish a new dataset version, consider whether related code or documentation needs updating too\n- **Cite specific versions in papers**: For reproducibility, cite the exact version used, not the concept DOI\n- **Use concept DOIs for general reference**: When recommending a resource (in documentation, teaching), use the concept DOI so people get the latest version\n- **Communicate updates**: If others have cited your work, consider contacting them about significant improvements\n"
  },
  {
    "path": "book/website/communication/citable.md",
    "content": "(cm-citable)=\n# Making Research Objects Citable\n\n## Prerequisites / recommended skill level\n\n| Prerequisite  | Importance |\n| ------------- | ---------- |\n| {ref}`Overview of Reproducibility<rr-overview>` | Useful but not essential |\n| {ref}`Open research<rr-open>` | Useful but not essential |\n\n## Summary\n\nMany researchers argue that time spent on reproducible research practices reduces the time they have available for activities that are traditionally linked to academic credit, such as writing papers.\n\nWhat if you could get credit for your reproducibility efforts as well?\nIn this chapter, we will describe how working reproducibly will allow you to get most of your research outputs published in a way that can be cited by others (not just your paper)!\n\n```{figure} ../../figures/orcid-ids.*\n---\nname: orcid-ids\nalt: This image shows a female researcher in the centre with her arms raised. She is surrounded in an orbit by different types of documents. On the top left, there is a caption stating 'ORCID IDS', while on the bottom right there is the text that says - 'One ring to rule all outputs'.\n---\nORCID ID allows a researcher to connect their profile with all the published research objects, each of which also have their unique persistent identifiers. You will learn about these in this chapter. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n(cm-citable-motivation)=\n## Background & Motivation\n\nAcademic research has traditionally maintained a 'reputation economy' where citations are the currency or considered a major metric of success.\nMost research institutions' promotion and hiring criteria depend to a greater or lesser extent on your publishing record: how many articles you have published, how \"important\" the journals were, and how many times each article has been cited using the unique identifiers.\n\nThis is a well-established practice, and while it has its structural (academic) problems at least all stakeholders understand what's involved.\nOne of the consequences of this system is that labour which *doesn't* result in published articles tends to be ignored, discouraging researchers from making their data more open or specialising in software development.\n\nEstablishing good citation practices using persistent and citable identifiers for non-article content is a step towards recognising this valuable work and encouraging more people to take it up.\nIf you can demonstrate the impact of your reproducible research work in addition to more traditional research outputs, you can justify spending more time on doing things right.\n\nWe describe, how you can {ref}`prepare your research object to be citable<cm-citable-steps>`, {ref}`how others can cite them<cm-citable-cite>` (or you can cite others work) and how you can use them to {ref}`gain recognition and build your profile<cm-citable-orcid>`.\n\n(cm-citable-contribute)=\n## Contribute to this Chapter\n\nWe invite you to contribute to this chapter by writing about one or multiple of the following aspects:\n- Demonstrate impact with various metrics described in this chapter\n- Add some tips for peer-reviewed publishing of research components with DOIs (like data journals, JOSS for software)\n- Add information about [citing JSON](http://citebay.com/how-to-cite/json/)\n- How to cite deprecated practices or legacy versions such as citing an early paper or a software manual\n- More thoughts on what does/doesn't need to be cited\n"
  },
  {
    "path": "book/website/communication/comms-overview/comms-overview-accessibly.md",
    "content": "(cm-comms-overview-accessibly)=\n# Communicating Accessibly\n\nAccessibility of your writing or presentation is more than just about the technical level.\nHow it can be accessed in terms of where it is located, the format of text and diagrams, the language and overall FAIRness of the communication all need to be considered.\n\nFAIR stands for findable, accessible, interoperable and reusable and you can find out more in our sub-chapter {ref}`sub-chapter on The FAIR Principles<rr-rdm-fair>`.\n\n## Where you communicate\n\nWhere your research is communicated and how much it costs will have an impact on its accessibility.\nMost communications to wider audiences will be free to access as they will be distributed online, which makes them even more impactful.\nHowever, many scientific articles are not accessible even to researchers because they are behind paywalls.\nA [paywall](https://en.wikipedia.org/wiki/Paywall#:~:text=A%20paywall%20is%20a%20method,a%20paid%20subscription%2C%20especially%20news.) is the restricting of access to content through a one off payment or subscription cost.\nYou can find out more about paywals by watching the movie [Paywall](https://paywallthemovie.com/).\n\nThe cost of academic books is also exclusionary. They often cost five times more than popular novels, although there is a growing movement towards open access e-books.\n\n* Conference and workshop fees can exclude some researchers.\nWhile you may not have control over conference access, you can share your conference presentations and posters on an open repository which will widen their accessibility.\nYou may also consider recording your presentations and making them available online.\n* If you are organising an event, you can make an effort to reduce the costs or offer grants to certain individuals to ensure that your event is accessible.\n\nYou can try to make your outputs freely available by publishing them in an online repository such as [Zenodo](https://zenodo.org/), [Figshare](https://figshare.com/) or [Open Science Framework](https://osf.io/).\nThis will allow your content to be accessed by a larger audience and consequently have a greater impact.\n\n## Consider Disabilities\n\nYou need to consider how those with disabilities can fully access your communications.\n\n* Often the text in academic publications is accessible but the images and figures are not.\n* The colour of images needs to be considered for people with colour blindness and it is a must to include alternative text for all images.\nAlso, consider what format is best for screen readers.\n* There are features you can use within most word processing and presentation software that can help you to edit your documents in this manner.\nThese include being able to add alt text to any images and using the specific headings to help a screen reader move to different sections.\n* Microsoft Office has an accessibility checker so you can easily run this feature when your document or presentation is completed and make adjustments.\n* For more information about accessibility see [Ability Net](https://abilitynet.org.uk/) and their [guide to creating accessible documents](https://abilitynet.org.uk/factsheets/creating-accessible-documents-0).\n* There is also a useful [blog about alternative text](https://abilitynet.org.uk/news-blogs/five-golden-rules-compliant-alt-text) and you can find out more in this useful [introduction to alt text by Webaim](https://webaim.org/techniques/alttext/).\n\n## Language Translation\n\nEnglish is considered the academic language and we should be careful to make sure that all our outputs are accessible in this language.\nOutputs should be written straightforwardly to make them more accessible to those with English as a second language.\n\n* However, not all communications should be in English.\nResearchers need to consider the wider audience of their communications.\nThere may be a specific community with another language that needs to be engaged fully in the research and therefore communications should be translated.\n* Global research communities should also consider translating key documents into additional languages as has been done for our project [README file](https://github.com/the-turing-way/the-turing-way/blob/main/README.md).\n\n## FAIR resources\n\nIt is worth considering applying the FAIR principles to all the science communications that you deposit in open repositories, such as conference presentations and posters, as this will make them more sustainable.\n* Tips to apply the FAIR principles to training materials by Garcia et al (2020) {cite:ps}`Garcia2020ten` can be easily adapted for this purpose.\n\nFind out more in our {ref}`sub-chapter on The FAIR Principles<rr-rdm-fair>`.\n"
  },
  {
    "path": "book/website/communication/comms-overview/comms-overview-principles.md",
    "content": "(cm-comms-overview-principles)=\n# Principles of Communicating with Wider Audiences\n\nResearchers should consider communicating their research less technically to expand its accessibility to wider audiences.\nThis will increase the impact of the research on different academic disciplines and also on non-specialist audiences.\n\nYou need to think carefully about the readability of any written or spoken communications.\n\n## Main Points to Consider:\n\n* **Identify your audience** - It is important to first establish the audience that you want to communicate with as this will determine the level of readability and therefore the level of technical language that you can use.\n    * To assess and organise the characteristics of your audiences, you can use a persona creation tool like the one referenced in the {ref}`Guide for Project Design<pd-persona>`.\n    * Keep in mind that there are usually many different audiences that consume the same content you publish in each of the media that we'll cover in this chapter.\n* **Change your style** - Academic writing is often very formal and uses a lot of passive voice such as 'the authors suggest ...'.\nThis style does not suit a non-academic audience and therefore your writing needs to be adapted to suit the audience you are aiming for.\n* **Make it accessible** - As well as making the technical level of your writing lower, you also need to get rid of any commonly used abbreviations used in your discipline or at least make sure that you explain them.\nEach discipline has its acronyms that even other scientific fields do not understand.\nThere are also issues concerning different audiences being physically able to access the output that must be considered.\nRemoving as many barriers to research communication as possible will increase its effectiveness.\n\n"
  },
  {
    "path": "book/website/communication/comms-overview/comms-overview-resources.md",
    "content": "(cm-comms-overview-resources)=\n# Resources and Recommendations\n\n(cm-comms-overview-resources-accessibility)=\n## Accessibility\n\nRead more in this chapter: {ref}`cm-comms-overview-accessibly`.\n\n* [Ability Net](https://abilitynet.org.uk/) for guides to making your documents more accessible.\n* [Contrast calculator](https://contrastchecker.com/) is a good website to freely check if you meet the Web Content Accessibility Guidelines (WCAG) ratings.\n* [Outlier conf](https://www.outlierconf.com/) is a good example of accessibility in conference participation fees and data experience (vs visualisation).\n\n(cm-comms-overview-resources-blogs)=\n## Blogs\n\nRead more in this chapter: {ref}`cm-blogs`.\n\n* [20 metrics every blogger needs to track to measure success](https://www.dreamhost.com/blog/metrics-every-blogger-needs-to-track/).\n* [Start a Wordpress blog](https://www.podcastinsights.com/start-a-wordpress-blog/)\n* [Comparing Google sites and Wordpress](https://superbwebsitebuilders.com/google-sites-vs-wordpress)\n\n### Some of our favourite blogs\n* Dr Veronika Cheplygina's [How I fail series](https://veronikach.com/failure/)\n* [Software Sustainability Institute Blog](https://www.software.ac.uk/blog)\n* [Open Working](https://openworking.wordpress.com/) by 4TU.ResearchData & TU Delft Library and Data Stewards. Uses WordPress.\n* [Metadocencia](https://metadocencia.netlify.app/post/) - This is in Spanish but you can also read it in English [here](https://metadocencia.netlify.app/en/post/).\n\n(cm-comms-overview-resources-lay)=\n## Lay summaries\n\nRead more in this chapter: {ref}`cm-lay-summaries`.\n\n* See  [Perfecting that lay summary](https://bitesizebio.com/10871/perfecting-that-lay-summary/) for a good example of how an abstract can be changed into a lay summary.\n\n**Readability tests:**\n* [Hemingway app](http://www.hemingwayapp.com/)\n* [The first word readability test](http://thefirstword.co.uk/readabilitytest/)\n\n\n(cm-comms-overview-resources-podcasts)=\n## Podcasts\n\nRead more in this chapter: {ref}`cm-podcasts`.\n\n* [How to start a podcast blog](https://www.podcastinsights.com/start-a-podcast/?gclid=CjwKCAiA9vOABhBfEiwATCi7GNV7zJl0tHaVkW-7DCjVdAwGa4q0vbaXB44xsSBHp7YBO8K6pH0syBoCVtUQAvD_BwE).\n\n### Some of our favourite podcasts\n* [Orion Open Science](https://www.orion-openscience.eu/publications/training-materials/201902/podcasts).\n* [Open Science talk](https://soundcloud.com/opensciencetalk).\n* [The Turing Podcast](https://www.turing.ac.uk/news/turing-podcast).\n* [ReproducibiliTea Podcast](https://soundcloud.com/reproducibilitea).\n* [Open science stories](https://podcasts.apple.com/gb/podcast/open-science-stories/id1547403532).\n\n(cm-comms-overview-resources-presentations)=\n## Presentations\n\nRead more in this chapter: {ref}`cm-presentations`.\n\nHere are some websites that offer free resources making different aspects of presentations:\n\n* [The Noun Project](https://thenounproject.com) for icons and photographs.\n* [Unsplash](https://unsplash.com) for photographs.\n* [Pexels](https://www.pexels.com) for photographs.\n* [Freepik](https://www.freepik.com/free-photos-vectors/english) for icons and illustrations.\n* [Flaticon](https://www.flaticon.com/free-icons/english) for icons.\n* [Canva](https://www.canva.com) for icons.\n\nFor recording talks:\n* [OBS](https://obsproject.com).\nSee [this guide for using OBS](https://software.ac.uk/fellowship-programme/2019/application-video-guide) by the Software Sustainability Institute.\n* [Amara](https://amara.org) or [Otter](https://otter.ai/) can be used to generate your subtitles. \nVideo conferencing platforms such as Zoom or Google meet also have captions.\n\n* Many of the technical aspects and tools for giving remote talks (or classes) are covered in [The Carpentries tips for teaching online](https://carpentries.org/blog/2020/03/tips-for-teaching-online/) and the webinar [\"Teaching Online on Short Notice\"](https://rstd.io/teach-online-2020) by RStudio, a source for several points of this section.\n\n* The Outlier conference has some excellent tips on [speech development](https://docs.google.com/presentation/d/1VltGZmwfFcqwJ_pMwNx-ECfhgtl0dhxYC99qM5xnV-U/), [structure](https://docs.google.com/presentation/d/1XyFdpqjlvXd_8kIl3dJFHhGTcywX0tayQtHXXYUi9DQ/), and [technical setup](https://https://docs.google.com/presentation/d/1ZLrVBs5Zt9_DDu2TYUN3CzsEr1WiMXbwj-AP5m9Rbhc/).\n\n* Author Nancy Duarte offers some insights in her books, articles and [talks](https://www.ted.com/talks/nancy_duarte_the_secret_structure_of_great_talks) on how to structure presentations that involve a call to action.\n\n(cm-comms-overview-resources-social)=\n## Social Media\n\nRead more in this chapter: {ref}`cm-social-media`.\n\n* [X Pro (formerly Tweetdeck)](https://help.twitter.com/en/using-x/how-to-use-x-pro)\n* [Buffer](https://buffer.com/)\n* This is a good [guide to getting set up on X (formerly Twitter)](https://www.wired.com/story/how-to-setup-twitter-search-hashtag-and-login-help/).\n* [Ten simple rules to getting started on Twitter as a scientist](https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1007513)\n* [Ten simple rules of live-tweeting at scientific conferences](https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1003789)\n* [How to use Twitter to further your research career](https://www.nature.com/articles/d41586-019-00535-w)\n"
  },
  {
    "path": "book/website/communication/comms-overview.md",
    "content": "(cm-comms-overview)=\n# Overview of the Guide for Communication\n\nResearch projects, publications and communities are evaluated based on the impact that they make.\nThis is often based on academic journal articles, generally published on completion of a project.\nHowever, there is much more scope to plan communication in a research project to enable effective collaboration, sharing progress as well as reporting results and conclusions at different stages of research through different streams of dissemination.\n\nIn this guide, we present tools, methods and recommendations for communicating our research with wider audiences.\nCommunication methods described here can be used for establishing efficient ways to work with your collaborators, share different research objects as well as increase the breadth of the audience for your research or community.\n\n```{figure} ../../figures/communication-styles.*\n---\nname: communication-styles\nalt: Two people sitting working. One using a feather and scroll with the words inaccessible and too technical written on the scroll. The other person sitting at a computer with different communication methods coming out of the computer including blogs, podcasts, lay summaries and social media. There are also dictionaries for foreign languages showing that it is important to translate our research into different languages. Accessibility is written on the computer screen.\n---\nIllustration about communicating with a wider audience.\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: 10.5281/zenodo.3332807.\n```\n\nYou can make your work openly accessible through following {ref}`Open Scholarship principles<cm-open-scholarship>`. \nOther forms of communication include blogging, writing lay summaries, podcasting, presenting posters and talks at conferences outside of your discipline, and using social media.\nThis can involve translating technical scientific writing into different styles that make your research more accessible to specialists outside of your specific discipline and also to the wider public.\nWe also describe different communication channels you can select for your project to enable collaboration with your team or community members.\n\nWe present several case studies from groups and individuals that have successfully used these methods of communication.\nThey describe how they have practically gone about doing the communication method and offer some tips for others to get started.\nYou are welcome to share your personal stories and impact studies in this guide.\n\nLessons learnt in this guide will enable researchers to communicate their research more clearly with wider audiences and therefore increase its overall impact.\nMethods discussed in the guide can have a considerable impact on the overall project or community in terms of gaining interest within your scientific discipline, engaging with the wider scientific community and gaining interest from the general public.\n"
  },
  {
    "path": "book/website/communication/communication.md",
    "content": "(cm)=\n# Guide for Communication\n\n***This guide covers topics related to effective communication in research.***\n\nData analysis process, statistics and project development can be overwhelming to make available to and to explain to people, especially when they are not already involved in this process.\nTherefore, data scientists should not only have a good understanding of data analysis techniques but also develop skills to communicate insights from their work in a clear, open, and accessible format that can help key stakeholders make meaningful decisions.\nThere are many ways we can convey our insights responsibly that can resonate with and impact our target audience.\n\n```{figure} ../../figures/communication.*\n---\nname: communication\nwidth: 500px\nalt: Illustration by Scriberia for The Turing Way, showing a network of communication for learning and teaching. Six stylised people are drawn inside a shape (square, circle, or diamond) surrounded by flowchart-like icons and light bulbs, symbolising ideas. Each person is connected by looping arrows labelled “LEARN” and “TEACH”, forming a continuous exchange. The arrows link learners and teachers in all directions, suggesting that everyone contributes to and gains from the collective.\n---\nCommunication network for sharing, learning and teaching. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\nIn this guide, we welcome contributions to developing chapters and guidance on effectively communicating the data-driven outcome to different audience types who may or may not be aware of scientific data analytics.\nWe are excited to support data scientists _like you_ to develop skills ranging from how to make your work openly available, interactive visualisation, how to give a talk, writing your first paper, and being interviewed by the media.\n\n_The Turing Way_ itself is a [Jupyter Book](https://jupyterbook.org/intro.html), which is an open source tool for building beautiful, **publication-quality** books, websites and documents from source material that contains computational content. Please also consider how we can make our communications about this more exciting!\nCheck out our [contributing guidelines](#ch-contributing) to get involved.\n"
  },
  {
    "path": "book/website/communication/dif-articles/data.md",
    "content": "(cm-dif-articles-data)=\n# Data Papers\n\n(cm-dif-articles-data-what)=\n## What are Data Papers?\n\nThe purpose of a data paper is to describe a dataset and make it more FAIR (findable, accessible, interoperable and reusable). \nTherefore, it is different from a research article, it is not meant to report the findings of your data. \n\nIt is a peer-reviewed article focused on describing datasets and the circumstances of their collection - a searchable metadata document. \n\nThere are specific data journals for data papers such as Scientific Data or Biodiversity Data Journal. \nData journals are usually open access journals so a data paper does normally come with an article processing charge (APC), but this can vary considerably depending on the journal you choose. \nThe APC can be anywhere between £0 to several thousand pounds. \nThere is a helpful list of journals on the [GBIF data papers page](https://www.gbif.org/data-papers) or see our list of data journals in the {ref}`sub-chapter on Data Articles<rr-rdm-article>` in the Research Data Management chapter.\n\n(cm-dif-articles-data-why)=\n## Why write a Data Paper?\n\nThere are lots of reasons why you would want to write a data paper.\n\n\n### Public benefit:\n1. Validation of data in research papers\n2. Public trust in science through greater transparency\n3. Economic benefit for private sector\n4. Opportunities for citizen science\n\n### Research community benefits:\n1. More efficient research\n2. Reuse in teaching\n3. Easier to find useful data\n4. Data archived and preserved for future use\n5. New research made possible\n\n### Personal benefit:\n1. Career recognition\n2. Credit for data stewardship\n3. Citations\n4. New collaborations\n\n### Picking out three of these that are particularly important:\n\n**Makes your data more FAIR**\n\nFAIR (Findable, Accessible, Interoperable and Reusable) data has become the gold standard for data management and is being increasingly adopted in many different disciplines. \nIf you want to make your dataset FAIR, you will be putting it in an online repository and then you really need to tell everyone where to find it.\nTherefore, a data paper is a good place to advertise your dataset making it even more findable.\n\nA good place to go for more information about how to make your data FAIR is GO FAIR (https://www.go-fair.org) and also see their FAIRification process (https://www.go-fair.org/fair-principles/).\n\nPart of the FAIR principles are that data are described with rich metadata (F2) and that the metadata clearly and explicitly include the identifier of the data they describe (F3). \nThis is exactly what a data paper is for - describing all the metadata (methodology of data collection) and providing a digital object identifier (DOI) for the dataset.\n\nBut writing a data paper does not just increase the findability, it also increases the accessibility of your data. \nAnother part of the FAIR principles is that metadata are retrievable by their identifier (A1). \nA data paper provides this by having a separate DOI associated with the article and therefore the description of your data (metadata).\n\n**It increases your number of articles and also citations**\n\nResearch culture, research impact and career progression is still linked to the number of journal articles researchers publish and what journals they publish in.  \nWe therefore need to convert the effort we make in producing sustainable datasets (open or restricted in repositories) into the impact gained from publishing journal articles. \nA data paper adds another published peer-reviewed article on top of your research article for the same project and gives credit to the researchers that take time to implement good data stewardship practices.\n\nData papers are quick to write and also tend to come back from review quickly so there is generally a quick turn around for those in need of bolstering their publication lists.\n\nWith this increase in publications will obviously come an increase in citations for you. \nSo writing a data paper means more impact for your research!\n\n**Reproducibility and sustainability**\n\nThe transparency produced by writing down your methodology in a structured way in a data paper means that your research will be easier for others to understand, reproduce and reuse. \nA data paper accompanied with a research compendium attached to a research article is a great way to signal to others that your research is reproducible. \nYou are providing a more transparent record of your research.\n\nBeing more open and transparent, and particularly taking a reproducible research approach, makes your research more sustainable. \nBut why is this such a good thing? \nPublishing research that has the ability to be fully reviewed, so that means the protocols, data, and code as well as your interpretations and conclusions, means that it can be fully validated.\nOther researchers can have more trust in the quality of the research and therefore, reuse any part of it with confidence. \nThe research has more longevity and therefore is more cost effective.\n\nThis is especially important when it comes to developing new scientific methods for applied sciences. \nThe methods need to be robust so that the investigations using them and subsequent interpretations made from the results must hold up to scrutiny.\n\n(cm-dif-articles-data-how)=\n## How do you write a Data Paper?\nFirst you need to deposit the dataset in an open repository of your choice. \nThis can be done for free using one of many free open repositories such as Zenodo, Open Science Framework or Figshare. \nIn most cases, a data paper will link to an open dataset but this may not be possible  with sensitive data. \nHowever, with sensitive data you will be able to link to a restricted dataset and in this case it is important you provide detailed information about how to apply to get access to the data in the data availability statement in the data paper.\n\nDepositing a dataset in a repository will provided you with a Digital Object Identifier (DOI) for the dataset, you can then write your article using a data paper template provided by a data journal and link the dataset to this paper by writing the DOI in the data availability statement. \n\nFor data journals, the data paper templates are all very similar and include sections such as:\n\n* **Background and summary** - used to introduce the context of your dataset and how it fits in with other similar or related datasets. You could also comment on the significance or uniqueness of the dataset.\n* **Methods** - this includes all the information about how you collected the data.\n* **Data records** - where is the data located?, what format?, overview of the files such as a data dictionary or link to a wiki. \n* **Technical validation** - what analyses were done to ensure technical quality of the dataset?\n* **Usage notes** - how could the dataset by reused?, how can you apply to reuse it?\n\nThis structured approach, using a template, makes data papers simple to write. \nThey are meant to be fairly short and to the point therefore much less time consuming than writing a research article.\n\n(cm-dif-articles-data-review)=\n## How do you review a Data Paper?\n\nYou can find general guidance on how to peer review a paper in our peer review chapter [here](https://book.the-turing-way.org/communication/peer-review.html). \n\nWhen reviewing a data paper specifically it may be useful to focus on (adapted from [F1000Research's guidance](https://f1000research.com/for-referees/guidelines)):\n* Is the rationale for creating the dataset clearly described?\n* Is the dataset clearly presented in a usable and accessible format?\n"
  },
  {
    "path": "book/website/communication/dif-articles/methods.md",
    "content": "(cm-dif-articles-methods)=\n# Methods Papers \n\n(cm-dif-articles-methods-what)=\n## What are Methods Papers?\n\nSimply put methods papers detail how your research was conducted. \nMethod sections have always been part of a traditional research article but have recently gained more prominence as a separate article type - allowing the method to be written in more detail and in a way that can be replicated.\n\nMethod articles can describe observational, experimental, theoretical or computational methods or procedures. \nSome method articles may also be describing how to apply existing methods to new areas.\n\nMany journals accept methods articles and there are also journals that are methods only such as [Nature Methods](https://www.nature.com/nmeth/) and [BMC Medical Research Methodology](https://bmcmedresmethodol.biomedcentral.com/) which is discipline specific.\n\nYou can also share your method through sites like [protocols.io](https://www.protocols.io/), which is an open-access platform for detailing, sharing, and discussing protocols that can be useful before, during, and after publication of research results. \nUnlike method articles, the protocols posted on the site are dynamic so can be updated at any time but record versions of the methods.\n\n(cm-dif-articles-methods-why)=\n## Why write a Methods Paper?\n\nTraditional research articles often have word limits, so writing out your method comprehensively to allow others to replicate it may be tricky to do in a methods section. \nBy publishing your method paper separately you can ensure your method is fully detailed. \n\nMethods papers make your method more discoverable to others in your field and beyond, and by having it as a citable item you can get credit when others use your method that you've developed.\n\n(cm-dif-articles-methods-how)=\n## How do you write a Methods Paper?\n\nMethods papers can vary in format. Overall you want to inform readers exactly what was done - you may include preliminary work, how data was generated/collected, how the data was analysed, validation of the method, and details about robustness of the method.\n\nFor any of these sections, it may be useful to add step-by-step processes, rationale and as much detail as possible such as settings and conditions for your experiment, specific software you used, specific reagents and resources used.\n\n\n(cm-dif-articles-methods-review)=\n## How do you review a Methods Paper?\n\nYou can find general guidance on how to peer review a paper in our peer review chapter [here](https://book.the-turing-way.org/communication/peer-review.html). \n\nWhen reviewing a methods paper specifically it may be useful to focus on (adapted from [F1000Research's guidance](https://f1000research.com/for-referees/guidelines)):\n* Is the rationale for developing the new method (or application) clearly explained?\n* Are sufficient details of the method provided and would this allow the method to be replicated by others?\n* Are the conclusions about the method and its performance adequately supported?\n"
  },
  {
    "path": "book/website/communication/dif-articles/micro.md",
    "content": "\n(cm-dif-articles-micropublishing)=\n# Micropublishing\n\n(cm-dif-articles-micropublishing-what)=\n## What is Micropublishing?\n\nA micropublication can be thought of as a mini research article - they are a small, simple articles describing a single result or claim without a broader narrative. \nThey are also referred to as a brief or short report. \n\nThe idea behind micropublishing is to get more research published and out in the open so it can be used by other researchers. \nFor example during a research lifecycle, you may get small results from pilot experiments that won't fit the narrative of your final traditional research article, therefore micropublishing allows you to get this kind of thing published.\n\nMicropublications gained more popularity during the COVID-19 pandemic (see blog here- https://elifesciences.org/labs/77a64938/outbreak-a-micropublishing-journal-for-collaborative-covid-19-research) where there was an emphasis on getting data and results out, no matter how small. \n\nMany journals publish short reports such as [eLife](https://elifesciences.org/articles/short-report), [PLOS Biology](https://journals.plos.org/plosbiology/article?id=10.1371/journal.pbio.3000248), [Implementation Science](https://implementationscience.biomedcentral.com/submission-guidelines/preparing-your-manuscript/short-report) and [F1000Research](https://f1000research.com/for-authors/article-guidelines/brief-report). \n\nThere has also been some recent initiatives that only publish micropublications and encourage step-by-step publishing as your research progresses - ultimately working in the open and improving the efficiency of the scientific process. \n\nYou can find out more at each of the platforms:\n* [Octopus](https://science-octopus.org/)\n* [Research Equals](https://www.researchequals.com/)\n* [microPublication Biology](https://www.micropublication.org/)\n\n(cm-dif-articles-micropublishing-why)=\n## Why Micropublish?\n\nMicropublishing allows you to get your work out sooner, rather than waiting till the end of your research lifecycle to just publish a traditional research article. \nThis also means you can publish results that might not fit the narrative of your overall research and results that may face publication bias such as negative results.\nAdditionally it allows for situations like students leaving the lab to get a publication out quickly.\n\nMicropublications are easy to put together - the journals that publish them are very flexible with format and the barrier for publishing them is low.\n\nBy publishing your smaller outputs you also get credit by having it as a citable research object. \nThis sharing of smaller outputs gets your work out into the community with potential for new collaborations. \n\n(cm-dif-articles-micropublishing-how)=\n## How do you write a Micropublication?\n\nMicropublications are designed to be concise so you should approach writing these in a short and easy to read format. \nYou may want to include the same sections you would include in a research article such as introduction, methods, results and discussion as well as a single figure.\n\n(cm-dif-articles-micropublishing-review)=\n## How do you review Micropublications?\n\nYou can find general guidance on how to peer review a paper in our peer review chapter [here](https://book.the-turing-way.org/communication/peer-review.html). \n\nFor micropublications you can review them in a similar manner to how you would review a research article.\n"
  },
  {
    "path": "book/website/communication/dif-articles/reg.md",
    "content": "(cm-dif-articles-registered-reports)=\n# Registered Reports\n\n(cm-dif-articles-registered-reports-what)=\n## What are Registered Reports?\nRegistered Reports are an article type divided into two published parts- a study protocol and a research article. \nThe study protocol is reviewed **prior** to the data being collected and the research being carried out. \n\n```{figure} ../../../figures/cos-reg-reports.*\n---\nheight: 200px\nname: registered-reports\nalt: > \n  Diagram showing the stages of the research and publication process.\n  The process is illustrated as a series of blue arrows labeled: Develop Idea, Design Study, Collect & Analyze Data, Write Report and Publish Report.\n  Below the arrows, two red upward arrows mark the peer review stages: Stage 1 Peer Review occurs after study design, and Stage 2 Peer Review follows report writing, before publication.\n---\nImage from Centre for Open Science- https://www.cos.io/initiatives/registered-reports\n```\n\nFor the first stage of registered reports, researchers detail their proposed methods, hypotheses and analyses in a published study protocol. \nThis is then peer reviewed, allowing authors to refine their methodology from reviewer feedback if needed. \nThe protocol is then provisionally accepted, meaning it will be published by the journal if the authors conduct the experiment in accordance with their approved protocol. \nThe authors then carry out their registered methodology for their study.\n\nOnce the study is complete, authors write and publish a research article, which includes results and interpretations. \nThis is also peer reviewed. \n\nRegistered reports are a form of pre-registration, which you can read more about [here](https://www.cos.io/initiatives/prereg).\n\nAround 300 journals publish the registered report format. \nYou can find a full list [here](https://www.cos.io/initiatives/registered-reports).\n\n(cm-dif-articles-registered-reports-why)=\n## Why write a Registered Report?\n\nRegistered reports began in psychology, but this format has now spread and can be used in any field.\n\nThe idea behind the registered report format is to encourage best practices by putting the importance of the methodology and research question first. \nBy pre-registering your planned method and analyses, this eliminates questionable research practices such as selective reporting of results, including low statistical power, p-hacking and HARKing. \nIt also allows you to get useful feedback and improve on your study design.\n\nA huge benefit of publishing a registered report is avoiding publication bias. \nIt can be difficult to publish negative or 'less novel' results in journals. \nThe registered report format means that when you have your protocol approved, your research article is provisionally accepted for publication and will be published regardless of whether you get negative results or not. \n\nThis frees up researchers to be rewarded for simply doing good and transparent science without having to sell an impactful story about their research. \n\nRegistered reports are also a useful format for researchers who want to carry out replication studies and other novel, resource-intensive projects that may otherwise be too risky to attempt where successful publication is contingent on the results. More info can be found [in this Royal Society blog on registered reports](https://royalsociety.org/blog/2016/11/registered-reports-what-are-they-and-why-are-they-important/).\n\n(cm-dif-articles-registered-reports-how)=\n## How do you write a Registered Report?\n\nYou will write your registered report in two parts. \n\nFor a stage 1 study protocol, you should write about background of your research question, motivations, hypotheses and your planned methods. \nThis can include your experimental procedures, analysis pipeline, and statistical analysis. \nYou may also want to include any pilot data or experiments that you've undertaken so far. \n\nAfter you've carried out your investigations, you should prepare your stage 2 research article. \nThis should include the introduction and methods from your original stage 1 article with the addition of your results and discussion. \nYou should include the outcome of all the analyses you outlined in your stage 1 protocol. \nIf you undertook any further analyses that you didn't outline in your protocol then you should report these too with clear justification and methodological details.\n\n(cm-dif-articles-registered-reports-review)=\n## How do you review a Registered Report?\n\nYou can find general guidance on how to peer review a paper in our peer review chapter [here](https://book.the-turing-way.org/communication/peer-review.html). \n\nFor registered reports specifically, they are reviewed twice. \nThis happens once at stage 1 (study protocol) and again at stage 2 (research article). \nJournals try and ensure the reviewers are the same for both stages, but if this is not possible then they will ensure the new reviewer is aware of the stage 1 protocol when they review.\n\nIt may be useful to focus on the following for review stage 1 and stage 2 papers- adapted from [F1000Research's guidance](https://f1000research.com/for-referees/guidelines):\n\n**Stage 1 Study Protocol:**\n* Is the rationale for, and objectives of, the study clearly described?\n* Is the study design appropriate for the research question (including statistical power analysis, where appropriate)?\n* Have the authors pre-specified sufficient outcome-neutral tests for ensuring that the results obtained can test the stated hypotheses, including positive controls and quality checks?\n\n\n**Stage 2 Research Article:**\n* Are the data able to test the authors’ proposed hypotheses by satisfying the approved outcome-neutral conditions (such as quality checks, positive controls)?\n* Are the introduction, rationale and stated hypotheses the same as the approved Stage 1 submission? \n* Did the authors adhere precisely to the registered experimental procedures? If not, has an explanation been provided regarding any change?\n* Are any unregistered post hoc analyses added by the authors justified, methodologically sound and informative?\n* Are sufficient details of the methods and analysis (such as statistical) provided to allow replication by others?\n\n\n(cm-dif-articles-registered-reports-personal)=\n## Personal Case Study on Registered Reports\n[Folco Panizza](https://www.linkedin.com/in/folco-panizza/) gives his thoughts on publishing a Registered Report. Interviewed by Marta Mangiarulo.\n\n**Why did you choose to publish a Registered Report?**\n\nI was inspired to write a registered report by a talk given by Chris Chambers at my university. \nI realised that the projects for my doctoral thesis would have benefited from a clear design upfront. \nI was the first one to try this at my institution, so I also took it as a career challenge to improve my scientific practices and perhaps convince others that the undertaking was not so difficult.\n\n**How did you get started?**\n\nI did some searching in the literature and tried to find some examples of previous registered reports. \nThere weren’t many examples, but I found it useful to look into the presentation notes that Prof. Chambers generously made available for advice.\n\n**What impact do you think your Registered Report made/is making to your research/project/community?**\n\nAfter my initial submission, I was invited to share my experience as part of a series of talks at my university. \nI think my talks helped make registered reports and standard pre-registration less exotic than they initially seemed, although I am not aware of any specific research that adopted either procedure.\n\n**What tools/software did you use most in your Registered Report work?**\n\nMy original registered report was based on the recommendations from the journal I originally submitted it to (Royal Society Open Science). \nAfter that, I mostly relied upon the Open Science Framework’s standard pre-registration format: it has improved quite a bit since I first used it, and I think it nudges researchers into providing more details than other pre-registration forms such as the ones from aspredicted.org\n\n**Do you have any top tips for other people that might be interested in preregistering their research?**\n\nSteal from others’ preregistrations. \nIt really helps to jump-start stalled registrations. \nAnd – general advice – don’t underestimate the importance of literature research to improve your design, especially for methods-heavy registrations. \nFor example, I happened to find an improved operationalisation of a dependent variable right after I had pre-registered my study. \nI do not consider it a big problem to amend the pre-registration, but it is neater if you don’t have to!\n\n**Do you have any tips on things to avoid?**\n\nDo not write your pre-registration right before running your experiment. \nWriting things down is useful because it forces you to find the blind spots in your reasoning. \nI would suggest that you start writing as soon as you have the idea.\n\n**Is there anything else that you want to add to the interview that has not been covered in the questions above?**\n\nPreregistrations are not meant for all research questions out there. \nLet’s not forget about the importance of exploratory questions and how they can expand our pre-registered hypotheses. \nKeeping the focus of a pre-registration restricted to our main hypotheses does not mean that we cannot then explore all the unexpected ramifications of the study results.\n\n"
  },
  {
    "path": "book/website/communication/dif-articles/software.md",
    "content": "(cm-dif-articles-software)=\n# Software Papers \n\n(cm-dif-articles-software-what)=\n## What are Software Papers?\n\nIn comparison to more traditional publications, which usually aim to share some new result, a software paper (sometimes known as a software metapaper) aims to share a new piece of software with the research community. \nIn this sense, software papers are close to method papers traditionally published in experimental sciences. \nSoftware papers tend to be shorter than traditional articles, typically ranging between 2 and 10 pages, and focus on describing the software, its use and its relationship to other pieces of software in the community. \nThis helps fill the niche between methods sections in traditional publications and papers on algorithms or techniques.\n\n(cm-dif-articles-software-why)=\n## Why write a Software Paper?\n\nSoftware papers are much shorter than traditional publications, allowing more time to be spent on the software while still providing an avenue for publication. \nBy specifically publishing in a software-focused journal, you are exposing your software to an audience which is already engaged with research software. \nYou are also adding your software to a curated index of high-quality, peer-reviewed code, increasing the likelihood that your code will be found and used by another researcher. \nThrough the peer-review process, not only is the paper itself evaluated, but the associated code can sometimes be reviewed. \nJust as in traditional publishing, this process is intended to provide constructive feedback, helping to improve the quality of the software and surrounding systems. \n\nIn short, you should write software papers to:\n\n- advertise your code to an interested audience\n- increase the visibility of your code and community\n- improve your software through peer-review\n\n(cm-dif-articles-software-how)=\n## How do you write a Software Paper?\n\nIn a broad sense, software papers tend to focus on answering the questions:\n\n- What does the software do?\n- How do we know the software is correct?\n- Why is the software unique?\n- How can I learn how to use the software?\n\nThe specific sections included in a software paper vary with journal but generally a paper should contain:\n\n- A description of the problem the software solves\n- A comparison to similar software in the space\n- An overview of methods and techniques implemented by the software\n- A description of the implementation and architecture\n- Details of test cases which validate the software\n- Links to further details of the implementation\n- Links to documentation on installation and use of the software\n\nBoth the Journal of Open Research Software and the Journal of Open Source Software provide publicly accessible review checklists, which provide concrete details about what to include in a software paper:\n\n- [The Journal of Open Research Software](https://openresearchsoftware.metajnl.com/about/editorialPolicies/#peerReviewProcess)\n- [The Journal of Open Source Software (JOSS)](https://joss.readthedocs.io/en/latest/review_checklist.html)\n\nThere are also a number of other journals that publish software papers- the Software Sustainability Institute maintain a [list of these](https://www.software.ac.uk/which-journals-should-i-publish-my-software).\n\n(cm-dif-articles-software-review)=\n### How do you review a Software Paper?\n\nSome journals (such as [the Journal of Open Research Software](https://openresearchsoftware.metajnl.com)) adopt the philosophy that the review process only applies to the paper itself, not the software, although basic standards in the software are still enforced, for example, that the software installs and operates as described. \n\nWhile many journals encourage publishing software that has been used in published research, in order to strengthen the case for publication, it is not typically a strict requirement. \n\nIn JOSS specifically, the review process is entirely open and non-anonymous. \nYou can find current and past reviews on their [review tracker](https://github.com/openjournals/joss-reviews/issues).\n"
  },
  {
    "path": "book/website/communication/dif-articles.md",
    "content": "(cm-dif-articles)=\n# Publishing Different Article Types\n\n\n```{figure} ../../figures/publishing-diff-articles.*\n---\nheight: 500px\nname: publishing different articles types\nalt: A person dressed in a lab coat with many arms holding different types of publications such as social media posts, data paper and software papers.\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n\n(cm-dif-articles-prerequisites)=\n## Prerequisites\n\n| Prerequisite | Importance | Skill Level | Notes |\n| -------------|----------|------|----|\n| {ref}`Open Research <rr-open>` | Helpful | Beginner | Of particular relevance is the chapter on Open Access |\n| {ref}`Data Articles<rr-rdm-article>` | Helpful | Beginner | Gives an overview of where to publish data articles |\n| {ref}`Citing Research Objects<cm-citable-cite>` | Helpful | Beginner | Information about how to cite research objects |\n\n\n(cm-dif-articles-summary)=\n## Summary\nThis chapter describes the new types of articles born out of the growth of open research and the expansion in publishing all aspects of the research lifecycle. Each subchapter gives an overview of an article type.\n\nSubchapters included are:\n\n* Data Papers \n* Methods Papers\n* Micropublishing\n* Software Papers\n* Registered Reports\n\n\n(cm-dif-articles-motivation)=\n## Motivation and Background\nTraditionally journal publications have been stand alone research articles, often with a format of abstract, introduction, methods, results and discussion sections.\n\nThis format was often quite limiting and meant things like datasets, software (scripts, code, apps, tools) and methods were often squeezed into research articles with little detail due to word limits, hidden in supplementary material or not included at all. \n\nResearchers therefore increasingly deposit these research objects in repositories to make them usable and discoverable by others. \nDepositing them with rich metadata and linking to a research articles is best practice and you can find out more about how to do that in our [Making Research Objects Citable chapter](https://book.the-turing-way.org/communication/citable.html).\n\nHowever, recently there has been the development of new article types, which allows all deposited research outputs produced during the research lifecycle to be published in their own right and further linked to the final interpretations and conclusions of a research project. \nThe linking of these articles is one way to fully publish a reproducible research project. \n\nHaving separate article types for these outputs allows the people involved, such as research software engineers and data stewards, to receive sufficient credit, attribution and visibility for their work and contributions, particularly as publications are still the main currency by which researchers are evaluated.\n\nThese articles are also important for the sustainability, reproducibility and openness of these research outputs as writing detailed publications means greater care and attention is directed at describing and explaining these outputs and in turn makes these outputs more FAIR (findable, accessible, interoperable and reusable).\n\nNote: in this chapter and subchapter we are using the word 'article' and 'paper' interchangeably. \n"
  },
  {
    "path": "book/website/communication/lay-summaries/lay-summaries-personal-stories.md",
    "content": "(cm-lay-summaries-personal-stories)=\n# Personal Stories - Lay Summaries\n\n## Emma Karoune - Making Palaeoecology More Accessible\n\n**Dr Emma Karoune** is a Research Associate at The Alan Turing Institute and Historic England focusing on Open Science and [Phytolith](https://en.wikipedia.org/wiki/Phytolith) Research.\nShe is currently leading a project concerning the FAIRification of phytolith data.\n\nFind out more about her work from the links below:\n* [FAIR Phytoliths Project Website](https://open-phytoliths.github.io/FAIR-phytoliths/)\n* Blog: [The Open Archaeobotanist](https://ekaroune.github.io/The-Open-Archaeobotanist/)\n* X (formerly Twitter): [ekaroune](https://twitter.com/ekaroune)\n\nWe would like to thank **Emma** for answering our interview questions about her work with [PalaeoSIG](https://www.britishecologicalsociety.org/membership-community/special-interest-groups/palaeoecology-group/), the special interest group for palaeoecology at the British Ecological Society.\n\nComments are also made in this case study by Dr Althea Davies and Dr Jane Bunting, who are the Secretaries of the PalaeoSIG and the organisers of this project along with Dr Eileen Tisdall.\n\n**1. Why did you start your work on lay summaries?**\n\nI attended an online workshop that PalaeoSIG organised in spring 2020 about [science writing and communication](https://palaeosigbes.wordpress.com/2020/05/11/testing-testing/).\nThis was run by Althea Davies (University St Andrews), Jane Bunting (University Hull) and Eileen Tisdall (University Stirling).\nThis workshop aimed to train palaeoecologists to communicate their research more effectively with non-specialists.\nAs part of the workshop, we were tasked to produce short, accessible summaries of articles that had been suggested as the most influential palaeoecological papers in a recent Palaeoecology special interest group survey and these would then be disseminated in a blog.\n\n\n**2. How did you get started?**\n\nDuring the workshop, we were put into pairs so that we could work collaboratively on writing our two lay summaries.\nMy collaborator and I opted to work in Google docs so that we could start documents for the first draft of each lay summary separately but we could also then go on to collaborate in real-time to edit and discuss our writing using the built-in editing and commenting features.\n\nHere is one of the lay summaries I wrote with my workshop partner Nick Loughlin - [New evidence to assess the 5 reasons Elm almost disappeared](https://palaeosigbes.wordpress.com/2020/11/18/new-evidence-to-assess-the-5-reasons-elm-almost-disappeared/).\n\nOnce the workshop was over, we were asked if anyone wanted to help with editing and publishing the lay summaries.\nSome of us then formed a group of copy editors and summary editors, again to work in pairs to finalise each lay summary every week for release on the project website.\nThe aim was to release one lay summary a week for a whole year.\n\n**3. What impact do you think your lay summaries are making to your research/project/community?**\n\nAlthea told me that the WordPress site has between c.80 and 530 views per month, depending on how many posts we have.\nAs to what impact they're having, she is not sure how to measure this.\nAlthea commented that they didn't set out to be an 'influencer' looking for a high hit rate, rather more of a support mechanism, point of connection and community resource for palaeoscientists working in various disciplines and sectors.\nFor instance, providing an opportunity for blogs by Early Career Researchers who might be unsure about offering one to a 'bigger' organisation, like a journal.\n\n**4. What tools/software do you use most in your lay summaries?**\n\nThe Palaeoecology special interest group used Google Drive to run the project as Google Docs were used to write collaboratively and Google Sheets were used to coordinate the lay summaries and the editing and publishing progress.\nThis allowed us to work synchronously during the workshop and asynchronously over the whole time of the project.\n\nThe blog website uses WordPress.\nAlthea said that she found uploading blogs quite straightforward and this probably reflects Jane's initial setup choices as well as the simplicity of the WordPress format and templates.\n\n**5. Do you have any top tips for other people that might be interested in starting lay summaries?**\n\nWriting lay summaries is a different type of writing so you do have to learn how to do it.\nThe workshop training helped everyone to improve their writing skills as we were given lectures by an expert scientific editor from a popular science news website.\nThis helped me to think about the differences between academic writing and writing for lay audiences.\n\nAlso, you need to write to someone.\nCollaboration is the key to success as another pair of eyes helps to refine and improve your writing further.\n\n**6. Do you have any tips on things to avoid?**\n\nDon't leave in any technical words - this might seem a very hard thing to achieve but there is always a way you can explain or describe them simply instead.\nIf you do have to include a technical word, you should put a definition in brackets or a link to a website that explains the term simply such as Wikipedia.\n\n\n**7. Where do you see your lay summaries writing skills going in the future?**\n\nI have found these skills really useful for several reasons.\nI had to write a lay summary for a recent article I submitted so it helped me to think about how to change my writing style compared to the abstract.\n\nI have also started a new job in the last year that was a project outside of my particular discipline and my first task was to edit lay summaries.\nThis gave me a different perspective about how important they are for clear communication within projects for team members with different specialisms.\n"
  },
  {
    "path": "book/website/communication/lay-summaries.md",
    "content": "(cm-lay-summaries)=\n# Lay Summaries\n\nLay summaries are useful for many purposes.\nThey are usually used to communicate findings in a simple way to the wider public but they have a far greater scope than this.\nThey help to disseminate findings between scientific disciplines as academic research articles are often hard for other disciplines to access.\nThis can aid collaboration within research groups that have a mix of specialists and other stakeholders in the same team.\n\nMore recently, lay summaries are becoming a requirement from academic journals as part of the submission of a research article.\nHowever, writing lay summaries is a specific form of writing and requires training, or at least careful thought, to be able to adapt your scientific writing.\n\n(cm-lay-summaries-what)=\n## What is a Lay Summary?\n\nA lay summary is a summary of a research project or a research proposal that is usually written for members of the public, rather than researchers or professionals.\nIt should be written in plain English, avoid the use of jargon and explain any technical terms that have to be included {cite:ps}`Duke2012summary`.\n\n(cm-lay-summaries-why)=\n## Why Write Lay Summaries?\n\nApart from fulfilling the transparency and collaborative goals of an open science approach, there are specific reasons why writing lay summaries can benefit scientific progress.\n\n[INVOLVE](https://www.invo.org.uk/about-involve/), a national advisory group funded by the UK National Institute for Health Research reported that involving patients and healthcare professionals helps at all stages of a research project, from developing the research question to disseminating the results.\nThe benefits of this direct involvement in research have been identified as follows {cite:ps}`Duke2012summary`:\n* Increasing the relevance of the research.\n* Increasing recruitment to clinical research.\n* Improving the design of the research to address ethical concerns, improve the research tools and make it easier for the people taking part.\n* Improving the quality of the data and its interpretation.\n* Making it more likely that the findings of the research will be used to make a difference to patients and healthcare workers lives.\n\n(cm-lay-summaries-how)=\n## Writing a Good Lay Summary\n\n**The difference between a lay summary and academic writing**\n\nAcademic writing is usually not accessible to researchers outside of your discipline as well as those in non-academic roles.\nIt is therefore a good idea to make all your academic writing more readable as being too ‘academised’ narrows the likelihood of dissemination to wider academic disciplines and the general public.\n\nLess accessible academic writing has four main characteristics {cite:ps}`DunleavyTinkler2021impact`\n* Use of specialised vocabularies.\n* Passive verb use (or passive voice) that is supposed to make the writing more neutral or impersonal.\n* Nouns substituting for verbs to make sentences sound more complicated.\n* The generation of new nouns or acronyms that are discipline-specific.\n\nTherefore, the key to making your writing more accessible is changing this language into a less formal and less technical style.\n\n### Adapting Content for Lay Summaries:\n\n* Know your audience - Most lay summaries are written for a high school-age child’s level of understanding.\nThat's about 14 years old!\n* Minimise jargon - Cut out all scientific words or, if you can’t cut them out completely, add a definition or weblink to explain the word.\n* Logical structure - Introduction sentence, aims and objectives, results and conclusions.\n* Shorten sentences and paragraphs - Lengthy paragraphs just put people off, most people cannot pay attention to paragraphs longer than two or three sentences in length.\n* Use active verbs and active voice - Make it personal, use 'I' and 'we'.\n* Content - The text should provide answers to the essential questions: Who, What, Where, When, Why, How.\n* Relevance and benefits - Aims and objectives clearly written, impact clearly stated.\n* If you are including diagrams, make sure that they are also simplified and include alternative text for greater accessibility.\n\n(cm-lay-summaries-test)=\n## Test Your Readability\n\nHave a go at using one of the resources below to test the readability of the lay summary you have written.\n\nReadability tests:\n* [Hemingway app](http://www.hemingwayapp.com/)\n* [The first word readability test](http://thefirstword.co.uk/readabilitytest/)\n\nHere is a good example of how abstract can be changed into a lay summary: [Perfecting that lay summary](https://bitesizebio.com/10871/perfecting-that-lay-summary/).\n"
  },
  {
    "path": "book/website/communication/open/curriculum-development.md",
    "content": "# Lesson & Curriculum Development\n\n## Overview\n\nCurriculum development is an ongoing process aimed at finding new and effective ways to provide students with intellectually challenging and personally inspiring learning experiences.\nDetermining the appropriate level for students and defining learning outcomes are essential when designing a lesson or curriculum.\nThis process varies based on the program of study, such as undergraduate, postgraduate, or flexible learning programs.\nData science students, for example, learn complex concepts early in their programs, whereas students taking optional data science courses later in their degree do so at a different pace.\nBy understanding the learners and  program requirements and learning outcomes, educators can tailor the curriculum to match the year of study, ensuring course-specific outcomes and competencies are suitably challenging.\nFrameworks like Bloom's Taxonomy can help educators structure courses to progress from fundamental to advanced skills, enhancing the students’ learning experience.\nThis chapter will discuss techniques for defining learning outcomes, designing practical and theoretical teaching sessions, outlining learning principles, and examining the characteristics of adult learning and their implications for educators.\n\n## Defining Learning Outcomes (LOs)\n\nWhen developing a lesson or curriculum, you need to determine the appropriate level of study, as similar courses can be taught in both undergraduate and postgraduate programs.\nThe complexity of the material and the type of degree will vary and determine the learning outcomes.\nFor example, students specialising in data science will encounter more complex concepts earlier in their studies compared to those students not specialising in data science and taking optional courses later in their programs.\n\nOnce the program and its requirements (program learning outcomes) are known, the year of study provides an indication of the level of study.\nWith this context set, you can move on to specifics about the course, such as the **course learning outcomes** and the level of competency expected by the end of the course.\nThese outcomes can be developed using [Bloom's Taxonomy](#effective-learning-outcomes), where earlier courses on a program focus more on remembering and understanding information, while later courses move towards evaluating, analysing and creating new methods and\nknowledge.\n\n```{figure} ../../../figures/effective-learning-outcomes.*\n---\nheight: 500px\nlabel: effective-learning-outcomes\nalt: >\n  A flowchart illustrating the process of lesson and curriculum development. The process starts with “Start lesson and curriculum development” followed by identifying the type of program\n  (undergraduate or postgraduate) and the year of study. It then connects to a section titled “Consider equitable outcomes” which includes steps: “Big Picture” “Identify learning outcomes and\n  student competencies at the end of the course” “Identify mode of assessment and feedback” “Assessment and Feedback (define assessment and feedback aligned with learning outcomes)” “Collect\n  evidence of learning” and “Teaching and Learning (type of resources and materials)” ending with “Plan learning and teaching techniques” and “End”. On the right, Bloom’s Taxonomy is presented\n  as a vertical list of six stages for designing learning outcomes.\n---\n_System for Developing Effective Learning Outcomes for Curriculum or Lessons._ Image created by Gule Saman building on John Biggs and Benjamin Bloom's work. Used under a CC-BY 4.0 license.\n```\n\nThe learning outcomes can be developed using the helpful list of verbs given in [](#blooms-taxonomy-verbs).\nThe LOs provide a broad overview of the course. Next, identify how you will assess the students, considering the frequency and mode of assessment, alongside how you intend to provide feedback and the frequency of providing feedback.\nAt this point, you can collect evidence of previous learning to improve course delivery for future iterations.\nOnce the learning outcomes and assessments have been defined, draft a plan for the **teaching** and **learning techniques** to be used for the course. It is very crucial to ensure that the outcomes of the processes and course are equitable, equity should be considered from the start and not introduced as an afterthought.\n\n\n```{figure} ../../../figures/blooms-taxonomy-verbs.*\n---\nheight: 500px\nlabel: blooms-taxonomy-verbs\nalt: >\n  A colorful bulb‑shaped graphic showing the hierarchical levels of Bloom’s Taxonomy from bottom to top: Knowledge, Comprehension, Application, Analysis, Synthesis, Evaluation, with key action\n  verbs listed beside each level.\n---\n_Bloom’s Taxonomy List of Verbs for creating Learning outcomes (Curriculum/Lesson)._\n_[\"Bloom’s Taxonomy Verbs\"](https://www.fractuslearning.com/blooms-taxonomy-verbs-free-chart/)_ by Fractus Learning is used under a CC BY 4.0 License.\n```\n\n## Types of Sessions\n\nAny learning, especially Science learning, can be divided into two parts: theoretical and practical.\nIt is essential to make both types of sessions engaging for the students to enhance learning, it can be done by incorporating a variety of interactive and dynamic teaching methods, such as multimedia integration, interactive techniques, coding demonstration, personalisation, group work and signposting the lecture contents.\n\n### Theoretical Sessions\n\nCreating a good theoretical knowledge base for any topic is essential for effective learning and their implementation.\n\nThis process has the following key components:\n\n1. **Developing the theory**: Establishing a theoretical foundation is important for data scientists to develop their skills to solve real world problems. Introduce fundamental concepts and\ntheories related to the topic, ensuring that the learners grasp the essential principles before moving to more complex concepts.\nThe explanation should be clear and concise, supported by relevant examples preferably real world to which the students can relate to.\nThese concepts can be demonstrated through a dataset that is provided at the start of the course and examined when each component is being studied.\nThese datasets can be opensource data or mock data that is generated specifically for this purpose.\n1. **Signposting Advanced Resources**: Students can have different levels of learning and interests on a topic.\nSignposting them towards relevant resources, for example, academic papers, books, online resources or expert talks is useful.\nIt is essential to point the students towards reputable resources or provide a curated list for the whole course while dividing it into themes/topics that align with the course contents.\n\n### Practical Sessions\n\nTo make learning more effective and interactive demonstrating the application of the theoretical concepts is useful, designing the practical sessions according to the demographics, capabilities and background of the students is essential.\nPractical sessions should be integrated into the curriculum and lesson design.\n\nThere are different teaching methods that can be used to deliver practical sessions, some of which are summarised in [](#table-training-methods).\nFor example, for shorter sessions (1-hour) you can use **[flipped learning](https://www.advancehe.ac.uk/knowledge-hub/flipped-learning-0)** to maximise the efficiency of the learning process.\nChoosing flipped learning would depend on the demographics and preference of a cohort.\nDepending on the feasibility and preferences various forms of study material can be provided, for example, pre-recorded short lecture, reading material, provision of skeleton code that will be discussed or modified during the session.\nThe in-class time should be dedicated to discussion, problem-solving, Q&A and hands-on activities to make it more engaging.\n\n```{hint} Checklist for planning different types of session\n:class: dropdown\n- [ ] Clearly define the competencies and learning outcomes\n- [ ] Specify the tools and libraries students are expected to learn to use\n- [ ] Learning outcomes of the course/session\n- [ ] Revisit outcomes to help students track their progress\n- [ ] Understand the practical application of the learning\n- [ ] Identify the learning styles to be used: 1. Visual, 2. Auditory and 3. Kin-aesthetic (see [](#table-learning-facilitation))\n- [ ] Identify the mode of student engagement: 1. lecture, 2. brainstorming, 3. case studies, 4. role plays, 5. discussions, 6. reflection, 7. parking lot, 8. storytelling, 9. recordings, 10. guest\nlecture, 11. peer learning  and 12. gamification (see [](#table-training-methods))\n```\n\n### Passive Learning vs Active Learning\n\nPassive learning is a traditional, teacher-centered approach where learners receive information without actively engaging in the learning process.\nThe educator controls the learning environment, delivering content through lectures, demonstrations, or pre-defined exercises.\nIn this setting, students are often passive recipients of information, with limited opportunities for interaction or feedback.\nThe focus is on covering a specific curriculum efficiently, ensuring that learners gain a foundational understanding of data science concepts and tools.\nHowever, this method may not always encourage deep engagement or critical thinking, as learners may not actively apply the knowledge in real-world contexts during the training.\n\nOn the other hand, active learning refers to teaching methods that engage students in the learning process beyond passive listening and note-taking.\nConsequently, it emphasises activities that encourage students to understand contexts and reflect on their actions.\nThis approach can be incorporated into both theoretical and practical teaching sessions.\n\nSome active learning methods include demonstration, cooperative learning, case studies, discussion, project-based learning, or pair programming.\nFor example, in project-based learning, students work on actual data science projects, from data collection and cleaning to analysis and interpretation, to encourage deeper understanding of the concepts.\nPair programming enables students to collaborate on coding tasks and problem-solving, fostering both technical skills and teamwork.\nIn active learning methods, emphasis is placed on autonomy, cooperation, responsibility, creativity, and critical thinking.\n\n:::{seealso} Case study\n👋 Students use Python tools and ChatGPT APIs to analyse structured and unstructured data [@Tsai2024empowering]. Lesson learnt: The key lies in instructors creating unique assignments that build on students' personal experiences and practical skills to connect with practical experiences, enhancing the effectiveness of each teaching session. Generative AI should be used as a tool and not considered the brain by students and instructors.\n:::\n\n**Key elements of active learning in Educational Big Data Analytics** [@Tsai2024empowering]:\n* **Data Acquisition:** Relevant to the problem being solved, considering primary and secondary datsources.\n* **Exploratory Data Analysis (EDA):** Encouraging students to explore and analyse real educational datasets to gain hands-on experience [@Milo2020automating].\n* **Data Cleaning:** Encouraging students to clean data based on the problem's specific requirements, create copies of the data, retain essential features, and supplement with third-party datasets if necessary.\n* **Problem-Solving:** Challenging students to identify and solve data-related problems, fostering critical thinking skills [@aslan2021problem].\n* **Data Visualisation:** Teaching students how to present data through visualisations, enhancing their communication skills effectively [@Waskom2021statistical].\n* **Machine Learning techniques:** Applying appropriate machine learning algorithms to the data considering the nature of the dataset and the problem being solved.\n* **Performance Evaluation:** The performance of the proposed solution should be evaluated and checked against benchmarks or by experts in the field.\n* **Group Activities:** Promoting collaborative learning through group projects, allowing students to learn from their peers on how a data science team works together for the completion of a project [@Qureshi2021factors].\n* **Inquiry-Based Learning:** Encouraging students to actively ask questions and seek answers, promoting curiosity and self-directed learning.\n\n:::{table} Training methods and their applications. Adapted from Abrams, D.M. and Mahar-Piersma, C. (2010) Methods in Training in Training for the Non-Trainer: Tips and Tools. Center for Applied Linguistics. [Accessed on 15/12/2025 at this link](https://ncdacredentialing.org/aws/NCDA/asset_manager/get_file/152143?ver=1189*).\n:label: table-training-methods\n:align: center\n\n| Method                 | Ideal for                                                                                                    |\n| --------               | :----------------------------------------------------------------------------------------------------------- |\n| **Lectures**           | Conveying theoretical information in a short period of time<br/>Briefly introducing a topic through various methods, for example, story telling, solving a puzzle<br/>Imparting knowledge |\n| **Brainstorming**      | Bringing up new ideas on a specific topic<br/>Imparting and sharing participants’ knowledge<br/>Exploring opinions on a topic<br/>Exploring the application of theoretical concepts (developed in lectures) to real world problems<br/>Involving students\n| **Case Studies**       | Considering problems based on real-life situations<br/>Critically analysing how real-world problems were solved and providing alternatives<br/>Identifying possible solutions<br/>Involving students<br/>Engaging students to demonstrate their skill of addressing a problem |\n| **Role Plays**         | Dramatising a problem or situation<br/>Identifying possible solutions<br/>Engaging students prior to a discussion<br/>Teaching skills |\n| **Discussions/Debate** | Imparting and sharing knowledge<br/>Exploring opinions on a topic<br/>Involving students |\n| **Reflection**         | Debriefing sessions, whether simple or challenging<br/>Checking for understanding (could be used for self-evaluation and evaluation of a group about their understanding of a topic)<br/>Ensuring all questions and concerns are covered<br/>Engaging students |\n| **Parking Lot**        | Deferring irrelevant questions or those the educator doesn’t have time to address immediately<br/>Less important questions can be addressed asynchronous via email or course announcement or by sharing relevant resources |\n| **Storytelling**       | Increasing student engagement by starting with a problem narrated as a compelling story. The problem and technique for solving it can be signposted at the end of a previous lecture (like a teaser for the session)<br/>Visualising the story by the help of images, infographics,  plots, such as graphs, in illustrating key points<br/>Encouraging active participation<br/>Providing opportunity for in-depth reflection |\n| **Peer Learning**      | Senior students presenting their work from the same course they completed when they were at the current students' stage, either as a show-and-tell or for feedback<br/>Critical reflection<br/>Promoting a culture of mentorship and continuous learning (learning objectives must be clear and peer engagements structured) |\n| **Recordings**         | Helping students to revise and review content in detail<br/>Fostering inclusivity by providing students who may miss a session or have different learning abilities with the opportunity to catch up<br/>In-person student attendance can still be accomplished by refraining from recording class activities |\n| **Guest Lectures**     | Provide insight into the application of theoretical principles on real-world problems<br/>Bridging the academic-industry gap<br/>Inspiring students and providing insights into possible career paths |\n| **Games** (EdTech)     | Practising skills while having fun<br/>Allowing real-life application of skills<br/>Higher engagement |\n:::\n\n:::{seealso} Case study\n\n👋 Based on four P’s of Creative Learning framework (Projects, Passion, Peers, Play), @Sakulkueakulsuk2018kids outline a novel educational approach using games to teach students.\nThe program encourages students to engage in hands-on projects using the RapidMiner software to predict the characteristics of mangoes, utilising gamified elements to enhance learning and motivation.\nThis approach not only helps students grasp complex AI concepts through practical application but also promotes creativity, collaboration, and critical thinking.\nThe study found that such an integrative method significantly improves student engagement and understanding of interdisciplinary concepts, demonstrating the effectiveness of combining technology education with gamification and real-world challenges.\n:::\n\n## Adult Learning Principles\n\nDeveloping effective and meaningful learning programs for adult learners is a challenge for many higher education institutions.\nAdults learn differently from children and thus, require different teaching methods and approaches.\nThey may also face challenges like financial limitations, preventing them from fully participating in the learning experience.\nThese crucial differences are explored in Adult Learning Theory. Understanding adult learning principles is fundamental when developing learning outcomes and teaching material for postgraduate or flexible learning programs.\n\nAccording to the U.S. Department of Education (2018), adult learners are aged 25 and older.\nThis definition also applies to the UK and the majority of European countries.\n\nBased on [Adult Learning Theory](https://research.com/education/adult-learning-theory#:~:text=1%20Understanding%20Adult%20Learning%3A%20Adult%20learning%20refers%20to,self-directed%20learning%2C%20and%20transformative%20learning.%20...%20More%20items), the [Adult Learning Model](https://lvp.digitalpromiseglobal.org/content-area/adult-learner) synthesises research from the learning sciences with essential skills (for example, problem-solving, numeracy, oral communications).\nLearning styles differ between individuals, and therefore teaching methods should reflect these differences.\n\nAs a common starting point, an adult person receives information through three main sensory receivers (all or a combination of them):\n\n* Visual: learning through watching, observing, and reading;\n* Auditory: learning through hearing;\n* Kinesthetic (movement): learning through moving, doing, touching, and practicing.\n\n:::{table} *Facilitation methods for different Learning Styles.*\n:label: table-learning-facilitation\n:align: center\n\n| Learning style                          | Facilitation methods |\n| --------                                | --------             |\n| Learning by sight (**visual**)          | Handouts<br/>Data visualisation tools such as graph, charts and illustrations for demonstrating techniques;<br/>Supplement heavy-text information with illustrations;<br/>Use interactive dashboards<br/>Use whiteboards |\n| Learning by hearing (**auditory**)      | Lectures<br/>Podcasts and audio resources<br/>Verbal explanation of tasks<br/>Include aural activities, such as brainstorming and [buzz groups](https://www.linkedin.com/pulse/boosting-collaborative-learning-buzz-groups-sheikh-ammar/)<br/>Invite guest speakers from industry<br/>Group discussions and debates |\n| Learning by movement (**kinaesthetic**) | Plan activities that get the participants up and moving<br/>Use coloured markers to emphasise key points on flip charts or whiteboards<br/>Have the participants transfer information from the text to another medium, such as flipcharts<br/>Live coding/debudding demonstration (from scratch or modifying a small component)<br/>Role playing<br/>Gamification<br/>Field trips to labs and companies to observe theory in practice |\n:::\n\nEach of these sensory channels corresponds to specific teaching methods and techniques (see [](#table-learning-facilitation)).\nTherefore, the aim should be to incorporate a blend of methods rather than focusing on just one style of teaching. For instance, use a variety of instructional methods such as lectures, discussions, role-plays (which can be particularly effective for teaching data ethics concepts),  and practical exercises (for example, quizzes, brainstorming sessions).\nAdditionally, provide diverse training materials, including slides, manuals or handouts, and videos, to accommodate different learning preferences (see [](#table-training-methods)).\n\n### Characteristics of Adult Learning & Implications for Educators\n\n* **Adults learn from experiences**\n  All new learning for adults is based on what they already know.\n  Encourage students to use examples from their previous experience as much as possible: conduct a skills assessment first and then add to it by bringing in other sources of information; never assume that the students do not know anything about the subject matter.\n* **Adults learn best from peers**\n  Adults learn best from those of similar age and background. Encourage them to share with one another.\n* **Adults learn best what is relevant to their lives**\n  Adults learn what they want/have time to learn, what they are interested in and what they think will be useful to them in their lives. Use training materials that are relevant to the students and real-world scenarios.\n* **Adults have solid existing knowledge**\n  Adults are likely to have a wealth of experience, skills and ideas. Encourage them to participate fully in the learning process as equals and share what they know.\n  Encourage them to take responsibility for their own learning and actions.\n* **Adults learn best through discussions**\n  As learners grow older, their powers of observation and reasoning often grow stronger.\n  This ability to observe, think and analyse means that in adult or flexible education, all are learners and all are teachers. Try to use discussions as much as possible because it enables adults to be both learners and teachers.\n  Lectures and note-taking are less effective.\n* **Adults learn best through discovery**\n  If an educator teaches only through lectures, then students will probably only remember a fraction of what is said.\n  So, creating participatory sessions where students are actively “saying and doing” will help them remember more from the session.\n\n## Inclusive Teaching & Learning Sessions\n\nCreating an inclusive and supporting environment empowers learners.\nDeveloping inclusive teaching and learning sessions is essential to address the diversity within a student group.\nRecognising this diversity is crucial for reducing student attrition in programs.\nIt is important to be aware of the group's demographics, including differences in race, ethnicity, gender, educational background, professional background, and special needs.\n\nHere are some strategies that can be adopted/adapted to create inclusive sessions:\n\n1. **Develop Self-Awareness and Empathy**\n  Educators should reflect on their own backgrounds and experiences, understanding how these impact their assumptions and interactions with students.\n  Building empathy by engaging with students, showing them that they matter, and demonstrating a genuine desire to understand their unique perspectives is crucial for the course.\n1. **Create a Welcoming Learning Environment**\n  Establish a space where students feel welcomed, respected, and valued.\n  This can be achieved by creating an environment of mutual respect, encouraging collaboration and positive peer interactions, implementing a code of conduct, and working to inhibit stereotyping.\n1. **Select Appropriate Teaching Methods**\n  Choose teaching methods suited to the diverse group being taught.\n  Design activities that consider the factors identified in 1 (develop self-awareness and empathy), ensuring students feel a sense of belonging, see improvement in their competencies, and develop an interest in the course.\n  For example: lectures can be recorded for students who are unable to attend a session or need more time to understand a specific topic at their pace.\n  However, to prevent a decline in attendance due to the availability of recorded content, interactive activities should not be recorded.\n  This encourages students to attend lectures and emphasises the value of participating in these activities for a more comprehensive learning experience.\n1. **Collaborate with Academic Colleagues**\n  Work with other academics in the field to develop and share practices that maximize inclusion.\n  Inclusivity is a community-wide effort.\n\n```{hint} Checklist for creating an inclusive environment\n:class: dropdown\n- [ ] Encourage students to use **office hours** for introductions, building relationships, and making them feel more comfortable seeking help.\n- [ ] Conduct **anonymous surveys** to understand student expectations and areas of interest for course development.\n- [ ] Provide **mentorship** by connecting students with mentors or buddies of similar backgrounds for guidance and encouragement.\n- [ ] Provision of **resources** ensuring the institution provides necessary resources so students would not  need to commit an expense towards them.\n- [ ] Use **multimodal teaching methods** to cater to learners with diverse backgrounds and capabilities.\n- [ ] **Foster a growth mindset** by encouraging students not to compare themselves with peers and reassuring them they will learn over time.\n- [ ] **Validate challenges faced by students**, acknowledging that data science can be difficult.\n- [ ] **Celebrate small successes** and accomplishments to boost student confidence.\n```\n\n## Summary\n\nIn conclusion, the development of an effective lesson or curriculum requires careful planning and consideration of various elements, including the level of study, program requirements, learner\nrequirements and appropriate teaching methods.\nBy clearly defining competencies and learning outcomes, selecting suitable assessment methods, and incorporating diverse teaching techniques, educators can create engaging and equitable learning experiences. Whether through theoretical or practical sessions, using a blend of methods to cater to different learning styles ensures that students can grasp and apply complex concepts effectively.\nBy embracing both conventional and participatory training approaches, educators can foster a dynamic and inclusive learning environment that prepares students for real-world challenges, particularly in data science.\n\n## Resources for Creating Engaging Teaching and Learning Content\n\n### Creating Accessible Learning & Teaching Materials\n\n* [The National Center on Accessible Educational Materials](https://aem.cast.org/) offers support, resources, and guidance for developing accessible learning and teaching materials.\n* To select suitable colour palettes based on WCAG Guidelines, you can use [colorsafe.co](http://colorsafe.co/), which provides text and background contrast ratios (a score above 3 is considered\nacceptable, with higher scores being better).\n* To verify webpage accessibility for individuals with various abilities and disabilities, you can use a disability simulator like [funkify.org](https://www.funkify.org/).\n* For identifying areas on a webpage that require improvement, [siteimprove.com](https://www.siteimprove.com/) is a useful tool.\n* [ColorBrewer 2.0](https://colorbrewer2.org/) offers optimised, contrast-checked, and colorblind-friendly colour schemes for creating clear and accessible teaching materials.\n\n### Increasing Student Engagement\n\nEducational technology (EdTech) tools are designed specifically to enhance the teaching and learning experience, improve outcomes and increase accessibility, collaboration and engagement\namongst students and educators.\nFollowing is a list of useful resources.\n\nHowever it is worth noting that this field is constantly evolving, with new resources emerging and existing ones updating:\n* [Kahoot](https://kahoot.com/) offers interactive quizzes, games, real-time feedback, easy to create content and also has a library of pre-made quizzes. It gamifies learning through\n  competition and is suitable for in-person and remote learning.\n* [Mentimeter](https://www.mentimeter.com/) has features for creating real-time polls, quizzes, word clouds and Q&A sessions. It helps gather instant feedback from students and creates\n  interactive presentations for increased engagement.\n* [Wooclap](https://www.wooclap.com/) has the option to create live polls, quizzes, brainstorming tools and audience interaction features. It can integrate with presentation software to create\n  interactive lectures.\n* [Padlet](https://padlet.com/) is a collaborative online bulletin board with real-time updates. Participants (students, educators, for example) can post notes, links, images and videos facilitating\n  interactive and collaborative projects.\n* [Miro](https://miro.com/) is a collaborative tool that can be used for brainstorming sessions, virtual workshops and project management.\n* [Plickers](https://get.plickers.com/) is an interactive tool that allows teachers to collect real-time feedback from students using cards. Each student holds up a card to answer a question,\n  and the teacher scans the room with a smartphone or tablet. It's particularly useful in classrooms without sufficient technology for each student.\n* [Nearpod](https://nearpod.com/) is an interactive presentation and assessment tool that enables teachers to create and deliver lessons with embedded quizzes, polls, and videos.\n  It supports real-time student engagement and provides instant feedback, making it ideal for both in-person and virtual classrooms.\n* [Quizizz](https://quizizz.com/) allows educators to conduct student-paced formative assessments in a fun and engaging way.\n  Teachers can create quizzes or use those shared by other educators.\n  The platform offers immediate feedback and can be accessed by students from any device.\n* [GoSoapBox](https://www.gosoapbox.com/) is used in classrooms to keep students engaged through quizzes, polls, and discussions.\n  It allows educators to gauge the comprehension of students continuously and adjust the pace of teaching accordingly.\n* [Formative](https://en-gb.formative.com/) is a web-based assessment tool that lets teachers create assignments and assessments that students can respond to in real-time.\n  Educators can provide immediate feedback and track individual student progress.\n* [Quizalize](https://www.quizalize.com/) is a gaming platform where teachers can turn formative assessment into a fun classroom team game.\n  It features detailed class and student-level analytics, helping educators identify who needs help and on what topics.\n\n##  Afterword\n\nThis chapter has been written with members of the Educators community that formed as a result of the Data Science and AI Educators Programme (DSAIEP), which ran at The Alan Turing Institute\nbetween 2022 and 2023. We would like to acknowledge the contributions of the entire community and the programme organisers. Special thanks to Dr Gule Saman, Thao Do and Denise Bianco who have\nwritten this chapter, and the reviewers for their valuable comments and support throughout the process.\n"
  },
  {
    "path": "book/website/communication/open/education.md",
    "content": "(cm-open-education)=\n# Open Education \n\n(cm-open-education-what)=\n## What is Open Education\nOpen Education is a collective term that encompasses educational resources, tools and practices that can be freely used in the digital environment without legal, financial or technical barriers. \nOpen Education can also include [Open Pedagogy](http://openpedagogy.org/open-pedagogy/) which also focuses on the process of collaboratively developing educational practices and structures. \nIn open educational practices there is more space for [participation of learners in the knowledge creation and sharing](https://opencontent.org/blog/archives/2975), empowering learners and stimulating peer-learning and colllaboration.  \n\n(cm-open-education-why)=\n## Why Open Education?\n\nOpen Education is important as it:\n\n- Facilitates broader and more **equal access** to access to knowledge and knowledge generation.\nOpen Education is rooted in the human right to access high-quality education.\nFor example, there is evidence that [students may avoid paying for text books at the expense of their academic success](https://www.psu.edu/news/university-libraries/story/students-may-avoid-paying-textbooks-expense-academic-success/).\n- Is **easier to use**: \n    - Easier to build upon and correct the materials, which facilitates customisation of your education curriculum.\n    - Easier to collaborate, participate and share resources.\n- **Reduces duplication of effort**: If an educator needs materials for teaching and they can access open materials, then they need not make their own from scratch, thereby saving time.\n- Is generally **more accessible** due to the use of open formats compared to proprietary formats in which files cannot be changed. \n    - Formats like Microsoft docx are proprietary, so preference should be given to open formats such as ODT and HTML work with a variety of software. \n    - While .pdf is an open format, it is also more closed in the sense that it is difficult to edit compared to formats such as RTF and HTML. \n    - Accessibility is not guaranteed! \nLearn more about how to improve the accessibility of your resources: \n        - [How to Create Engaging Open Educational Resources without Sacrificing Accessibility](https://www.youtube.com/watch?v=UtOCI5TqtQI)\n        - [OER and Accessibility: Working Toward Inclusive Learning](https://sparcopen.org/news/2018/oer-accessibility-working-toward-inclusive-learning/)\n        - Read the {ref}`Communicating Accessibly section<cm-comms-overview-accessibly>`\n- Open [does not necessarily exclude revenue generation](https://edscoop.com/how-traditional-textbook-publishers-can-do-well-by-the-oer-community/)\n- Open Educational resources [may be **more effective**](http://openedgroup.org/review) than [traditional materials that are more expensive](https://www.huffpost.com/entry/college-textbooks-do-you_b_8261086). \nSee also {cite:ps}`Colvard2018OERsuccess`. \n\nLearn more about why Open Education matters: \n- '[Open Education Matters: Why is it important to share content?](https://www.youtube.com/watch?v=dTNnxPcY49Q)' \n- '[Why Open Education Matters](https://www.youtube.com/watch?v=gJWbVt2Nc-I&list=PL741678F352148469)'\n- Open Education [benefits (and stakeholders)](https://openeducationalresources.pbworks.com/w/page/24838012/Stakeholders%20and%20benefits)\n- '[Why Open Education Matters](https://www.opensocietyfoundations.org/voices/why-open-education-matters)'\n\n(cm-open-education-promotion)=\n## Examples of promotion of Open Education\n- [Recognizing “Open” in Tenure and Promotion at University of British Columbia](https://sparcopen.org/news/2017/recognizing-open-tenure-promotion-ubc/) \n- [What can university leaders do?](https://sparcopen.org/events/sparc-more-2016/what-university-leaders-can-do-to-promote-open-and-how-librarians-might-help/)\n\n\n(cm-open-education-oers)=\n# Open Educational Resources (OERs)\n\nOpen educational resources (OERs) [{term}`def<Open Educational Resources>`] are teaching and learning materials that can be freely used and reused for learning or teaching at no cost, and without needing to ask permission. Examples are courses, including Massive Online Open Courses (MOOCs), lectures, teaching materials, assignments, and various other resources. OERs are available in many different formats compatible with online usage, most obviously text, images, audio, and video. Anyone with internet access can access and use OERs; access is not dependent on location or membership of a particular institution.\n\nUnlike copyrighted resources, OERs have been authored or created by an individual or organization that chooses to retain few, if any, ownership rights. In some cases, that means anyone can download a resource and share it with colleagues and students. In other cases, this may go further and enable people to edit resources and then re-post them as a remixed work. How do you know your options? OERs often have a [Creative Commons licence](https://creativecommons.org/) or other permission to let you know how the material may be used, reused, adapted, and shared.\n\nFully open OERs comply with the [5 Rs](http://opencontent.org/definition/):\n\n- _Retain_: the right to make, own, and control copies of the content.\n- _Reuse_: the right to use the content in a wide range of ways (for example, in a class, in a study group, on a website, in a video).\n- _Revise_: the right to adapt, adjust, modify, or alter the content itself (for example, translate the content into another language).\n- _Remix_: the right to combine the original or revised content with other open content to create something new (for example, incorporate the content into a mashup).\n- _Redistribute_: the right to share copies of the original content, your revisions, or your remixes with others (for example, give a copy of the content to a friend).\n\n(cm-open-education-oers-how)=\n## How to set up OERs? \n\n1. Choose a platform.\n2. Collect resources under an open license\n   For more information, see:\n    - [Attribution & Fair Use: Copyright in Open Education](https://www.youtube.com/watch?v=jGTUHdadqJU)\n    - [Copyright ownership in higher education and potential implications for Open Education](https://doi.org/10.17161/jcel.v5i1.14946) by {cite:ps}`Gumb2022oer`\n    - and {ref}`Licensing data section<rr-licensing-data>`\n4. Ask for feedback.\n5. Share and promote your resources.\n\nSee also a short video on '[Creating Open Educational Resources: Tips for New Creators](https://www.youtube.com/watch?v=DV-HiWtMq1U)' and '[A Guide to Making Open Textbooks with Students](https://press.rebus.community/makingopentextbookswithstudents/)'\n\n(cm-open-education-oers-examples)=\n## Examples of OERs\n- The Turing Way\n- [R for Data Science](https://r4ds.had.co.nz/)\n- [OER Commons](https://www.oercommons.org/)\n\n(cm-open-education-resources)=\n# Resources\n- [SPARC Open Education Leadership Program curriculum](https://sparcopen.org/our-work/open-education-leadership-program/curriculum/)\n- [The OER Starter Kit ](https://iastate.pressbooks.pub/oerstarterkit/)\n- [Groningen University's Resource lists overview for working with Open Educational Resources](https://libguides.rug.nl/OER/OERResourceLists)\n- [Open Education Group](https://openedgroup.org/)\n- [Open Education Network](https://open.umn.edu/oen/)\n- [Open Educational Resources](https://www.surrey.ac.uk/library/open-research/open-educational-resources) by the University of Surrey\n- Webinar on '[Creating and Sharing Open Educational Resources (OER)](https://www.youtube.com/watch?v=6JgoUbED4rM)'\n- Webinar on '[Another Kind of Open: exploring the benefits and barriers to the creation and use of open educational resources](https://www.youtube.com/watch?v=Mc7eV4gHA_0)' \n- [Podcast interview with Nicole Allen](https://leadinglinespod.com/episodes/episode-029-nicole-allen/)\n- Video Session on '[Open Education Through an Ethics of Care & Justice](https://www.youtube.com/watch?v=i74KEAJnoPY)'\n- Book 'Teaching to transgress' by bell hooks. \n"
  },
  {
    "path": "book/website/communication/open/embedding-ds.md",
    "content": "(cm-open-educators)=\n# Embedding Data Science & AI across Disciplines: Context and Suggestions for Educators\n\n## Overview\n\nData science (DS) is no longer limited to mathematicians, statisticians, and computer scientists. As its value becomes apparent in non-traditional disciplines, students in these areas\nnaturally seek to upskill in DS. With technology increasingly shaping our future, it is essential to offer opportunities to develop these skills across a broader range of fields, ensuring the\nnecessary expertise and competencies are cultivated beyond their traditional domains. This chapter profiles non-cognate students, offers suggestions for educators teaching Data Science in non\ncognate disciplines, and highlights a series of good practices and pedagogical approaches for engaging with non-cognate students.\n\n## Introduction\n\n```{note}\nThe term “non-cognate student” in this chapter refers to a student who is pursuing a degree or studying in a field that is unrelated or different from their previous academic background or\nqualifications. In this context, “cognate” refers to a subject or field that is closely related or similar to the student’s prior academic experience. For example, if a student with a\nbackground in engineering decides to pursue a graduate degree in psychology, they would be considered a non-cognate student because engineering and psychology are unrelated fields. The term is\ncommonly used in academic settings, particularly when discussing admissions or program requirements. However, for more inclusive and accessible language, you may prefer to describe someone\nsimply as “a student without a background in data science or AI”.\n```\n\nData science is a truly interdisciplinary field that can be described as the integration of computational and digital technologies, statistical and mathematical knowledge, and disciplinary\nexpertise @Jiang2022datascience. \nIt also represents a rapidly growing methodological approach for educational practice @Estrellado2020data and research @McFarland2021education.\n\n```{figure} ../../../figures/data-science.*\n---\nheight: 500px\nlabel: data-science\nalt: >\n  Venn diagram with three partially overlapping circles representing components of data science.\n  The left circle (light yellow) is labeled Computer Science, the right circle (light green) is Mathematics & Statistics and the bottom circle light purple is Domain Knowledge.\n  The overlap between Computer Science and Mathematics & Statistics is labeled Machine Learning.\n  The overlap between Mathematics & Statistics and Domain Knowledge is Research.\n  The overlap between Domain Knowledge and Computer Science is Software Development.\n  The central area where all three circles intersect is labeled Data Science.\n---\nThe interdisciplinary nature of Data Science. Illustration by Denise Bianco (2025). Used under a CC-BY 4.0 licence.\n```\n\nIn the constantly growing data-intensive society, data science is being applied within various **non-cognate disciplines** such as arts, history, and social sciences. It’s important for people\ninvolved in training people in these disciplines to understand how to adapt tools and develop skills in different contexts, particularly data literacy, and how educators can support the\ndevelopment of these specific competencies. Data literacy is traditionally defined as the ability to explore, understand, and communicate data as information. This definition can be expanded by\na recent contribution from @Gebre2022conceptions who identifies key elements of data literacy, including general competencies such as attitudes toward data and specific skills like using particular tools. Gebre also highlights context-specific factors that impact how learners relate to data, which are highly relevant when teaching to non-cognate students.\n\n## What does the typical learner profile from a non-cognate discipline look like?\n\nNon-cognate does not necessarily mean non-computing/non-mathematics/non-STEM and, most importantly, it does not limit the student’s ultimate potential to acquire new knowledge. However, being a\nnon-cognate student may have implications for the student’s course selection, prerequisites, and potential challenges in adapting to the new field of study. In some cases, non-cognate students\nmay need to complete additional coursework or prerequisites to gain the necessary knowledge and skills to succeed in their chosen field.\n\nWhile it’s challenging to define a single profile due to varying circumstances, some general traits can be identified:\n\n* Career changers\n* Driven by personal interest\n* In need of expanding their skill sets\n* Have existing professional and work experience\n\nNon-cognate students present both challenges and opportunities for educators. Teaching Data Science in a programme that is not discipline-specific requires tailored preparation and adaptation\nof content and language according to the audience.\n\n* **Motivation Challenges**: Their motivation for joining the course often differs from that of students in core Data Science programmes. They may have very specific questions, viewpoints, and perspectives.\n* **Background and Skills Challenges**: Varying backgrounds and skill levels among students require further assessment and integration processes.\n* **Learning Needs Challenges**: Often, non-cognate students come with questions related to their previous experiences, which are quite specific. Always consider their existing knowledge and clarify their needs. Avoid delving too deeply right away; superficial knowledge may be sufficient in some situations.\n* **Language Challenges**: Different disciplines speak different languages. This means starting by reviewing glossaries and terms to ensure everyone is on the same page, introducing vocabulary gradually in a way that is not overwhelming, avoiding discipline-specific jargon unless necessary, and sharing additional resources to support their learning.\n* **Structural Challenges**: Lack of existing frameworks and supporting structures for cross-disciplinary learning leaves educators more independent in their approach.\n\nBut also…\n\n* **Connection Opportunities**: Linking elements such as domain knowledge, methods, people, and backgrounds that would otherwise remain unconnected can bring new, valuable insights.\n* **Multi-approach Opportunities**: Applying various disciplinary perspectives to specific case studies can enrich the outcomes.\n* **Problem/solving Opportunities**: Using multiple approaches to knowledge in problem-solving discussions can yield more innovative solutions.\n* **Knowledge-sharing Opportunities**: Cross-disciplinary learning equips students with skills and modes of thinking informed by multiple worldviews.\n* **Flexibility**: The lack of strict frameworks can be an opportunity to explore different collaborative models and integrate existing frameworks in new and productive ways.\n\n## Understanding the fundamental concepts of AI and Data Science\n\nWhen teaching non-cognate students, it is crucial to first assess their understanding of AI and data science fundamentals. The multi-stage framework proposed by @Kandlhofer2016artificial for AI\nliteracy can serve as a valuable reference for evaluating students’ knowledge.\n\nDepending on existing knowledge, teaching may need to focus on:\n\n* Building initial awareness\n* Experimenting with and familiarising students with the theory behind certain AI topics\n* Encouraging independent problem-solving\n* Fostering an understanding of core AI topics and introducing advanced AI concepts\n* Enabling students to independently acquire and apply knowledge\n* Helping students become AI fluent\n* Applying problem-solving methods at a higher level of abstraction\n* Developing a fundamental understanding of AI topics\n\n```{figure} ../../../figures/kandlhofer-2016.*\n---\nheight: 500px\nlabel: kandlhofer-2016\nalt: >\n A flowchart visualising the structure of foundational AI and computer science topics, using color-coded boxes connected by arrows to show progression and relationships.\n Top row (left to right): Light blue box labeled Automata with bullets:\n Illustrating decision making process.\n Connected by a right-pointing arrow to a medium blue box labeled Intelligent agents with bullets:\n Demonstrate the modelling process of making and executing decisions.\n Connected by another right-pointing arrow to a dark blue box labeled Graphs, data structures, basics of computer science with bullets:\n Stack, queue, tree.\n Control statements, paradigm.\n Middle row (left to right), connected below the top row with downward arrows:\n Purple box labeled \"Sorting\" with bullets:\n Fundamental concept in AI/computer science\n Sorting algorithms\n Connected by a right-pointing arrow to a violet box labeled Problem Solving by search with bullets:\n Essential concept in AI with numerous areas of application\n Connected by another right-pointing arrow to a magenta box labeled \"Classic Planning\" with bullets:\n Modelling problems, making decisions, establishing and evaluating plans\n Logic\n Bottom row:\n A dark pink box labeled \"Machine learning\" connected by a downward arrow from \"Problem Solving by search\", with bullets:\n Different approaches to learning agents\n Decision trees and neural networks\n---\nAdaptation of Kandlhofer et al. (2016) *Topics of AI Literacy*. Illustration by Gule Saman (2024). Used under a CC-BY 4.0 licence.\n```\n\n```{dropdown} Case Study: UCL, Built Environment: Sustainable Heritage MSc, Data Science route\n:class: tip\nThis Master’s degree creates expert data scientists taught through the exciting multidisciplinary lens of cultural heritage (historic buildings, sites, landscapes, museums and collections).\nStudents will develop advanced data science skills, such as coding, crowd-sourced data science, machine learning and data visualisation, and apply them to the complexities of acquisition,\nanalysis and exploitation of the variety of data that is generated and used in heritage contexts. The course is open to applicants with a technical background such as statistics or data\nscience, as well as applicants from other disciplines (for example: conservation, curation, history) that want to develop data science skills. This degree route is suited both to recent\ngraduates and early or mid-career professionals looking to retrain or up-skill.\n```\n\n## Suggestions for Educators\n\nDS educators teaching students without a data science or AI background would need to pay particular attention to the students’ background knowledge, concepts, and practical and metacognitive\nskills. Assessment for learning, differentiated instruction, collaborative learning, and other effective teaching methods, can be tailored to the unique needs of data science and AI education\nacross disciplines.\n\nIt is important not to make assumptions about students’ prior knowledge and skills. The suggestions below can apply to broad data science and AI education, but educators teaching students\nwithout a data science and AI background may find them particularly useful for tailoring teaching and learning to students’ needs and skill sets. These different pedagogical approaches are\ndesigned to help you gain insights into your students’ understanding of specific concepts or topics, allowing you to better support their individual progress.\n\n### Assessment for Learning\n\nAssessment for Learning is used during learning, and it is useful to identify student demographics, student needs and starting points, and to generate feedback they can use to improve\n   performance. Assessment for Learning can take different forms: it could be as simple as observing class discussions, asking questions in oral or written form, or using collaborative tools\n   such as Miro or Notion to leverage visual aids and conceptual mapping.\n\nAssessment for learning informs changes you can make to your lesson straight away to make it more effective. Through assessment for learning, students will:\n\n* **Introduce themselves**: understanding WHO. General information will help you understand the overall cohort’s demographics and map out discipline-specific interests.\n* **Explain what they can do**: understanding HOW. Assess existing skills and expertise (this is also helpful for students to understand their capabilities).\n* **Express preferences about what they want to do**: understanding *WHAT*. Let students describe their ideal scenarios; this will help you refine and tailor your content.\n* **Share their goals and aspirations**: understanding WHY. What do they need this for?\n\nIn *Seven Myths of Education* @Christodoulou2014myths suggests that teachers should act as “thermostats, not thermometers” meaning they should not only measure where a student is but also\nmake necessary adjustments to guide them to where they need to be. This perspective is fundamental when thinking about assessment for learning, and to understand the critical role of effective\nfeedback.\n\n#### Effective feedback in assessment for learning\n\nEffective feedback requires active listening from both the educator and the student. As part of the questioning process, it is an essential\ntool for developing students’ thinking. Feedback must be task-focused, timely, specific, clear and unbiased. In this way, you will provide your students with information about their current\nperformance and guidance on how they can improve to reach their goals.\n\n### Formative Assessment\n\nFormative Assessment supports teaching by assessing a learner’s state and inferring next steps @Zhai2020meta. It is similar to AfL, as both methods are used to\n   understand student progress and inform teaching. However, while AfL is carried out during learning to inform teaching and identify areas for improvement, formative assessment is used for\n   day-to-day assessments to gauge and explore students’ understanding of a topic\n\nThe formative assessment process usually consists of the following three practices @Stanja2022formative :\n* **Eliciting**: The collection of evidence for students’ learning using tasks and questions\n* **Interpreting**: Analysing what students are saying, writing or doing and what this indicates about their thinking; and identifying implications for learning based on the previous analysis\n* **Responding**: Giving feedback to students or adaptation of instruction.\n\nFormative assessments in data science and AI education should focus on providing timely and actionable feedback that helps students improve their understanding and skills progressively.\nExamples include:\n\n* **Code reviews**: Regularly assessing students’ code for functionality, efficiency, and style.\n* **Concept checks**: Quick, informal assessments during lessons, such as quizzes or hands-on tasks, to gauge understanding of recent topics like machine learning algorithms or statistical\n  methods.\n* **Data challenges**: Mini group competitions where students predict outcomes based on given datasets, which are then discussed in class to learn from various approaches. When teaching in\n  multidisciplinary settings, the challenges should be situated in the disciplinary domain that is most familiar to students.\n\n### Differentiated Instruction\n\nDifferentiated Instruction is a method that considers students’ individual learning styles and levels of readiness before designing a lesson plan @tomlinson2017differentiate.\n   Differentiated instruction sits between “single-size” instruction and individualised instruction, involving proactive planning of various ways for students to express their learning.\n   While it may require fine-tuning for individual learners, offering multiple options increases the likelihood of effectively meeting the needs of many students. In this model, the teacher is\n   viewed as an organiser of knowledge rather than a gatekeeper.\n\nDifferentiated instruction in the context of data science and AI can by applied through:\n\n* **Tiered assignments**: Provide different levels of difficulty in project tasks or problem sets, allowing students to engage at a level that matches their proficiency.\n* **Learning pathways**: Create alternative learning modules that cater to different interests applications of data science and AI, letting students choose based on their existing knowledge,\ncareer goals or academic interests.\n* **Visual aids and simulations**: Use visual representations of algorithms and data flows, which can help visual learners better understand complex concepts.\n* **Collaborative Learning**: Leveraging collaborative learning strategies can enhance understanding of data science and AI and innovation across disciplines. Techniques include:\n* **Group work and Study groups**: Encourage formation of study groups that meet regularly to discuss course content and collaborate on group projects.\n* **Paired programming**: Working collaboratively in pairs at a single computer helps students to plough through certain types of coding problems, supporting peer learning and knowledge sharing.\n* **Peer teaching**: Similarly, assign students to teach certain concepts or technologies to their peers, reinforcing their own understanding and aiding others.\n* **Flipped classrooms**: Providing students with information before class means that students can learn at their own pace, take responsibility for their learning and actively engage in class. This will also improve collaboration between students and between students and educators, who can get to know them better and provide better support.\n\n## Summary\n\nIn conclusion, teaching students without a data science or AI background can be challenging for educators, but it also provides many opportunities, especially in terms of creativity, knowledge\nsharing, and problem-solving. We recommend conducting an initial assessment of students’ understanding of AI and data science fundamentals (data literacy) to determine where the focus should\nbe. It is important not to take students’ existing knowledge and specific expertise for granted. Teaching approaches such as assessment for learning can be useful for this purpose, while\nformative assessment and differentiated instruction, combined with a blend of methods to cater to different learning styles, can support the design of teaching content and the adjustment of\nmaterial according to students’ needs. Collaborative learning is also an effective way to engage students, leverage their existing knowledge, and foster a supportive environment for rich\nexchanges and co-development.\n\n## \n_This chapter has been developed with members of the Educators community that formed as a result of the Data Science and AI Educators Programme \n(DSAIEP), which ran twice at The Alan Turing Institute between 2022 and 2023. We would like to acknowledge the contributions of the entire community \nand the programme organisers. Special thanks to Denise Bianco and Dr Gule Saman who have written this chapter, and the reviewers for their valuable \ncomments and support throughout the process._\n"
  },
  {
    "path": "book/website/communication/open.md",
    "content": "(cm-open-scholarship)=\n# Open Scholarship\n\n\n```{figure} ../../figures/evolution-open-research.*\n---\nname: evolution-open-research-cm\nalt: This image shows a researcher evolving their research practices to move towards the era of open research. The image starts with the person looking anxious about engaging with open science, slowly they take a few steps, feel comfortable about sharing their work, and finally start to collaborate with others.\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n\n(cm-open-prerequisites)=\n## Prerequisites\n\nNo previous knowledge is needed. \nRelated information to Open Scholarship can be found in the {ref}`rr-open` chapter, that also has a more detailed summary of the importance and motivation behind Open Scholarship. \n\n(cm-open-summary)=\n## Summary\n\nOpen research and its subcomponents fit under the umbrella of a broader concept - open scholarship [{term}`def<Open Scholarship>`]. \nOpen scholarship aims to transform research by making it more reproducible, transparent, reusable, collaborative, accountable, and accessible to society.\nThis chapter aims to give a brief overview of the multiple aspects of open scholarship.\n \n(cm-open-motivation)=\n## Motivation\n\nOpen Scholarship increases the impact of research as it reaches a wider audience, facilitates participation and collaboration in research and advances knowledge more effectively. \n"
  },
  {
    "path": "book/website/communication/os-comms/os-comms-channels.md",
    "content": "(cm-os-comms-channels)=\n# Communication Channels\n\nCommunication within a community impacts the contributor experience, influences an individual's sense of belonging, and provides a historical record of project decisions.\n\nThe choice of channels will depend on the specific requirements of your project, such as keeping the community informed of any known bugs or upcoming features, assessing current needs from the community members, inviting comments on the project's management plans, facilitating the overall progress of the project, as well as having somewhere to field questions and receive/act on feedback.\n\nWhen setting up your communication channels, there are some important things to consider, such as the following:\n\n* How easy is it for the community to find these channels and subscribe/unsubscribe to them?\n* Are they moderated? Under-represented groups may not participate if a channel is a free-for-all.\n* How easy is it for members of the community to find and join specific conversations they are interested in?\n* Will it be a \"noisy\" channel (for example, does the channel generate lots of notifications)?\n* Can users control or filter what kind of information they receive?\n\nThere are three commonly used channels: mailing lists (such as [Topicbox](https://www.topicbox.com/) or [Google groups](https://support.google.com/mail/thread/14635045?hl=en)), community forums (such as [Vanilla Forum](https://vanillaforums.com/en/software/) or [Discourse](https://www.discourse.org/)) and chats (such as [Gitter](https://gitter.im/) or [Slack](https://app.slack.com/signin)).\nBesides these, many communities also use platforms for weekly or monthly newsletters, blogs, and social media on [X (formerly Twitter)](https://x.com/) or [Facebook](https://www.facebook.com/).\n\nIn the table below, some properties of the first three communication platforms have been highlighted, which will allow open source project leaders to choose the most appropriate channels for their communities.\n\n(cm-os-comms-channels-features)=\n## Features of Different Communication Channels\n\nThe table below compares features of mailing lists, forums and chats.\nHere are some of the questions one might wish to ask when thinking about each feature:\n\n- **Media sharing:** Can media, such as screenshots, be easily shared on this platform?\n- **Archivable:** Is the history of the conversations easily accessible?\n- **Persistent:** Do the conversations remain available and accessible on the platform? If not \"forever\", for how long? If not all conversations, what proportion?\n- **Noisy:** How many notifications will people receive, and can the number of notifications be managed by users/administrators?\n- **Open:** Can anyone join the platform or is there an invitation/approval process?\n- **Consistent user experience (UX):** Does the platform appear consistent regardless of the user's browser or email client?\n- **Threading/filtering of conversations:** Is it apparent who is replying to whom and what topic each string of messages is addressing?\n- **Social sharing:** Can conversations easily be shared on social media platforms for the purposes of promotion or community engagement?\n- **User profiles:** Is it easy to tell who is participating in the conversation and what their roles are on the project?\n- **\"Following\"/\"blocking\" capabilities:** Can users choose whose messages they are alerted to?\n- **Searchable by topic:** Can the conversations be categorised and searched by category?\n- **Easily exportable:** Are the conversations stored in a consistent format? Are tools available to export the conversations (to an archive, for example)?\n\n| Feature | Mailing Lists | Forums | Chat |\n| :--- | :---: | :---: | :---: |\n| Media sharing | ✅ | ✅ | ✅ (cumbersome) |\n| Archivable | ✅ | ✅ | |\n| Persistent | ✅ | ✅ | |\n| Noisy | ✅ | | ✅ |\n| Open | | ✅ | ✅ |\n| Consistent UX | | ✅ | ✅ |\n| Threading/Filtering of conversations | | ✅ | ✅ |\n| Social sharing | | ✅ | ✅ |\n| User profiles | | ✅ | ✅ |\n| \"Friending\"/\"Ignoring\" capabilities | | ✅ | |\n| Searchable by topic | | ✅ | |\n| Easily Exportable | ✅ | ❓ | |\n"
  },
  {
    "path": "book/website/communication/os-comms/os-comms-issue-tracking.md",
    "content": "(cm-os-comms-issue-tracking)=\n# Issue Tracking\n\nMost software development projects have some kind of issue board to easily track current issues in the project, such as bug fixing, rolling out new features, or community engagement plans.\n[GitHub](https://github.com) (a very popular collaboration platform) has a built-in [issue tracker](https://guides.github.com/features/issues/) and [project boards](https://help.github.com/en/github/managing-your-work-on-github/about-project-boards) where issues can be collated together to track progress towards a more specific, higher-level goal.\n\nThis section is a discussion around why issue tracking is useful and where you can store them.\n\n(os-comms-issue-tracking-purpose)=\n## What is the purpose of your issues?\n\nThere are many different reasons for keeping/tracking issues related to a project.\nThe platform for issue tracking and the features tracked by those issues can influence how your community interact with your project.\n\nMostly, issues are used to track bug reports, feature requests, opportunities for community members to engage, and so on, then a public issue board will allow your community to get a clear overview of what's coming down the pipeline and how they can get involved.\n\nLet's look into centralised and decentralised/distributed issue boards and how they might engage your community.\n\n(os-comms-issue-tracking-purpose-issues)=\n### Issues per Repository (Decentralised/Distributed)\n\nIf your project is split across multiple repositories, then it's a good idea to keep the issues specifically related to that module within that repository: a decentralised system.\nThis allows your community to focus their attention on what is important to them.\n\nThis approach has several smaller issue boards for each repository (or module) within your codebase.\nThis method has a lot of positive outcomes, such as:\n\n- The volume of issues is more manageable\n- Most contributors only need to be aware of issues relating to one or two repositories\n- Contributors can subscribe to notifications or updates from only the repositories that interest them\n- It feels like \"divide and conquer\", more people are working on more aspects to move the project as a whole forward\n\n(os-comms-issue-tracking-purpose-issues-case-study)=\n#### Case study: mybinder.org\n\n[mybinder.org](https://mybinder.org) is a platform facilitating users to easily share reproducible analyses and computational environments with one another in [Jupyter Notebooks](https://jupyter-notebook.readthedocs.io/en/stable/) via the cloud.\nThis project is spread across a number of different repositories, each one an individual tool that can be used in isolation from the others.\nThese are:\n\n- [repo2docker](https://github.com/jupyter/repo2docker)\n- [JupyterHub for Kubernetes](https://github.com/jupyterhub/zero-to-jupyterhub-k8s)\n- [BinderHub](https://github.com/jupyterhub/binderhub)\n\nThere are also some tools in the Jupyter ecosystem that are only weakly associated with Binder.\nTools which Project Binder uses and people associated with Binder contribute to, but so do other unrelated communities.\nSuch tools are [JupyterHub](https://github.com/jupyterhub/jupyterhub) and [KubeSpawner](https://github.com/jupyterhub/kubespawner).\n\nEach of these repositories contains hundreds of issues tracking on-going work being performed by the community and scoping future directions for each project to take.\n\nCan you imagine trying to combine all of these issues into one place?\nIt would become very difficult, if not impossible, for someone to find what they are looking for and would require a very clever tagging schema plus instructions for filtering by tag.\n\nIn the Project Binder team's experience, most community members contribute to just one or maybe two of these projects.\nSo having consolidated access to all the issues for all the working parts is not a high priority for their community.\n\nThey find that having distributed issue tracking allows those members of the community who may only work with JupyterHub to comfortably contribute without needing to be familiar with everything that goes into running [mybinder.org](https://mybinder.org).\n\n(os-comms-issue-tracking-purpose-issues-case-centralised-issue)=\n### Centralised Issue Repository\n\nWith a big project, it can be tempting to collate all your issues into one place for the sake of easier management: a centralised system.\nIf you are using issues to track a central service, personal to-do lists, and answering questions like if a task is high priority or if it is assigned to someone already, then issue tracking in a centralised system is a good option and it does not necessarily need to be circulated to your wider community.\n\nHowever in terms of engaging your community, such a centralised system can be problematic.\nIf your issues are elsewhere this can create a lot of barriers to entry for community members, such as:\n\n- Issues are more difficult to discover\n- If they are hosted on another platform (for example, code is on GitHub but issues are on [Asana](https://asana.com/)), that's another tool community members need to learn how to use\n- Issues are separated from the code they are referencing\n\nA very large impact on the community of having a separate issue board is that when people visit your code repository, it looks like an inactive project because there are no issues or conversations going on where the code is hosted.\nThis may cause community members to believe that the code is no longer being actively developed/maintained/supported and may choose to use another codebase or software package.\n\n(os-comms-issue-tracking-comparative-table)=\n## Comparative Table\n\nThe table below compares features of distributed and centralised issue repositories for a multi-repository project.\n\n| Feature | Centralised Issue Repo | Distributed Issue Repos |\n| :--- | :---: | :---: |\n| Global issue search | ✅ | |\n| Hosted by the same platform as the code | ❓(not guaranteed) | ✅ |\n| Filter by repository | ❓(power users*) | ✅ |\n| Subscribe to relevant updates | ❓(power users) | ✅ |\n| Easy to Discover | | ✅ |\n| Connected to the Codebase | | ✅ |\n| Appears active to community | | ✅ |\n| Manageable volume | | ✅ |\n\n*Power users = These are people who are already familiar enough with a platform to know the gotchas and tricks that make their experience more efficient\n\n## Further Reading\n\n- Blog post comparing the convenience and community closeness of Mailing Lists and Forums: <https://psychcentral.com/blog/mailing-lists-versus-forums-community-convenience-closeness/>\n- Blog post by [Tim Head](https://github.com/betatim):  <https://betatim.github.io/posts/thoughts-on-collective-thinking/>\n"
  },
  {
    "path": "book/website/communication/os-comms.md",
    "content": "(cm-os-comms)=\n# Communications in Open Source Projects\n\n## Summary\n\nIn an Open Source project, a significant amount of collaboration between the core or leadership team and the wider community takes place in the form of online interactions (likely many of them!).\nIt is therefore really important to plan carefully _how_ and _where_ these interactions take place.\nCommunity interactions should maintain the transparency and openness of the project to facilitate the growth of your community, and the choice of the platforms should ensure that your project is welcoming, accessible, and secure for its collaborators.\n\nThis chapter gives an overview of the most common ways to track, support and maintain community interactions such as by raising issues, reporting bugs and attracting contributions that lead to improvements in the project.\n\n```{figure} ../../figures/research-tools.*\n---\nname: research-tools\nwidth: 500px\nalt: A few people are looking for different information about experiment, tools, privacy. There are different places or channels where these details can be identified, which is displayed in a findable manner.\n---\nIdentifying the right channel to communicate and find information. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n## Motivation and Background\n\nWhen trying to build a community around an Open Source project, the content in this chapter will help make sure that your communications are as open, transparent and accessible as possible.\nThis will help foster trust between the project team and the wider community and give them the agency to contribute where they can.\n"
  },
  {
    "path": "book/website/communication/peer-review/peer-review-code.md",
    "content": "(cm-pr-code)=\n\n# Guidance on Code Review\n\nCode review can help increase the accuracy of results, improve usability and maintainability of code, and is a great opportunity to learn. For a more detailed overview of motivations for Code Review, please see the {ref}`Code Reviewing Process <rr-reviewing-motivation>`.\n\nThe most important questions during code review are: \n- Are all the files available? If not, ask the editor to request the data/code from the authors.\n- Does it run? \n- Is it easy to understand? \nOr is it more complex than it should be?\n- If it is not just a script underlying a publication but part of software infrastructure: how easy is it to maintain? \n\n[Code does not have to be perfect](https://google.github.io/eng-practices/review/reviewer/standard.html) - it has to work, be accompanied with sufficient documentation and be maintainable if this is needed.\n\nThe [online sustainability evaluation](https://www.software.ac.uk/resources/online-sustainability-evaluation) provided by the Software Sustainability Institute can help address issues that affect the sustainability of the software.\n\n## Code review in [ReproHack style](https://annakrystalli.me/n8cir-reprohacks/slides/#24)\n\n*This is more applicable when you're reviewing the code underlying a research article.*\n\n**1. Access**\n- How easy is it to access the materials? \nCan you access all the materials?\n  - Is the data stored in a separate directory or data repository? \nIs there a persistent identifier associated with the data/code?\n\n**2. Installation**\n- Are you able to install everything, did you run into any problems and how did you solve these?\n\n**3. Documentation**\nDoes the documentation contain information on:\n- how to install necessary software and dependencies?\n- how to use materials to reproduce the paper?\n- how to cite the materials, ideally in a form that can be copy and pasted?\nProvide suggestions on how to improve the documentation of the code if needed.\n- Are the inline comments in the code helpful and necessary?\nComments should explain why some code exists, not what the code is doing. [If the code isn’t clear enough to explain itself, then the code should be made simpler](https://google.github.io/eng-practices/review/reviewer/looking-for.html#comments). \n- Is the code following applicable style guides? (for example, [Google Style Guide](http://google.github.io/styleguide/)\n\n**4. Reproduction**\n- Were you able to fully reproduce the paper? \n- How automated was the process of reproducing the paper?\n- How easy was it to link analysis code to the plots it generates and sections in the manuscript in which it is described and results reported\n\nIf you are not able to reproduce the article: \n- Were there missing dependencies? \n- Was the computational environment not adequately described / captured? \n- Were there bugs in the code? \n- Does the code handle errors properly? \nWhere could this be improved? \nIf there are any tests, check if they are correct, sensible, and useful.\n- Did code run but results (such as model outputs, tables, figures) differ to those published? \nBy how much?\nWas this to be expected (for example, because of use of random numbers in the method)?\n\n**5. User perspective**\n- What did you find easy / intuitive? \n(For example: file structure, file naming, analysis workflow, documentation?)\n- What did you find confusing / difficult? \nIdentify pressure points and provide constructive suggestions\n- What did you enjoy? Identify aspects that worked well.\n\n**6. Acknowledge the effort from authors** and give them feedback in good faith. \nAlso tell them what they did well!\n\n## CODECHECK\n[CODECHECK](https://codecheck.org.uk/) provides a workflow, guidelines and tools to evaluate computer programs underlying scientific papers. \nIf you want to get involved as a codechecker in the community, or if you want to apply the CODECHECK principles in your journal or conference, please take a look at the [Get Involved page](https://codecheck.org.uk/get-involved/).\n\n## Code Review of research software\n\nPlease see the {ref}`Code Reviewing Process chapter <rr-reviewing>` for more details when reviewing software as a primary research output, which includes a {ref}`checklist for code review process <rr-checklist-for-code-review>`\n\n\n# Resources\n\n## Journal, conference and archive guidelines\n*\t[rOpenSci Software Peer Review](https://ropensci.org/software-review/) contains the guidelines used by rOpenSci before they get added to the rOpenSci suite of packages.\n* [Journal of Open Source Software review criteria](https://joss.readthedocs.io/en/latest/review_criteria.html) and [checklist](https://joss.readthedocs.io/en/latest/review_checklist.html)\n* [Journal of Open Research Software review form](https://openresearchsoftware.metajnl.com/about/editorialpolicies/)\n* [AGILE reproducible guidelines 2020](https://doi.org/10.17605/OSF.IO/CB7Z8)\n* [Journal of Open Source Education review criteria](https://openjournals.readthedocs.io/en/jose/review_criteria.html/)\n* [pyOpenSci Software Peer Review](https://www.pyopensci.org/peer-review-guide/) contains the guidelines used by pyOpenSci, an initiative promoting open peer review process in the scientific Python ecosystem. Different to JOSS, pyOpenSci aims to followup with the maintainer to ensure that the package is maintained over time.\n\n## Teaching Code Review\n*\t[Teaching Code Review to University Students](https://www.eduflow.com/blog/teaching-code-review-to-university-students)\n* Tips and Tricks for Reproducing and Reviewing by Anna Krystalli ([slides 24-37 on reviewing](https://annakrystalli.me/n8cir-reprohacks/slides/#24))\n\n## Sharing Code Review Experiences\n* [I’ve code reviewed over 750 pull requests at Amazon. Here’s my exact thought process](https://curtiseinsmann.medium.com/ive-code-reviewed-over-750-pull-requests-at-amazon-here-s-my-exact-thought-process-cec7c942a3a4) - by Curtis Einsmann\n* [Identifying and overcoming obstacles to adopting code review](https://www.software.ac.uk/blog/2022-08-17-identifying-and-overcoming-obstacles-adopting-code-review)\n"
  },
  {
    "path": "book/website/communication/peer-review/peer-review-guidance.md",
    "content": "(cm-pr-guidance)=\n# Guidance on Peer Review for a Journal\n\n\nThe text is inspired by this [blog post](https://renebekkers.wordpress.com/2020/06/24/how-to-review-a-paper/) by [Rene Bekkers](https://research.vu.nl/en/persons/rene-bekkers), released under the CC BY 4.0 licence.\nThere is no consensus among journals and editors on a set of minimum criteria that the peer review process should cover. \nThe extensive set of criteria provided here are general considerations from the perspectives of openness and reproducibility.\nThe bar is set pretty high: a review checking each of the criteria will take you at least three hours, but more likely between five and eight hours. \n\n\n(cm-pr-guidance-before)=\n## Before you accept an invitation to peer review\n\nThe following steps will help you make a decision whether to review the paper or not.\nThey need to be taken fast. \nIt is a good practice to let the editor know immediately if you are unable to review a paper, so the editor can start to look for someone else to review the paper. \nSuggesting other possible reviewers is very helpful. \nYour non-response means a delay for the authors and the editor.\n\n1. Check what kind of journal this is. \nHave you heard of it before?\nDoes it have a reputation in your discipline?\nAre you planning to submit your own work there? \nIs this journal an [Open Access](https://book.the-turing-way.org/reproducible-research/open/open-access.html) journal?\nBeware of [predatory journals](https://predatoryjournals.com/journals/).\n\n1. Check if this paper is of interest to review and if you are the right person to review the paper. \nReviewers do not need to be experts in all respects. \nThe editor may ask you to focus on a specific aspect of the paper. \nAlternatively, you may qualify your review with an indication of where you focused your review, if you do not feel you have the necessary expertise to evaluate all aspects of the paper.\nIt is a good practice to describe your disciplinary background and expertise in relation to the manuscript you are invited to review.\nIf you do not have useful expertise to improve the paper, politely decline.\nIf you do not have sufficient time to review the paper, politely decline. \nRecommending other potential reviewers when declining is helpful, but not necessary - a timely accept/decline response to the review request is more important.\n\n1. Check whether you know the author(s). \nIf you do, you might describe how you know the author(s) and ask the editor whether it is appropriate for you to review the paper.\nIf you have a conflict of interest, notify the editor and politely decline. \n\n1. Check whether the authors have made the data and code available - see also [Open Access](https://book.the-turing-way.org/reproducible-research/open/open-access.html).\nYou can set a requirement for the author to make the data available for peer review or openly available before you accept an invitation to review their work. \nIt needs to be taken into account that some data  would be illegal or dangerous to make available, such as datasets that contain identifying information that cannot be removed. \nIn most cases, the authors can provide at least partial access to the data by excluding variables that contain personal information.\nIf the paper does not provide a link to the data and the analysis script, you can ask the editor to ask the authors to provide the data and the code. \n\nYou might get requests to review a paper that you have reviewed before, for a conference or another journal. \nIn these cases, you can let the editor know and ask the editor whether she would like to see the previous review. \nFor the editor it will be useful to know whether the current manuscript is the same as the version, or includes revisions.\n\n(cm-pr-guidance-writing)=\n## Writing a review\n\n### How to organize the review work\n\nThere is no established procedure, you need to find what works for you. The journal you are reviewing for may also provide guidance on how to write a review.\nIf you are reviewing for the first time, this workflow might be useful.\n1. It might be a good idea to read a paper twice. \nFirst, go over the paper superficially and quickly. This gets you a sense of where the authors are going. \n2. After a quick glance at the paper, you can determine whether you think the paper has the potential to be published, perhaps after revisions. \nIf you think the paper is beyond repair, explain this to the editor.\n3. If the paper is good enough to be revised and resubmitted, you can start providing more detailed comments. \n3. The second time you go over the paper, do a very close reading. \nSome of the information may be in the supplementary information provided with the paper - read them carefully as well.\n\n**The tone of the review**\nThere is a ‘golden rule’ for people writing a review: treat others as you would like to be treated. \nWrite the review report that you would have liked to receive if you had been the author. \nThe following principles might help you:\n1. Be honest but constructive. \nYou are not at war. \nThere is no need to burn a paper to the ground.\n2. Avoid addressing the authors personally. \nSay: “the paper could benefit from…” instead of “the authors need”.\n3. Stay close to the facts. \nDo not speculate about reasons why the authors have made certain choices beyond the arguments stated in the paper.\n4. Take a developmental approach. \nAny paper will contain flaws and imperfections. \nYour job is to improve science by identifying problems and suggesting ways to repair them. \nThink with the authors about ways they can improve the paper in such a way that it benefits collective scholarship. \n5. Try to see beyond bad writing style and mistakes in spelling. \nAlso be mindful of disciplinary and cultural differences between the authors and yourself.\n\n**The substance of the advice**\n1. It is a good principle to begin the review report by describing the way you reviewed the paper. \nIf you searched for literature, checked the data and verified the results, ran additional analyses, state this. \nIt will allow the editor to adjudicate the review.\n2. Then give a brief overview of the paper. \nInclude a two- or three-sentence summary with your interpretation of the hypothesis, main results and conclusions. \nThis summary provides the author an indication of the clarity of their paper. \n3. If the invitation asks you to provide a general recommendation, state it early in the review.\nThe recommendation is the first thing the editor wants to know.\nTypically, you are invited to recommend ‘reject’, ‘revise & resubmit’ – with major or minor revisions, or ‘accept’. \n  - Major revisions are needed when the conclusions are jeopardized by concerns or the usefulness of the data is limited. \n  Examples are problems with the applied methods, analyses, or the reasoning. \n  Reviewers should indicate the seriousness of the major concern and how it could be addressed. \n  If the concern cannot be addressed it may be better to 'reject' the work. \n  Only suggest additional analyses or testing only when the conclusions of the study are otherwise undermined - otherwise they can be addressed in a future paper. \n  - Minor revisions are needed to improve the clarity of the paper. \n  Minor revisions can include additional citations, addition of details regarding the method, change in title or abstract to reflect the paper content, whether figures are clear, necessarily and in correspondence with the text and any presentation issues (spelling errors, wording). \n4. Use ‘reject’ only if absolutely necessary.\nMost journal editors make use of desk-rejection if the paper seems a poor fit; if the editor sent the paper out for review, she probably thinks it has the potential to be published.\nStart from the assumption that the authors have invested a great deal of time in the paper and that they want to improve it. \n5. List the strengths and the weaknesses of the paper. \nTo ease the message you can use the sandwich principle: start with the strengths, then discuss the weaknesses, and conclude with an encouragement.\n6. Try to give actionable advice. \nFor the weaknesses in the paper, suggest ways to repair them. \nConstructive criticism does not have to be in the form of a specific solution. \nIt can be much more useful to be specific about the problem and to let the authors identify a solution, than it is to provide the fix for them.\nIt is convenient for both the editor and the authors to number your suggestions.\nDistinguish major issues, such as not discussing alternative explanations, from minor issues such as missing references and typos. \nThere could be points that the authors are underselling. \nIn that case, you could identify them as strengths that the authors can emphasize more strongly.\nIt is handy to refer to issues with direct quotes and page numbers or line numbers. \n7. Traditionally, the review process is designed to be anonymous. However, some reviewers sign their reviews. \nA non-anonymous review can be seen as an accountability device: by exposing who they are to the authors of the paper, the reviewers set higher standards for themselves. This needs to be done carefully: some editors do not appreciate signed reviews. \nThere are voices that express concerns for a graduate student or an early career researcher facing retribution for being critical of a more senior researcher. \nThere is also a process called open peer review; in this case, the review is open for everyone viewing the paper. \nThe peer review might blend these features; for example, one might be able to see the review text but not the name of the reviewer who did it, or the name of the reviewer but not the text itself.\nThe design of the peer review process and its transparency varies from journal to journal.\nGenerally there is a way to communicate just with the editor, for example, via confidential remarks. \nThis communication is not provided to the authors, so you can be candid here about your limitations and concerns regarding the submitted paper. \n\n\n\n**Second round of reviewing process**\nIf the authors have revised their paper, check if your suggestions have been implemented or whether sufficient arguments have been provided to not do so. \nIt is a good principle to avoid making new demands for the second round that you have not made before. \n\n\n"
  },
  {
    "path": "book/website/communication/peer-review/peer-review-open.md",
    "content": "(cm-pr-open)=\n# Open Peer Review\n\n```{figure} ../../../figures/open-peer-review.*\n---\nheight: 500px\nname: open-peer-review\nalt: Cartoon-like sketch, in black and white with orange shading, of a three tiered cake with the title Open Peer Review at the top. On the bottom level of the cake is the word collaboration with different types of people standing on this level of the cake looking thoughtful. Each person has a speech bubble over them with an eye in it. There are more thoughtful people standing on the second tier and the third and top tier has three people holding a written document with the words supporting quality over them. At the side of the cake are the words recognition, on the left side, and content and process, on the right side. \n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n## What is Open Peer Review? \n\nOpen Peer review can refer to various practises, including signing your review, publishing reviews along with the paper, and allowing for the community to contribute to the peer review process ([Open Science Community Utrecht](https://openscience-utrecht.com/peer-review)). Below some different types of Open Peer Review are highlighted, as well as the benefits of opening up the peer review process.\n\n(cm-pr-open-what)=\n## Different types of Open Peer Review\n\nThere are various [models of Open Peer review](https://plos.org/resource/open-peer-review/) (see {cite:ps}`RossHellauer2017openreview` for more details):\n\n- **Open Content**\n  - Publishing peer review content\n  - Decoupling the peer review process from the publication process (see [recent announcement by eLife](https://elifesciences.org/for-the-press/b2329859/elife-ends-accept-reject-decisions-following-peer-review))\n- **Open Participation**\n  - Open review before publication through preprints\n  - Post-publication commenting\n- **Open Identities** (author or reviewer)\n  - Open discussion between authors, editors and reviewers\n\nSimilar to open science practices in general - open peer review is not an 'all or nothing' concept. \nInstead, the open components that make the most sense can be introduced first - or the platform that you're using might not have opened up all of this yet.\n\nOne of the more debated parts of Open Peer Review is whether reviews should be signed {cite:ps}`RossHellauer2017openreview` {cite:ps}`Bravo2019openreview`.\nNot everyone is comfortable signing their reviews - particularly people from minoritized groups in research {cite:ps}`Fox2021openreview`. \nThis could result in less critical reviews if revealing identity is a requirement of Peer Review {cite:ps}`Fox2021openreview`. \n\n(cm-pr-open-benefits)=\n## Benefits of Open Peer Review\n\n- Including increasing accountability of reviewers, which should in turn increase the quality, fairness, constructiveness and courteousness of reviews\n- Transparency allows for validation of peer review and [identifying biases](https://web.archive.org/web/20221116192110/https://twitter.com/giladfeldman/status/1568391773353037824), which may improve diversity/inclusion of the peer review process\n- Recognition for Peer Review (especially if it can become a {ref}`Research Object that can be cited<cm-citable-cite>`\n- Reviews can become reusable (as normally the authors of review retain copyright and if they are anonymous you cannot ask their permission)\n- Reviews can be used as teaching materials to improve the peer review process\n- [Facilitates dialogue](https://polarjournal.org/2022/06/13/__trashed-2/) and [collaboration](https://allegralaboratory.net/who-cares-peer-review-at-allegra/) between authors, reviewers and editors \n\n(cm-pr-open-no-anonymous)=\n## The case against double-anonymous peer review\n\n\"[Anonymity allows for abuse, which editors do not always moderate successfully](https://polarjournal.org/2022/06/13/dispirited-away-the-peer-review-process/).\" - Dada Docot\n\nThe ability of double-anonymized review to address biases in peer review remains questionable and can minimise the consequences of these biases without addressing their causes {cite:ps}`Horbach2022openreview`.\n\n**Double-anonymous peer review** may impede open science practices in several ways {cite:ps}`Horbach2022openreview`: \n1. Preprinting\n2. Preprint peer review\n3. Review curation\n4. Micro-publications\n\n(cm-pr-open-initiatives)=\n## Initiatives supporting Open Peer Review\n\n* [PREreview](https://prereview.org/)\n* [Open Review](https://openreview.net)\n* [F1000](https://f1000research.com/)\n* [Open Research Europe](https://open-research-europe.ec.europa.eu)\n* [SciPost](https://scipost.org/)\n* [Peer Community In](https://peercommunityin.org/)\n\n\n\n"
  },
  {
    "path": "book/website/communication/peer-review/peer-review-overview.md",
    "content": "(cm-pr-overview)=\n\n# Peer Review Types\n\n## Types of Peer Review\n​\nPeer review is a critical component of advancing research. Peer review can be done on many different research outputs, including:\n* manuscripts \n* software (including code, documentation, and examples)\n* datasets\n* communication and presentation materials\n\n\nPeer review can be formal or informal and ideally occurs at different levels throughout a project. When most people think of peer review they think of this in the context of reviewing a journal article.\nJournal articles, as opposed to {ref}`preprints<rr-open-access-preprints>`, have gone through the peer review process- the paper has been peer reviewed and modified by the author in response to the reviewer's suggestions, so these papers are seen to have added value. \nHowever, there are also initiatives to peer review preprints, for example, [Peer Community In](https://peercommunityin.org/) arranges reviews for manuscripts. You can read more about preprints in the {ref}`Open Access<rr-open-access>` chapter.\n\n\n## Levels of Peer Review\n* *Step 1* - Peer review often happens informally among team members.\nFeedback helps improve your project, on its way to being shared with the broader community.​\n* *Step 2* - The project is going well, but it needs input from the broader community to reach it's full potential.\nThis stage is often where the formal peer review process happens, but in an open project this level of feedback is often provided throughout.​\n* *Step 3* - By incorporating everyone's ideas, the project unites the community and perceives feedback as a way to improve projects rather than as a competitive process.\n\nWe see peer review as an important exercise in {ref}`collaboration<cl>` not limited to a quality-safeguard procedure.\nHowever, in current research practice, peer review often appears as a hurdle everyone needs to pass through.\n\n\n\n\n"
  },
  {
    "path": "book/website/communication/peer-review/peer-review-resources.md",
    "content": "\n(cm-prr-resources)=\n# Resources\n\n## What to Learn Next\nIf you have not read the {ref}`chapter on Open Research<rr-open>`, you might want to read it now for more context on how Peer Review fits into Open Research. Reading {ref}`Guide for Collaboration <cl>` might also help to think of your role in the scientific process.\n\n## Further Reading\n* Alexander, G.R. (2005). A Guide to Reviewing Manuscripts. Maternal and Child Health Journal, 9 (1): 113-117. https://doi.org/10.1007/s10995-005-2423-y\n* Committee on Publication Ethics Council (2017). [Ethical guidelines for peer reviewers](https://publicationethics.org/files/Ethical_Guidelines_For_Peer_Reviewers_2.pdf).\n* Lee, A.S. (1995). Reviewing a manuscript for publication. Journal of Operations Management, 13: 87-92. https://doi.org/10.1016/0272-6963(95)94762-W\n* Foster, Antoinette, Hindle, Samantha, Murphy, Katrina M., & Saderi, Daniela. (2021). Open Reviewers Reviewer Guide. Zenodo. https://doi.org/10.5281/zenodo.5484087\n* Foster, Antoinette, Hindle, Samantha, Murphy, Katrina M., & Saderi, Daniela. (2021). Open Reviewers Review Assessment Rubric. Zenodo. https://doi.org/10.5281/zenodo.5484072\n* Foster, Antoinette, Hindle, Samantha, Murphy, Katrina M., & Saderi, Daniela. (2021). Open Reviewers Bias Reflection Guide. Zenodo. https://doi.org/10.5281/zenodo.5484052\n* [How to read a manuscript as a peerreviewer](https://plos.org/resource/how-to-read-a-manuscript-as-a-peer-reviewer)\n* [EASE Peer Review Toolkit](https://ease.org.uk/communities/peer-review-committee/peer-review-toolkit/)\n* [Introduction: “Thinking With” When Peer Reviewing](https://polarjournal.org/2022/06/13/introduction-thinking-with-when-peer-reviewing/)\n\n# Courses\n* [FOSTER open peer review course](https://www.fosteropenscience.eu/learning/open-peer-review/#/id/5a17e150c2af651d1e3b1bce)\n* [Open Science MOOC course and resources about open evaluation](https://opensciencemooc.eu/modules/open-evaluation/)\n"
  },
  {
    "path": "book/website/communication/peer-review.md",
    "content": "(cm-peer-review)=\n# Peer Review\n\n(cm-peer-review-prerequisites)=\n## Prerequisites\n\n| Prerequisite | Importance | Skill Level | Notes |\n| -------------|----------|------|----|\n| {ref}`Section Code Reviewing Process <rr-reviewing>` | Helpful | | We see code review as a part of peer review process |\n| {ref}`Section Research Data Management <rr-rdm>` | Helpful |  | A part of review process involves reviewing the data on which the publication is based. Knowledge of Research Data Management can help with evaluation |\n| {ref}`Guide for Collaboration <cl>` | Helpful |  | We see review as a form of collaboration |\n\n```{figure} ../../figures/peer-review-process.*\n---\nname: Peer review\nalt: The reviewer wolf really wants to be friends with the pigs, but the pigs perceive the wolf as a threat. The pigs work amongst themselves (with their coauthors, colleagues, and office-mates) to improve their defenses against the world. However, it is not until the pigs open their work to input from the entire community (including the wolf!) that they can build sturdy house. Ultimately, the wolf and pigs work together to build a sturdy house that protects them all from the storm.\n---\nIllustration about peer review.\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: 10.5281/zenodo.3332807.\n```\n\n(cm-peer-review-summary)=\n## Summary\n\nThis chapter introduces the process of peer review of journal articles as a part of the more general process of peer review of each other's work and scientific collaboration. \nThe chapter introduces different types and levels of peer review, depending on the type of scientific output. \nIt explains what Open Peer Review is. \nThen, peer review of a manuscript is discussed in detail, providing practical guidance for those who need to do a formal peer review for a journal.\nThis is followed by guidance for code review, whether for code underlying a research article or for software as a research object on it's own.\nFinally, additional resources are listed.\n\n\n(cm-peer-review-motivation)=\n## Motivation and Background\n\nPeer Review [{term}`def<Peer Review>`] should be seen as process that helps to improve the quality of the research. \nPeer review can be formal or informal and ideally occurs at different levels throughout a project. \nTraditionally the formal peer review has been associated with publishing a journal article. \nHowever, new forms of peer review are emerging in publishing and also beyond in the research landscape.\nWe want to highlight that peer review happens on different levels throughout a project, and is an ultimate form of engaging with other people's work.\n\n"
  },
  {
    "path": "book/website/communication/personal/personal-cv.md",
    "content": "(cm-personal-narrative-cv)=\n# Narrative/Evidenced based CVs\nThe 'narrative' or 'evidenced based' CV format provides a structured written description of a person’s contributions and achievements to research. \nCompared to traditional academic CVs, narrative CVs reflect a broad range of relevant skills and experiences. \nAs there is no ideal type of researcher and evidence-based CVs allow you to highlight your own academic profile without being limited by a small range of questions and criteria.  \n\n(cm-personal-narrative-cv-motivation)=\n## Motivation\n\nTraditional academic CVs have focused primarily on the quantity rather than the quality of research contributions. \nBy focusing on a narrow range of metrics based on publications and obtainal of grants, traditional CVs do not capture the full range of research activities.\nTraditional CVs also don't allow an explanation of how researchers have overcome barriers and how they embraced opportunities. \n\nIn contrast, narrative CVs place more focus on how the activities you undertook strengthened your skills or were important for your career stage, and the rationale for undertaking those activities.\n\nThe evidenced-based CV also aligns with initiatives focussing on improving the way research is evaluated, such as San Francisco Declaration on Research Assessment ([DORA](https://sfdora.org/read/)) and Coalition for Advancing Research Assessment ([CoARA](https://coara.eu/)). \n\n(cm-personal-narrative-cv-templates)=\n## Narrative CV Templates\n\nThere are many versions of a narrative CV. \nBelow you can find examples that some research funders use: \n* [Résumé for Research and Innovation](https://www.ukri.org/apply-for-funding/develop-your-application/resume-for-research-and-innovation-r4ri-guidance/) (R4RI)\n* [Evidenced-based CV](https://www.nwo.nl/en/evidence-based-cv) (NWO)\n* [Swiss National Science Foundation CV](https://www.snf.ch/en/gKcnwW6aEft4bMPF/page/your-curriculum-vitae-all-about-the-cv-format) (SNSF)\n* [BioSketch](https://grants.nih.gov/grants-process/write-application/forms-directory/biosketch#biosketch-) (NIH)\n\nIt is important to check which template you need to follow, what restrictions are in place (such as word count or mentions of gender/names) and whether there is available guidance or example CVs. \n\n(cm-personal-narrative-cv-overview)=\n## Overview\n\nEvidenced-based CVs generally consist of two sections: the academic profile and the key outputs.\n\n### Academic profile\n\n- Who are you as a researcher? \n- What are your most relevant qualities and academic achievements? \n- What is your vision and focus, and how does this reflect in your work? \nHow is your vision/work relevant to the call?\n- How have you used opportunities (such grants)?\n- Are there other circumstances that should be taken into account? \nGenerally there is a section in the narrative CV where you can indicate any career breaks, unconventional career paths or other contributions to the research community. \nThis provides context for the evaluation relative to the career stage you are in. \nFocus on how these circumstances have affected your career, do not go into details of the circumstances themselves.\n \n### Key outputs \n\nGenerally, a maximum of 10 key outputs are described in this section. \nHere we describe how to describe these outputs, give examples and end with a list of types of outputs you may consider.\n\n- Motivation why this key output is selected, focusing on knowledge advancement and recent achievements. \nEmphasise the resulting change or benefit (who were the beneficiaries, were benefits social/economic/environmental/health/cultural?).\n- Focus on your strongest contributions and those that are most relevant for the call you are applying for. \n- Description of your contribution to the key output (for example, via [CRediT Contributor Roles Taxonomy](https://credit.niso.org/)).\n- Focus on quality over quantity. \nWhat evidence shows that this work is of high quality and/or that it is relevant to the proposed project?\n- Describe the importance of your key output to the community and your career. \n- Focus on what you have achieved, not on what you are planning to do in the future. \n- Describe outcomes, and how you enabled them, rather than just stating activities. \nHow have you successfully carried out the project?\n\n(cm-personal-narrative-cv-how)=\n## How to structure sentences and paragraphs \n\nThe information in this section has been summarized based on @oxford2023narrative.\n\n1. Summary sentence: start with the main message that you want a reviewer to notice.\n2. Short descriptions of your strongest contributions: what you did and why it is important, with evidence. \n3. Sentence summarising additional contributions: end with a brief mention of other activities or contributions that you do not have space to describe fully but you feel are important for this funding application.\n\n(cm-personal-narrative-cv-how-examples)=\n### Examples\n\n::::{tab-set}\n:::{tab-item} Example 1\n:sync: Example 1\nExample: I carried out the data integration using [method A] and co-wrote an early analysis of the effects of [B and C] on health outcomes [DOI]. This study (cited XXX times since X year) was the basis of a series of research community workshops, organised by [organisation D], which led to a [funder] award for the [E] consortium (£ amount).\n\n:::\n:::{tab-item} Example 2\n:sync: Example 2\nExample: I have supervised/line-managed/mentored [numbers of students, staff roles] who went on to [example achievements of supervisees and mentees]. I supported their development through [examples of specific ways you supported development, such as providing opportunities (through sponsorship, resources, sharing of contacts, offering roles with responsibilities) for learning skill A or experiencing B].\n:::\n\n:::{tab-item} Example 3\n:sync: Example 3\nExample: As part of the [XX] Collaboration, I supported effective teamwork by setting up channels on Slack for exchange of information and questions; this has improved our understanding of what partners are working on, in between formal meetings.\n:::\n\n:::{tab-item} Example 4\n:sync: Example 4\nExample: As a member of the department X Equality, Diversity and Inclusivity committee, I initiated and led a working group on neurodiversity, resulting in several practical changes such a good practice guide for organising departmental events and training opportunities for HR staff.\n:::\n\n:::{tab-item} Example 5\n:sync: Example 5\nExample: In [year], I co-organised the first stakeholder engagement day in the UK (XX attendees) for [public interest topic A], which included a panel discussion at which campaigners spoke about their experiences and break-out groups discussed research priorities. Evidence submitted as part of public consultation led to changes in local policy, leading to [XX%] decline in the effect of [A] on the affected population group.\n:::\n::::\n\n(cm-personal-narrative-cv-how-tips)=\n### Tips\n\n- To reference a publication, use a digital object identifier ([DOI](#cm-citable-steps-doi) hyperlinked to the publication. \nOnly include full citations if requested by the funder to save space.\n- For a team project, mention your specific contributions and the skills that you used or developed. \n- Describe how this research advanced the field. \n- Demonstrate your commitment to open and transparent research practices, including in how you manage and share data, methods, and findings.\n- Go beyond a list of the numbers of people you have supervised or mentored. \nFor example, how did you help them to develop and what did they go on to achieve? \n- What was the scale and profile of a team you have led and how was your leadership important for the achievements of the team?\nEven if you didn’t have a leadership role, how did you contribute to the success of a team or the development of others? \n- Did you overcome any challenges in collaborations or partnerships? \nHow did you contribute to helping collaborations to succeed? \n- Have you taken steps to be inclusive in your approach to managing or mentoring? \nIf so, explain how you have done so. \n- Don’t overwhelm reviewers with long lists, or dilute the communication of your key achievements.\n\n(cm-personal-narrative-cv-outputs)=\n## Types of contributions to consider\n\nThe list in this section has been based on the overview by @oxford2023narrative.\nNote that not all funders consider grants, awards or prizes to fall under outputs.\n\n1. [Research objects](#cm-ro), which could include:\n    - Peer reviewed publications, preprints, conference publications or policy publications \n    - Data sets, software, code, protocols, materials\n    - Products (commercial, entrepreneurial, industrial, educational)\n    - Evidence synthesis\n    - Patents, designs\n    - Artefacts\n    - Exhibitions, audio or visual media\n2. Development of methods, tools or resources.\n3. Generation of new ideas and hypotheses.\n4. Funding you obtained (include funder, your role, dates, what the funding enabled).\n5. Awards you have received or other forms of peer recognition, such as invited talks.\n6. Supervision or mentoring, or positions of responsibility.\n7. Project management or line management, critical to the success of a team or team members.\n8. Strategic leadership shaping the direction of a team, organisation, company or institution.\n9. Formal teaching (if focused on the development of others).\n10. Establishing or driving collaborations or networks. \nIf you are at an early stage in your research career, you can describe substantial contributions to team-working.\n11. Leadership of activities across disciplines, institutions, and/or countries.\n12. Editing and reviewing responsibilities.\n13. Committee work within your organisation and beyond (such as activities for learned societies, funders or contributions to professional bodies).\n14. Activities that have contributed to the improvement of research integrity or cultures, including equality, diversity and inclusion practices.\n15. Knowledge exchange or organisation of community events, such as conferences or workshops.\n16. Contributions to open research, active sharing of knowledge and skills, community resources.\n17. Policy engagement and development.\n18. Partnerships with business, industry, healthcare, and so forth.\n19. Public engagement with research, participatory research, or public engagement via creative works.\n20. Patient and public involvement (PPI)\n\n\n(cm-personal-narrative-cv-resources)=\n## Other resources\n\n- [Developing a narrative CV: guidance for researchers](https://researchsupport.admin.ox.ac.uk/learn-more-about-developing-a-narrative-cv#collapse4313436)  by the University of Oxford \n- '[How to write a narrative CVs for funding applications](https://www.youtube.com/watch?v=VKk8oKM_kec )' webinar by the University of Oxford\n- [Young Academy Ireland Narrative CV Toolkit: Resources and Examples](https://doi.org/10.5281/zenodo.15011146)\n"
  },
  {
    "path": "book/website/communication/personal/personal-website.md",
    "content": "(cm-personal-websites)=\n# Personal Websites\n\n(cm-personal-websites-prerequisites)=\n## Prerequisites\n\n| Prerequisite | Importance | Skill Level | Notes |\n| -------------|----------|------|----|\n| [](#rr-open) | Helpful | Beginner | An understanding of open research practices is useful for creating a personal website. |\n| [](#cm-blogs) | Helpful | Beginner | Blogs for research communication can be part of a personal website. |\n\n(cm-personal-websites-summary)=\n## Summary\n\nThis section explores the importance and benefits of a personal website for researchers.\nThen, coding and non-coding website generators with different levels of complexity are discussed, explaining their features and differences.\nSeveral deployment options and maintenance strategies are also presented, helping researchers to choose the best solution for their needs.\n\n(cm-personal-websites-motivation)=\n## Motivation and Background\n\nA personal website is an online space where researchers can share their work and additional interests with a broad audience.\nIt can serve as a platform to present research findings, projects, talks, publications, CV or resume, and other professional information.\nBut this space is not necessarily limited to academic content; it can also be a place to share personal interests, hobbies, and other activities.\nAs a result, this website can be customised to express the individual's unique identity and values.\nThis online presence can help researchers expand their visibility, engage with a wider audience, connect with potential collaborators, and even create new career opportunities.\n\n(cm-personal-website-frameworks)=\n# Frameworks\n\n(cm-personal-website-frameworks-what)=\n## What is a framework?\n\nIn website development, a framework is a set of pre-written code, tools, and\nlibraries that help developers build and maintain websites more efficiently.\nFrameworks provide a structured foundation, offering reusable code modules,\ncommon design patterns, and guidelines, which help streamline the development\nprocess and promote best practices. They essentially \"frame\" the development by\nmanaging basic functionalities and allowing developers to focus on the unique\naspects of their projects rather than repetitive tasks.\n\n(cm-personal-website-frameworks-benefits)=\n## Benefits of using a framework\n\nFrameworks provide several benefits in website development:\n\n* **Code Reusability**: Common functions are built-in, which\nreduces redundancy.\n* **Efficiency**: They allow faster development by eliminating the need\nto code every component from scratch.\n* **Scalability**: Frameworks provide a solid structure that can grow with the\nwebsite.\n* **Security**: Many frameworks come with built-in security features and\nupdates, which help mitigate vulnerabilities.\n\n(cm-personal-website-frameworks-list)=\n## Popular frameworks\n\nHere, we list some commonly used frameworks. They have been\ndivided into two categories depending upon whether person wants to create a\nwebsite using low-code or high-code options.\n\n### No-Code/Low-Code frameworks\n* [Canva](https://www.canva.com/design-school/resources/how-to-make-website-with-canva-step-by-step-guide)\n* [Ghost](https://ghost.org/resources/building/)\n* [GitHub profile](https://docs.github.com/en/account-and-profile/setting-up-and-managing-your-github-profile/customizing-your-profile/about-your-profile)\n  * The repository [`rzashakeri/beautify-github-profile`](https://github.com/rzashakeri/beautify-github-profile) has instructions and advice to customise your GitHub profile.\n* [Squarespace](http://squarespace.com)\n* [Wix](https://learnxinyminutes.com/)\n* [Wordpress](https://wordpress.com/blog/2025/01/02/personal-website/)\n\n### High-Code frameworks\n\n#### Static website generator\n\n* [Academic pages](https://github.com/academicpages/academicpages.github.io)\n* [Blogdown](https://bookdown.org/yihui/blogdown/) (R)\n* [Fast Html](https://fastht.ml/) (Python)\n* [Hugo](https://gohugo.io/)\n* [Jekyll](https://jekyllrb.com/)\n* [Pure HTML/CSS/Javascript](https://pure-css.github.io/start/)\n* [Quarto](https://quarto.org/docs/gallery/#websites) (R/Python/Julia)\n\n#### Dynamic website generator\n\n* [Django](https://www.djangoproject.com/)\n"
  },
  {
    "path": "book/website/communication/personal.md",
    "content": "(cm-personal)=\n# Communication of Personal Skills and Research\n\n(cm-personal-prerequisites)=\n## Prerequisites\n\n| Prerequisite | Importance | Skill Level | Notes |\n| -------------|----------|------|----|\n| [](#rr-open) | Helpful | Beginner | An understanding of open research practices is useful for creating a personal website. |\n| [](#cm-blogs) | Helpful | Beginner | Blogs for research communication can be part of a personal website. |\n| [](#cm-citable) | Helpful | Beginner | Gain understanding of how to make your research objects citable. |\n\n(cm-personal-summary)=\n## Summary\n\nThis chapter explores the importance and benefits of communicating your skills and your research via various pathways. At the moment, we included two pathways: a personal website and a narrative or evidenced-based CV. \nThose two pathways gives you some freedom to present what you consider to be the most important first, and gives the opportunity to explain what you did, why you did it and where it brought you, while online profile on social media website or on orcid are restricted in what you can present..\n\nThe section on personal websites provides a general structure with common components and content suggestions for developing personal websites.\nThen, coding and non-coding website generators with different levels of complexity are discussed, explaining their features and differences.\nSeveral deployment options and maintenance strategies are also presented, helping researchers to choose the best solution for their needs.\n\nThe section on narrative or evidenced-based CVs explains what these CVs are, why they are currently used in research evaluation, and how you can start with writing one. \nThe section contains examples and tips on how to write a narritive CV, and contains an overview of what type of research objects you can include in the CV. \n\nBoth sections conclude with a list of additional resources.\n\n(cm-personal-motivation)=\n## Motivation and Background\n\nIt is important to advertise your research skills and outputs via various pathways to increase your visibility as a researcher.\nExamples are a personal website or a narrative CV. \nBoth a personal website and a narrative CV allow you to take control of your narrative, showing what you consider to be important in your career path instead of having a pre-defined structure or 'box' of what is expected (as is the case in platforms like LinkedIn or the traditional CV).\n\nA personal website is an online space where researchers can share their work and additional interests with a broad audience.\nIt can serve as a platform to present research findings, projects, talks, publications, CV or resume, and other professional information.\nBut this space is not necessarily limited to academic content; it can also be a place to share personal interests, hobbies, and other activities.\nAs a result, this website can be customised to express the individual's unique identity and values.\nThis online presence can help researchers expand their visibility, engage with a wider audience, connect with potential collaborators, and even create new career opportunities.\n\nThe narrative CV aims to reward a broader set of research-related activities beyond peer-reviewed publications.\nIt values diverse contributions and career paths in research. \nThis will lead to more inclusion and diversity in research, as well as encouraging a more responsible manner of using metrics.\nIt also allows researchers to place focus on activities that they value, instead of being limited by a restricted amount of criteria.\n\n"
  },
  {
    "path": "book/website/communication/podcasts/podcasts-personal-stories.md",
    "content": "(cm-podcasts-personal-stories)=\n# Personal stories - Podcasts\n\n## Zoe Ingram and Emma Harris: Orion Open Science Podcast\n\nThe ORION Open Science podcast is structured around a series of interviews with interesting guests about a variety of topics related to Open Science.\n\nIt is also co-hosted and co-produced by **Dr. Luiza Bengtsson**.\n\nIf you want to find out more information about the podcast then look at their [website](https://www.orion-openscience.eu/publications/training-materials/201902/podcasts) and the [podcast on PodBean](https://orionopenscience.podbean.com/).\n\nWe would like to thank **Zoe Ingram** and **Emma Harris** for answering our interview questions about their very successful and enjoyable blog series.\n\n## 1. Why did you start your podcast?\n\n**Emma** - While there are a good number of podcasts on Open Science now (which is great), back in 2018 there was only Open Science Radio, which was excellent but often only in German.\n\n**Zoe** - We are part of the Orion Open Science Project and our task is doing training so Luiza decided that doing the podcast as part of the training material would be a good idea.\n\n**Emma** - We felt that a podcast, with the format of interviews with experts on different topics, would be an easy and entertaining way of communicating open science concepts to researchers and others. \nEven with the rise of e-learning and online workshops, there is an upper limit on how many people you can reach with traditional training. The podcast allows everyone to have access, and for different aspects of open science to be explored in-depth.\n\n## 2. How did you get started?\n\n**Zoe** - It was something that none of us had done before. \nWe had a colleague whose wife had skills in this area so she taught us how to get started. She gave Emma and Luiza feedback about speaking and how to adjust their voices for speaking on the podcast.\n\n**Emma** - We just started interviewing people and learned by doing, so the early podcasts are lower in quality and we are pretty awkward! But slowly we learned to be more relaxed and how to handle the technical side of things more competently.\n\n**Zoe** - We did get a sound editor to help with it. This was for the technical and time constraint in doing this.\n\nWe made a jingle and there is a new jingle for the new season.\n\n## 3. What impact do you think your podcast is making on your research/project/community?\n\n**Zoe** - It is hard to know who is listening as you are sending things out to a black box. \nWe do get mail and feedback about the podcast from people that want to suggest themes and volunteer take part.\n\n**Emma** - The global impact always makes me happy - we have people from all over the world on the show and have heard from listeners from even more countries. \nI think the podcast does not have a huge audience in numbers but it is very geographically diverse.\n\nThe episodes are very useful and engaging on particular topics. \nFor example, I recently gave a talk on Creative Commons Licenses and someone wrote to me who had missed it and wanted some information, so I referred them to the podcast episode we did with Cable Green, the CEO of Creative Commons. \nSo they are an excellent open educational resource, as well as being generally interesting.\n\n**Zoe** - I like talking to people and have missed our Institute's Beer Hour in which I got to meet and speak to scientists about their work. \nI enjoy having these types of conversations about open science.\n\nI think the podcast is a format that is flexible and it is easier to follow a conversation than say listening to someone give a talk. \nThis means that someone can listen to the podcast while they are doing another activity as it is a different way to take in information.\n\nLuiza pointed out what a benefit it is for us to be able to learn so much from the guests. \nIt is hard to stay on top of so many fast-paced developments. \nSo, we are in that sense lucky to be able to get to the level of depth of information through the conversations and ask the questions that we want to be answered. \nI also think it connects people as they hear about other researchers work.\n\n## 4. What tools/software do you use most in your podcast?\n\n**Emma** - The mic we used pre-pandemic was an H6 Zoom. \nFor online interviews: Zencastr and a decent headset with a built-in mic. \nEditing was done on Adobe Premiere Pro.\n\n**Zoe** - The podcast is hosted on PodBean. \nWe are thinking of going over to Audacity for editing as it is free, open source software.\n\n## 5. Do you have any top tips for other people that might be interested in starting a podcast?\n\n**Emma** - Decide on your audience and cater to them, what are their concerns and interests? \nCreate material that reflects those things.\n\nIt is incredibly hard to relax ‘on tape’, even if you are a good public speaker. \nIt is normal to feel anxious so don’t be surprised if you get very tense. \nThe best thing to do to overcome this is to press record and then just chat with people, even do some warm-up/ice breaker type exercises to get everyone comfortable.\n\nYou will hate your voice, everybody does, but you will learn to accept it in time. \nAim to speak normally, as you would to someone sitting next to you. Smile when you speak, it makes a difference.\n\nAlways ensure you get people to say their name at least once on the recording so you have the correct pronunciation (and check people’s preferred pronouns too).\n\nTake some brief notes as they speak so you can come back to earlier points or ask follow-up questions.\n\nAim for quality, not quantity, better to have one great episode a month than four okay ones. \nHowever, if you are looking to have a large audience it is probably best to be weekly or biweekly.\n\n**Zoe** - Do it as a conversation and have an idea of the audience in mind. \nMake sure that you ask questions to get the information for listeners to put ideas into practice - empower people to take action.\n\nIf you are trying to start a listener base, then try to interview people that have a lot of followers on Twitter so they can retweet.\n\nAlso, make sure you block the whole day for the interview as it is time-consuming and takes up a lot of energy.\n\n## 6. Do you have any tips on things to avoid?\n\n**Emma** - See other podcasts as opportunities for collaboration and cross-promotion, not competition.\n\nDon’t be vain: if you are interviewing you should try and ensure your guests sound good and edit your content down unless you are making a truly important point.\n\nDon’t be afraid to ask ‘stupid questions’: if you don’t understand something your listeners might not either.\n\n**Zoe** - Nobody likes bad sound so don’t record in noisy environments - particularly outside in windy conditions.\n\n## 7. Where do you see your podcast going in the future?\n\n**Zoe** - We presented a poster at the [Open Science Conference 2021](https://www.open-science-conference.eu/). \nIt looked at the talks that had been covered and mapped these on to the [FOSTER taxonomy of Open Science](https://www.fosteropenscience.eu/resources). \nThis has highlighted what topics we have covered most and what topics we still need to do.\n\nThe podcast is part of the Orion open science project and this will end in September. \nSo we are not happy that it might end and we are looking into how we can fund the podcast going forward.\n\n## 8. Is there anything else that you want to add to the interview that has not been covered in the questions above?\n\n**Emma** - I guess to try and innovate, the podcast format can be quite similar to look at how radio programming has presented the material in different ways for inspiration. Find a unique content or format!\n\n*This interview was conducted by Emma Karoune.*\n"
  },
  {
    "path": "book/website/communication/podcasts.md",
    "content": "(cm-podcasts)=\n# Podcasts for Research Communication\n\nA podcast is an audio programme that you can subscribe to and listen to on an app.\nThey are like blogs as they focus on a particular topic.\nA podcast can be a solo effort but would work better as collaborative work.\nThe length of podcasts varies from short 1-minute snippets to much longer in-depth pieces lasting hours.\nThey also vary in frequency from daily to monthly.\n\n(cm-podcasts-how)=\n## Start a Podcast\n\n* [How to start a podcast](https://www.podcastinsights.com/start-a-podcast/?gclid=CjwKCAiA9vOABhBfEiwATCi7GNV7zJl0tHaVkW-7DCjVdAwGa4q0vbaXB44xsSBHp7YBO8K6pH0syBoCVtUQAvD_BwE)\nIf you have experience making podcasts and would like to write in more detail about this to help others, then please get in touch with us.\n\n(cm-podcasts-recommendations)=\n## Some of Our Recommended Podcasts\n\n* [Orion Open Science](https://www.orion-openscience.eu/publications/training-materials/201902/podcasts).\n* [Open Science talk](https://soundcloud.com/opensciencetalk).\n* [The Turing Podcast](https://www.turing.ac.uk/news/turing-podcast).\n* [ReproducibiliTea Podcast](https://soundcloud.com/reproducibilitea).\n* [Open science stories](https://podcasts.apple.com/gb/podcast/open-science-stories/id1547403532).\n* [NHS-R Community Podcast](https://podcasts.apple.com/gb/podcast/nhs-r-community-podcast/id1583060756)\n"
  },
  {
    "path": "book/website/communication/presentations/presentations-personal-stories.md",
    "content": "(cm-presentations-personal-stories)=\n# Personal stories - Presenting Outside of Your Discipline\n\nWe would like to thank **[Yanina Bellini Saibene](https://yabellini.netlify.app/)** for answering our questions.\n\nFind out more about her work here:\n* ORCID: [0000-0002-4522-7466](https://orcid.org/0000-0002-4522-7466)\n* X (formerly Twitter): [yabellini](https://twitter.com/yabellini)\n\n**Yanina** is a researcher at [INTA in La Pampa, Argentina](https://inta.gob.ar/personas/bellini.yanina), applying data science to the agricultural sector.\nShe has a degree in Information Systems and a Master in Data Mining and Knowledge Management.\nShe is the co-founder and organizer of multiple collaborative spaces such as Metadocencia, RLadies and LatinR among others.\nShe has organized more than 70 events (of regional and international scope), including being general chair of the Jornadas Argentinas de Informática (2020-2021), founder and current chair of LatinR (one of the largest Latin American conferences on the use of R in research and development) and one of the global coordinators of useR! 2021.\nBoth in her role as a researcher and within the R community, she works to make science as reproducible and open as possible using open informatics tools.\n\n## 1. When did you start giving talks about your research in non-academic events?\n\nI work at [INTA](https://www.argentina.gob.ar/inta) (National Institute of Agricultural Technology), which is a scientific institution.\nOur activities are organized into research & development and knowledge transfer & extension, both with the same weight and importance.\nEverything that has to do with teaching, outreach, communicating, and transferring knowledge of our production to social actors in the agricultural sector and the general public is part of our work.\nWithin INTA, training and communication activities, whether through a course, a workshop, an article, or an interview in a newspaper, radio, or television, are important and necessary.\nOur activities only make sense if people use what we do.\n\n## 2. What aspects do you have to take into account when thinking about an event with very interdisciplinary talks?\n\nI think the main thing is to know your audience beforehand.\nYou can ask the organizers of the event to whom you are going to speak, what is their background, what is the reason they come to the event, and so on. \nIn that way, you can foresee some of the expectations they are going to have and try to fulfill some of them in your talk.\n\nAlso, I start the talk with a relaxed attitude so that the audience feels that, even though I am there as an expert,\nI am approachable when it comes to comments and questions.\nAfter all, these kinds of meetings and sessions are meant for people to take something away, to learn something.\n\nKnowing your audience and at least one or two of the things they expect from the talk is important. \nBy fulfilling these expectations the audience leaves with a sense that it was worth being there.\n\nThat is another point to take into account, respect for the other person's time and to prepare yourself in advance.\nMake it clear that you care about giving a good talk, with useful information. \nTell your audience that you want them to profit from the time they decided to spend listening to you.\n\nKeeping time schedules is also important, both for you, the audience, and the rest of the speakers.\n\nIt is necessary to be well informed about the format of the talk: the amount of time allotted to the talk, and its structure (like you deliver your talk and questions are asked at the end or you can ask questions during the talk, how much time is given to questions, are debates and discussions expected).\n\nIn general, if there is no predefined format for the talk, I ask to be allowed to interact with the audience.\nI like to ask questions and have them answer me in the chat, it makes them part of the event.\nThen, I read the answers and, even though the slide is the same, what I am going to say is going to be different depending on the answers I get.\n\nIf the format is structured, I follow the instructions of the organization, which in general consists of an introduction of the speaker, the presentation, and then the questions.\nSome organizers ask for the material beforehand so that the audience can go through it and send you the questions before the talk.\nSo you need to communicate with the organizers and understand the process.\nAlso, I always ask for feedback from the organizers so that I can improve the talk.\n\nOn the other hand, I try to address what was left unanswered at the event in two different ways: I make a blog post with the questions and answers (sometimes I add them on the talk’s page) or with Twitter threads.\n\nIn the same way, I strive to make the materials available before the talk and take into account accessibility issues, such as a font size that is visible, colour contrasts, including speaker's notes, a download link, a license so they know how to use it, among other details.\n\nThanks to [R-Ladies](https://rladies.org/) I started to pay more attention to these kinds of details in my materials, things that I didn't pay much attention to before but can make a big difference in the use and accessibility of my talks.\n\n## 3. What aspects of delivering these talks contribute to your professional work?\n\nThe foremost aspect is the network of contacts you gain from the events.\nBy attending and talking about what I’m working on has resulted in collaborations, agreements, publications, joint work, and projects.\n\nExpanding that network of contacts can also mean that you can bring people together to work jointly.\nI think it is a very important role for those of us who have been in the profession for several years to be a bridge between communities and people so that they can get to know each other.\n\nDelivering talks also helps me to improve my talks, my materials (many of them end up in a somewhat more academic publication), and to gauge the needs, doubts, or concerns of people regarding the topic I am communicating.\nThat serves me as a thermometer of demand, of what people are needing; of what is not being understood; of what topics require training, books, blogposts, or materials; to reaffirm or correct the direction of my work.\nThis can lead to the presentation of a new project proposal, the search for funding for that project.\n\nFinally, you learn a lot, about other fields, about other professions, about other people and other countries.\nIn the events, many times you get to attend other invited speakers’ talks and you learn from them.\nIn addition, you learn about projects, you access information and may be presented with other possibilities for yourself or for communities you know.\n\n## 4. Do you have any advice on things to avoid or, perhaps, to handle with care?\n\nI think you have to be very careful with humour.\nI think that this aspect works only on oneself, if I laugh at myself, then there is less risk of offending or hurting someone.\n\nOn the other hand, you have to avoid being impolite regarding schedules.\nFor example, if a talk lasts an hour, it would be convenient to finish it within 50 minutes and leave the participant ten minutes to stretch, get up, hydrate themselves or go to the bathroom and then continue with their routine, especially in this virtual setting where we live from one Zoom to another.\n\nIf you don't know how long it will take you, it's best to practice it beforehand in front of your pet, your family, or a community.\nAs you get the hang of it, you know how long the talk or concept is going to take, and whether it needs to be shortened or stretched depending on the time.\n\nAnother thing I would try to avoid is not leaving time to interact with people.\nAt some point, you have to interact with the people who attended the event, either during the talk, in the end, or when you feel more comfortable.\nIf you just deliver the talk, finish and leave, you lose the possibility of generating contacts or being approachable, which are two of the main goals of this type of event.\n\nRegarding the materials, make sure that they are accessible.\nAs I mentioned before, work to make them as accessible as possible (legible fonts, contrasting sizes and colours, speaker's notes, alternative text in the images) and that they are licensed.\n\nWhen I prepare a talk, when budgeting the time it takes me to put it together, I add a day or two more to check its accessibility.\nThe license is fundamental to let your audience know how they can reuse your material and, if they cannot reuse it, to make it clear.\n\nFinally, a very Argentine phrase: \"Don’t get up on your high horse\"; deliver the talk with the peace of mind that comes from knowing your work and your discipline, but also with fitting humility.\nYou have to acknowledge that there may be questions that you do not know how to answer.\n\nThe same goes for language, where you can be technically correct without using complex language.\nHowever, if you use technical terms because you have to, you have to explain them or make an analogy with everyday things.\nFor example, a computer program is like a recipe: you give instructions to the computer.\nThat is why it is key to know your audience, as then you know what to rely on when explaining more complex concepts.\n\nWe are discussing talks given at community events.\nIn general, I deliver them free of charge and the materials are open, but if a company invites you, don't be ashamed or afraid to charge for them in case that, later on, it will be economically profitable for whoever invites you.\nI also don't pay out of my pocket if I am invited to give a talk; this means that the costs of travel or registration are paid by the organizer.\nIf your talks are in high demand, the organizer's handling of the costs helps you decide.\nAlso, you should never transfer the intellectual property of your material to the event organizer. \nIf organizers ask you to transfer your rights you should charge them for it.\n\nIn my case, the talks I deliver are related to Data Science, with Agricultural Sciences and communities of practice.\nIf I am invited to deliver a talk as an INTA researcher, I do not charge for it either, because it is part of my job.\nWhen I am invited to deliver a talk due to my involvement in communities of practice or for events not related to INTA, if they are for public universities, for example, organizations like R-Ladies, or free events and conferences, I accept as a way of giving back a big part of what I received.\nI live in a country that allowed me to receive education in a public system that is funded by all of us, and giving this kind of training is a way of giving back.\nCurrently, I’m privileged enough to be able to engage in this kind of activity without charging; not everyone is, and they don't have to feel obligated to do it.\n\nSome people have a guideline when it comes to being invited to deliver a talk, such as [Tatiana Mac](https://gist.github.com/tatianamac/493ca668ee7f7c07a5b282f6d9132552#file-tatiana-mac-speaker-rider-md), [Greg Wilson](https://third-bit.com/talks/speaking/) and Steph Locke.\n\nThese are also questions that I take into account: Is it an all-male panel?\nDoes the event have a Code of Conduct?\nIs it open access, or does it have benefits for less advantaged people?\nAgain, if one can demand these types of things in the events one is going to participate in, we will be helping to generate friendlier and safer environments.\nSometimes one does not have the possibility or the privilege to choose, so those of us who can do it.\n\n## 5. What perspectives do you have for your future talks? What would you be interested in trying?\n\nLately, I have been asked to give talks on three topics: communities of practice, science and data applied to agriculture (with use cases), and science and data in geo-technology.\nIt is difficult to maintain the enthusiasm of always telling the same thing because, in addition, you feel like an impostor thinking about how many more times you are going to deliver the same talk.\nThe thing is that, sometimes, they invite you because they have seen it and want to replicate it in another setting.\n\nWhat I generally do is to update the talks when I have new results or use cases and, depending on the expected audience, I explain in more detail the concepts I need them to know to get more out of the talk.\n\nIt can be noted that there is a great need to resume face-to-face activities.\nI hope that virtual activities will continue because they opened up a panorama of participation (as a lecturer and as an attendee) that I did not have before; they allowed me to attend activities that would have been beyond my reach if I’d had to be there in person (Ecuador, Bolivia, USA, Africa) since I have two small children and I avoid long trips, at least until they are older.\nSo, without virtual events, I would not have been able to reach so many people.\nWe’ll see what happens, what the future holds.\nI think that this year and most of next year, we will continue in the same way, at least in the (Global) South.\n\nRegarding the tools to give courses and talks, I apply a lot of what we teach in MetaDocencia and it works very well.\nI hope to continue learning; currently, I am reading a couple of books that I hope will help me: *Teaching in the Online Classroom* by Doug Lemov, *The Discussion Book* by Stephen Brookfield, and *The Programmer's Brain* by Felienne Hermans.\n\n*This interview was conducted by Maria Nanton.*\n\n\n---\n\n\n# Personal stories - Presenting outside of your discipline (Español)\n \nQueremos agradecer a **[Yanina Bellini Saibene](https://yabellini.netlify.app/es/)** por responder nuestras preguntas. \n\nPodés interiorizarte en su trabajo en los siguientes links:\n* ORCID: [0000-0002-4522-7466](https://orcid.org/0000-0002-4522-7466)\n* X (formerly Twitter): [yabellini](https://twitter.com/yabellini)\n\n**Yanina** es investigadora del [INTA en La Pampa, Argentina](https://inta.gob.ar/personas/bellini.yanina) aplicando ciencia de datos al sector agropecuario. \nEs Licenciada en Sistemas de Información y Magíster en Explotación de Datos y Gestión del Conocimiento. \nEs cofundadora y organizadora en múltiples espacios colaborativos como Metadocencia, RLadies y LatinR entre otros. Organizó más de 70 eventos (de alcance regional e internacional) entre los que se destacan ser chair general de las Jornadas Argentinas de Informática (2020-2021) y fundadora y actual chair de LatinR, una de las conferencias latinoamericanas más grandes sobre el uso de R en investigación y desarrollo y una de las coordinadoras globales de useR! 2021. \nTanto en su rol como investigadora como con la comunidad R trabaja buscando hacer que la ciencia sea lo más reproducible y abierta posible utilizando herramientas informáticas abiertas.\n\n## 1. ¿Cuándo comenzaste a dar charlas sobre tu trabajo como investigadora en eventos no académicos?\n\nYo trabajo en el [INTA](https://www.argentina.gob.ar/inta) (Instituto Nacional de Tecnología Agropecuaria), que es una institución científica. Nuestras actividades están organizadas en investigación y desarrollo y transferencia y extensión, ambas con el mismo peso e importancia. \nTodo lo que tiene que ver con hacer enseñar, difundir, comunicar, transferir conocimiento de nuestros desarrollos a actores del sector agropecuario y al público en general, es parte de nuestro trabajo. Dentro del INTA, las actividades de formación y comunicación, ya sea por medio de un curso, taller, de una nota o entrevista en un diario, radio, televisión, son importantes y necesarias. Solo tenemos sentido si la gente utiliza lo que hacemos.\n\n ## 2. ¿Qué aspectos tenés que atender a la hora de pensar un evento con charlas muy interdisciplinarias?\n\nCreo que lo principal es conocer a tu audiencia previamente. Se les puede preguntar a los organizadores del evento a quienes les vas a hablar, cuál es su background, cuál es la razón por la que vienen al evento, ya que, de esa manera, se puede prever algunas de las expectativas que van a tener e intentar, por lo menos, cumplir alguna en tu charla. \n\nAsimismo, comienzo la charla con una actitud descontracturada para que el público sienta que, a pesar de que estoy ahí como experta, soy accesible a la hora de los comentarios y preguntas. Después de todo, este tipo de encuentros e intercambios se realizan para que las personas se lleven algo, aprendan algo. \n\nConocer a tu audiencia y al menos una o dos de las expectativas que esperan de la charla es importante, ya que al cumplirla se van con algo que fueron a buscar y por eso va a contribuir a la evaluación de que valió la pena estar ahí. \n\nEse es otro punto a tener en cuenta, el respeto por el tiempo del otro y prepararte con anticipación, que se note que te importa dar una buena charla, con información útil, que se note que querés que aprovechen ese tiempo que decidieron dedicarte a vos escuchandote.   \n\nEl respeto por cumplir los tiempos, también es importante, tanto para vos, el público y el resto de los oradores.\n\nEs necesario estar bien informado sobre el formato de la charla:  cantidad de tiempo de la charla, formato (ej: se expone y las preguntas al final, se puede ir haciendo preguntas durante la charla, cuánto tiempo de preguntas o intercambios se esperan), ¿hay libertad en el formato o es estructurado?. \n\nEn general, si hay libertad en el formato de la charla, pido que me dejen interactuar con el público. Me gusta hacer preguntas y que me contesten en el chat, los hace parte del evento. Luego, leo las respuestas y, a pesar de que el slide es el mismo, lo que voy a decir va a ser diferente dependiendo de las respuestas que consiga. Si el formato es estructurado respeto las instrucciones de la organización, que en general es una introducción de la disertante, la presentación y luego las preguntas. \n\nHay organizadores que te piden el material previamente para que el público lo mire y te envíen las preguntas antes de la charla. Por eso, es preciso comunicarse con los organizadores y comprender el proceso. Además, siempre pido un feedback de los organizadores para poder ir mejorando la charla.\n\nPor otro lado, intento responder lo que no se contestó en el evento de dos maneras distintas: hago un blog post con las preguntas y respuestas (a veces las agrego en la página de la charla) o con hilos de Twitter. De igual forma, procuro dejar disponibles los materiales antes de la charla y tener en cuenta cuestiones de accesibilidad, como que la fuente tenga un tamaño que sea visible, los contrastes de colores, que incluya notas del orador, un link de descarga, una licencia para que sepan cómo usarla, entre otros detalles. \n\nGracias a  R-Ladies empecé a prestar más atención a este tipo de detalles de mis materiales, cosas que antes no tenía mucho en cuenta pero pueden hacer una gran diferencia en el uso y acceso de mis charlas.\n\n ## 3. ¿Qué aspectos de dar este tipo de charlas aportan a tu trabajo profesional?\n\nLo primero es la red de contactos que generas a partir de los eventos. El hecho de ir y contar lo que estás haciendo, me ha significado futuras colaboraciones, convenios, publicaciones, trabajos en conjunto y proyectos.\n\nAmpliar esa red de contactos también puede resultar en que uno pueda juntar a personas para que trabajen juntas. \nCreo que es un rol muy importante que poseemos las personas que ya tenemos varios años en la profesión, ser de puente entre grupos de trabajo y personas para que se conozcan. \n\nPor otra parte, me ayuda a mejorar mis charlas, mis materiales (muchos de ellos terminan en algún tipo de publicación más académica) y a tomar el pulso de cuáles son las necesidades, dudas o inquietudes de las personas con respecto al tema que estoy comunicando. \nEso me sirve como un termómetro de la demanda, de lo que las personas están necesitando; de lo que no se está entendiendo; de los temas que están haciendo falta tener una capacitación, libros, blogs o materiales; para reafirmar o corregir la dirección de mi trabajo. \n\nEsto puede terminar en la presentación de una propuesta de proyecto nuevo, la búsqueda de un financiamiento para ese proyecto.\n\nPor último, se aprende muchísimo, sobre otros temas, sobre otras profesiones, sobre otras personas y otros países. \nEn los eventos, muchas veces escuchás la charla de otras personas que están invitadas y aprendes de ellas. Además, te enteras de proyectos, accedes a la información y se te pueden presentar otras posibilidades para vos o para grupos de trabajos que conozcas. \n\n ## 4. ¿Tenés consejos sobre cosas que hay que evitar o, quizás, manejar con cuidado?\n \nCreo que con el humor hay que ser muy cuidadosa. \nPienso que ese aspecto funciona únicamente sobre uno mismo, si me río de mi, entonces hay menos riesgos de ofender o lastimar. \n\nPor otro lado, hay que evitar la descortesía de los tiempos. \nPor ejemplo, si una charla dura una hora, sería conveniente terminarla en 50 minutos y dejarle al participante diez minutos para que se estire, levante, hidrate o vaya al baño y, luego, que continúe con su rutina, especialmente en este ámbito virtual donde vivimos de un zoom a otro. \n\nSi no sabes cuánto tiempo te va a llevar, mejor practicarla previamente ante tu mascota, tu familia o una comunidad. \nA medida que uno le agarra la mano, sabe cuánto va a tardar la charla o concepto, y si es necesario achicarla o estirarla dependiendo del tiempo.\n\nOtra cosa que intentaría evitar es que no haya interacción con la gente. \nEn algún momento, se tiene que interactuar con las personas que asistieron al evento, sea durante la charla, en el final o cuando te sientas más cómoda, pero si solo vas dar la charla, terminas y te retirás, perdés la posibilidad de generar contactos o estar accesible, dos de las cosas que este tipo de eventos tiene como objetivo principal. \n\nCon respecto a los materiales, evitar que no sean accesibles.  Como mencioné antes trabajar para que sean lo más accesible posible (fuentes legibles, tamaños y colores contrastantes, notas del orador, texto alternativo en las imágenes) y que tengan licencia. \n\nCuando hago una charla, dentro del tiempo que me lleva armarla, le agrego uno o dos días más para chequear la accesibilidad. \nLa licencia es fundamental para que sepan cómo pueden reusar tu material y, si no lo pueden reusar, que quede claro.\n\nPor último, una frase muy argentina: “no pararse arriba del caballo”, dar la charla con la tranquilidad que conocés tu trabajo y tu disciplina, pero con la humildad que corresponde. Hay que reconocer que puede haber preguntas que no sepas responder. \n\nLo mismo pasa con el lenguaje, donde se puede ser correcto técnicamente sin utilizar un lenguaje complejo. \nSin embargo, si empleas términos técnicos porque los tenés que usar sí o sí, hay que explicarlos o hacer una analogía con cosas de la vida cotidiana. Por ejemplo, un programa de computación es como una receta: le das instrucciones a la computadora. \nPor eso es clave conocer a tu audiencia, porque podés saber en qué apoyarte al momento de explicar conceptos más complejos.\n\nEstamos hablando de charlas que se dan en eventos comunitarios. En general, yo los doy sin costo y los materiales son abiertos, pero si una empresa te invita, que no te de vergüenza ni miedo cobrar por las mismas en el caso de que eso, después, reditúe económicamente a quien te invita. \n\nYo tampoco hago gastos de mi bolsillo si me invitan a dar una charla; esto significa que los costos de viajes, inscripción, corren por cuenta del organizador. Si tus charlas tienen mucha demanda, el manejo de los costos por parte del organizador, te ayuda a decidir. Asimismo, nunca hay que entregar la propiedad intelectual de tu material a quien haga el evento, pero si te piden que la entregues y vos estás de acuerdo, cobrales muy bien. \n\nEn mi caso, las charlas que doy tienen que ver con Ciencia de Datos, con Agro y con comunidades de práctica.  \nSi me invitan a dar una charla como investigadora de INTA tampoco cobro, porque es parte de mi trabajo.  \nCuando me invitan a dar una charla por mi trabajo en las comunidades de práctica o no relacionado con INTA, si son de universidades públicas, de grupos como R-Ladies, para eventos y conferencias gratuitos, las hago como una forma de devolver gran parte de lo que recibí. \n\nVivo en un país que me permitió educarme con un sistema que lo mantenemos entre todos, y dar este tipo de capacitaciones es una forma de retribución. Hoy en día, tengo suficiente privilegio como para poder realizar este tipo de actividades sin cobrar; no todo el mundo puede, y tampoco se tienen que sentir obligadas. \n\nHay algunas personas que tienen una guía a la hora de ser invitada a dar una charla, por ejemplo [Tatiana Mac](https://gist.github.com/tatianamac/493ca668ee7f7c07a5b282f6d9132552#file-tatiana-mac-speaker-rider-md), [Greg Wilson](https://third-bit.com/talks/speaking/) y Steph Locke. \n\nEstas también son cuestiones que yo tomo en cuenta, ¿es un panel todo de hombres?, ¿el evento tiene un Código de Conducta?, ¿Es de acceso libre o bien tiene beneficios para personas menos favorecidas?. \nDe nuevo, si uno puede exigir este tipo de cosas en los eventos que va a participar estaremos ayudando a generar ambientes más amigables y seguros.  A veces no se tiene la posibilidad o el privilegio de elegir, quienes podemos, debemos hacerlo. \n \n ## 5. ¿Qué perspectivas tenés de tus futuras charlas? ¿Qué te interesaría probar?\n\nÚltimamente, me piden que haga charlas sobre tres temas: comunidades de práctica, ciencia y datos aplicados al agro (con casos), y ciencias y datos en geotecnología. Es complejo mantener el entusiasmo de contar siempre lo mismo porque, además, uno se siente medio impostor pensando en cuántas veces más va a dar la misma charla. El tema es que, a veces, te invitan porque la vieron y quieren replicarla en otro ámbito. \n\nLo que hago, en general, es ir actualizándolas cuando tengo nuevos resultados o casos de uso y, dependiendo de la audiencia que me dicen que va a haber, ejemplifico en detalle o explico con más detalle los conceptos que necesito que se conozcan para que se aproveche más la charla. \n\nSe puede observar que hay una gran necesidad de parte de la gente por volver a lo presencial. \nYo espero que siga el tema virtual porque se me abrió un panorama de participación (como disertante y como asistente) que no tenía; me permitió llegar a lugares que hubiesen sido imposible si eran presenciales (Ecuador, Bolivia, EE. UU., África) ya que tengo dos hijos chiquitos y evito realizar viajes largos, por lo menos hasta que sean más grandes. Entonces, sin la virtualidad no hubiese podido llegar a tanta gente. Vamos a ver qué ocurre, qué nos depara el futuro. Yo pienso que este año y gran parte del año que viene, vamos a seguir igual, al menos en el sur.\n\nCon respecto a las herramientas para dar cursos y charlas, aplico mucho lo que enseñamos en MetaDocencia y funciona muy bien. \nEspero seguir aprendiendo; actualmente, estoy leyendo un par de libros que espero me ayuden: *Teaching in the Online Classroom* de Doug Lemov, *The Discussion Book* de Stephen Brookfield y *The Programmer’s Brain* de Felienne Hermans.\n\n*Esta entrevista fue desarrollada por Maria Nanton.*\n"
  },
  {
    "path": "book/website/communication/presentations/presentations-remote.md",
    "content": "(cm-wa-comms-presenting-remote)=\n# Presenting at Remote Events\n\nGiving a talk or presenting a poster at a remote conference poses particular challenges.\nWhether this occurs in a live or pre-recorded event, some factors should be paid special attention to related to the technical quality of the presentation and its accessibility.\n\n## Visual Elements of the Presentation\n\nA presentation for a wide audience can include photos, illustrations, graphics and icons. \nThere are many sites from which you can obtain these types of resources for free (with attribution) or paid to use in your presentations.\n\nSome of the websites that offer these resources for free are:\n\n* [The Noun Project](https://thenounproject.com) for icons and photographs\n* [Unsplash](https://unsplash.com) for photographs\n* [Pexels](https://www.pexels.com) for photographs\n* [Freepik](https://www.freepik.com/free-photos-vectors/english) for icons and illustrations\n* [Flaticon](https://www.flaticon.com/free-icons/english) for icons\n* [Canva](https://www.canva.com) for icons\n\n## Technical Set-up for Recording a Talk\n\nPresenting a talk through a digital medium involves tackling some technical challenges, including managing video and sound accessibility and quality.\n\n### Video Recording\n\n* Use captions during the talk to aid accessibility.\n* A useful step to ensure that people with different devices (and screens) can appreciate the video's content is to develop the presentation using your smallest screen.\n* Even if you are only sharing a slide deck, seeing you on video can help your audience to keep their concentration on the presentation. \nYou don't need the best camera or video post-processing software, but [managing your lighting](https://www.youtube.com/watch?v=rGcAM1CNEU0&ab_channel=Wirecutter) will do wonders for your video quality.\n\n### Sound Setting\n\n* For the members of your audience who aren't hard of hearing, sound quality will always be more important than video quality.\n* Before the presentation, record your voice using the same device you will be using in the presentation to check the sound quality and make any adjustments you can to ensure a crisp sound.\n\n### Video Recording\n\n* The simplest way to record the contents of your talk, including your video, voice and presentation, is to record it using a videoconference service (like Zoom) or recording software like [OBS](https://obsproject.com). \nSee [this guide](https://software.ac.uk/fellowship-programme/2019/application-video-guide) by the Software Sustainability Institute on how to configure OBS for screen recording.\n* If you are recording your talk to present it asynchronously you can use platforms like [Amara](https://amara.org) to generate your subtitles from the video.\n\n## What to Expect from Speaking Invitations\n\nIf you have published a research piece (like a scientific paper, software or blog), or if you are known for having expertise in your field, you are likely to get invited to give talks at events such as public forums, panels and conference sessions.\nIt could also be something you do upon request, for example, for graduate schools where young researchers can learn from your research work or career path.\nIt is beneficial for your career progression as more people get to know you, learn about your work and establish collaborations.\nBy giving talks at different institutions and events you can receive timely feedback on your progress and improve the quality and impact of your research.\nFor event organisers, inviting experts as speakers can increase the popularity of their events because the participants have opportunities to learn from experts and exchange ideas on topics of common interest.\n\n### Honoraria for Delivering a Talk\n\n> Honoraria recognises the speaker's work by recompensing them for the time and expertise they invested in developing and delivering a talk.\n\nAn invited talk is often expected to be delivered for free as it benefits both the organisers and the speakers.\nHowever, it is not a fair situation for all, especially when people have personal financial needs, or if they are self-funded.\nIn some cases, honoraria are offered to speakers by event organisers to recompense for the talk preparation time and cover related costs such as accessibility requirements for remote events, or travel and accommodation for in-person events. \nHow much they are offered will vary depending on the organisation (non-profit or private sector), nature of participation (such as short talk, panel discussion or seminar) and also the status of the talk, for example, you might be offered more for being a keynote speaker at a large conference. \nMany academics are never offered or do not accept honoraria payments for many personal (tax, admin overhead in handling small fund, sufficient salary or personal interest in the event) or professional (their organisation policy prohibits the receiving of honoraria or they donate back to the host organisation) reasons.\n\nTo have a diverse and inclusive academic community, we need to be aware that not all researchers can afford to dedicate their time to volunteer/unpaid labour or have the money to cover the cost of giving an invited talk.\nTherefore, organisers should consider offering honoraria, if they have sufficient budget, as developing talks takes a substantial amount of time and effort.\n\nFor more information about giving invited talks see the blog \"[Speaking as an Academic: What to expect when you are invited to share your work](http://getalifephd.blogspot.com/2017/04/speaking-as-academic-what-to-expect.html)\".\nAlso, see [Fix the Gap](https://500womenscientists.org/fix-the-gap) project by '500womenscientists.org' that aims to crowdsource speaking engagement fees & honoraria details to empower researchers to ask for compensation.\n\n### Speaker Rider for Invited Talks\n\nA Speaker rider is a framework for speakers to list their expectations from events where they would consider giving an invited talk.\nSpeaker riders allow speakers to evaluate if speaking at an event aligns with their objectives and values.\nMost importantly, it has a specific role in encouraging organisers to make necessary arrangements to ensure inclusion and accessibility for a diverse audience.\n\nIn open source space, [Tatiana Mac's Speaker Rider](https://gist.github.com/tatianamac/493ca668ee7f7c07a5b282f6d9132552) is highly cited and reused to make open source events more accessible and beneficial for the historically excluded and marginalised communities.\n\n```{note} Speakers: What You Can Do\n\nAs Tatiana Mac put it in their speaker rider, speaking comes with immense privilege. Not everyone gets to be a speaker, but if you’re in a position to do so, we encourage you to use this privilege to check whether the event you’re speaking at shares your values, and/or ask that they make sure their event is a better and more inclusive space for historically marginalized communities.\n\nSource: [Pudding and OpenNews](https://pudding.cool/process/speaker-rider/)\n```\n"
  },
  {
    "path": "book/website/communication/presentations.md",
    "content": "(cm-presentations)=\n# Presenting Posters and Conference Talks\n\nMuch like writing lay summaries and blogs, presentation of your work at conferences that are not within your immediate research environment need to be carefully thought through.\n\nThe same principles apply here: know your audience, adapt your style and generally make your writing/talk less technical in terms of the language.\n\nIn addition to these points, to increase the accessibility and findability of your presentations it is a good idea to:\n* During the talk, use captions to aid accessibility.\n* Record the talk and add this link to the presentation when shared.\n* Add talk notes to the presentation (this can be done in a PowerPoint file) or have them in a separate file to be shared.\nYou could also write a blog post based on your talk.\n* Use academic social media, such as ORCID, ResearchGate or Academia, to help disseminate your work further.\n* Share the conference slides on social media with a persistent identifier (discussed below).\n\n(cm-presentations-sharing)=\n## Sharing your Presentations\n\nThere are many ways you can make your poster and slides for your talks publicly available, such as by sharing the respective files in accessible formats (such as pdf, image file, PowerPoint slides, {term}`Markdown` format).\nThese files can be shared via an online repository (like [GitHub](https://github.com/) or [Bitbucket](https://bitbucket.org/)), a shared drive with a shareable link (like Dropbox and Google Drive) or the platform put in place by the event where you present your work.\nIt is advisable to share your file under a license of your choice so that others know how to reuse your work (see {ref}`rr-licensing`).\nFurthermore, you can get a digital object identifier or DOI by uploading your presentation files to a server of your choice (like [Zenodo](https://zenodo.org/) and [FigShare](https://figshare.com/)).\nSee the chapter on {ref}`DOI<cm-citable-steps-doi>` for details.\n"
  },
  {
    "path": "book/website/communication/research-objects/ro-concepts.md",
    "content": "(cm-ro-concepts)=\n# Lifecycle\nA RO commonly starts its life as an empty Live Research Object. ROs aggregate new objects through their whole lifecycle. This means, a RO is filled incrementally by aggregating new relevant resources such as workflows, datasets, documents that are being created, reused or repurposed. These resources can be modified at any point in time. \n\nWe can copy and keep ROs in time through snapshots which reflect their status at a given point in time. Snapshots can have their own identifiers which facilitates tracking the evolution of a research. At some point in time, a RO can be published and archived (so called Archived Research Object) with a permanent identifier. New Live Research Objects can be derived based on an existing Archived Research Object.\n\n# Typologies\nWe provide below some list of standard ROs described in the literature and emerging ones:\n\n- Bibliography-centric: includes manuals, anonymize interviews, publications, multimedia (video, songs) and/or other material that support research.\n- Data-centric: refers to datasets which can be indexed, discovered and manipulated. For further info of this typology, we suggest to check the section on {ref}`data papers <cm-dif-articles-data>`.\n- Executable: includes the code, data and computational environment along with a description of the research object and in some cases a workflow. This type of ROs can be executed and is often used for scripts and/or Jupyter Notebooks.\n- Software-centric: also known as “Code as a Research Object”. \nSoftware-centric ROs include source codes and associated documentation. \nThey often include sample datasets for running tests. \nFor further info of this typology, we suggest to check the section on {ref}`software papers <cm-dif-articles-software>`.\n- Workflow-centric {cite:ps}`Belhajjame-ro-workflow2015`: contains workflow specifications, provenance logs generated when executing the workflows, information about the evolution of the workflow (version) and its components elements, and additional annotations for the workflow as a whole.\n"
  },
  {
    "path": "book/website/communication/research-objects/ro-implementation.md",
    "content": "(cm-ro-implementation)=\n\n# Implementation and associated platforms\nAmong the existing tools and related infrastructure to curate and create Research Objects (ROs), we provide below some of them which are currently in operation:\n\n- [workflowHub](https://workflowhub.eu/) focuses on workflow-centric ROs and supports any workflow in its native repository.\n- [RoHub](https://reliance.rohub.org/) allows to create, manage (live Research Object) and preserve research work. \nIt also supports reuse and forking of existing Research Objects as well as the possibility to directly access and visualise data (data-centric RO) or to execute (executable RO). \nThere is a GUI and a Python API for managing ROs.\n- [BioCompute Objects](https://www.biocomputeobject.org/) is a community-driven initiative to build a framework for standardisation and sharing computations and analyses generated from [High-throughput sequencing](https://en.wikipedia.org/wiki/High-throughput_sequencing).\n- [Aperture Neuro](https://www.humanbrainmapping.org/i4a/pages/index.cfm?pageid=4121) enables sharing and communicating open neuroscience Research Objects (Tutorials, Jupyter Notebooks, Software). This platform does not support live Research Objects and is meant to be used for publishing only."
  },
  {
    "path": "book/website/communication/research-objects.md",
    "content": "---\nabbreviations:\n  RO: research object\n---\n(cm-ro)=\n# Research Object to capture the Research Life Cycle\n\n## Prerequisites / recommended skill level\n| Prerequisite |  Importance  | Notes        |\n| ---------------- |------------------ |--------------|\n| {ref}`rr-rdm` | Helpful | RDM lifecycle |\n\n## Summary\nResearch outcomes encompass publications, data, software, bibliographical material and any other resources (such as experimental workflows, standards) that can be potentially useful for conducting research.\n\nA Research Object (RO) {cite:ps}`Garciasilva2019-research-objects` is a method for the identification, aggregation and exchange of scholarly information on the Web. \nROs allow working 'open by design' and share research outputs during the research process and not only results at the end.\nThe primary goal of the RO approach is to provide a mechanism to associate or link related resources about a research investigation so that they can be shared using a single identifier [{term}`def<Identifier>`] {cite:ps}`Belhajjame2015RO`.\n\nIn this chapter, we will introduce ROs, their typologies and which platform and technologies exist to create and publish them.\n\n```{figure} ../../figures/research-object.*\n---\nname: ro-lifecycle\nalt: This image shows how research objects evolve and grow in content during the collaboration process and how new research objects can be derived from existing ones.\n---\nResearch Objects allow working open by design and share during the research process and not only the research outputs at the end. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n(cm-ro-motivation)=\n## Background & Motivation\n\nROs are living resources helping to organise and describe the inputs, materials, and methods used in a scientific experiment and obtained as a result and not only at the end when publishing the research outcomes. \nROs encompass research outputs created, revised and shared throughout the research lifecycle that help validate findings claimed in scholarly publications.\nIn short, ROs can be seen as a \"single information unit\" where any research material can be shared with other scientists at discrete milestones of the investigation within and outside the project.\n\nMotivation behind RO is the need to identify and share all components such as data, source code, tools, method documentation, as well as communication materials such as presentations, videos, blogs and other tangible outcomes. \nThe entire research lifecycle can be captured, allowing the release and publication of results progressively, keeping track of versioning and change information. \nROs facilitate reproducibility of the scientific methods and results through access to resources, context and metadata, and reuse with the possibility of forking existing ROs. \n\nThere are three guiding principles for RO:\n- Digital identity - Using unique identifiers, such as DOIs for tangible outcomes such as publications or data, and ORCID iDs for researchers (explained in detail in the {ref}`ORCID section<cm-citable-orcid>`).\nThese persistent identifiers are part of an interconnected open scholarly infrastructure - see our [chapter on persistent identifiers](#rr-rdm-pid).\n- Data aggregation - Using a method to aggregate all outcomes so that they are discoverable and hence allow anyone to investigate and reproduce the research.\n- Annotation - Use rich machine-readable metadata (discussed in {ref}`Chapter on Documentation and Metadata<rr-rdm-metadata>`) that help ensure findability and accessibility of all scientific work.\nRO helps understand the entire research lifecycle through research outcomes including publication shared progressively, allowing to track the versioning and development of the entire project.\n\nAll the research work, including potential failures, dead ends or any other information such as experimental protocols, software code, standards as well as all the individuals who contributed to the research can also be recorded in the RO.\nAs a result, ROs support evidence and support validation of findings claimed in scholarly articles.\n\n(cm-ro-interim)=\n\n## Interim Research Outputs\n\nResearch objects span the entire research lifecycle, not just final peer-reviewed publications. Interim research outputs - including preprints, protocols, data management plans, and preliminary datasets - can all be published with persistent identifiers and formally cited, enabling transparency and incremental credit for research work.\n\nEach type of interim output serves a distinct purpose in the research process. Preprints enable rapid sharing of findings before peer review, protocols document methodologies for reproducibility, Data Management Plans demonstrate rigorous planning, and preliminary data allow validation and feedback from the community.\nPublishing these outputs with DOIs creates a traceable record of your research evolution and allows others to build on your work at every stage.\nMaking interim outputs citable benefits both individual researchers and the broader community.\nResearchers receive credit for methodological innovations and early-stage work, while the community gains access to protocols, receives earlier feedback opportunities, and can identify complementary research efforts sooner.\nThe infrastructure for making these outputs citable is straightforward - most platforms automatically assign DOIs when you publish.\n\nFor specific guidance on publishing different types of interim research outputs:\n- **Preprints:** See our guidance on [preprint DOI workflows](#rr-open-access-preprints-doi)\n- **Protocols:** Learn about [protocols as citable objects](#pd-overview-sharing-protocols)\n- **Data Management Plans:** Discover [DMPs as research objects](#rr-rdm-dmp-citable)\n- **Understanding DOIs:** Read our [chapter on persistent identifiers](#rr-rdm-pid) for infrastructure details\n- **Linking outputs:** See [connecting research through metadata](#cm-citable-linking) for creating relationships between interim and final outputs\n\n(cm-ro-contribute)=\n## Contribute to this Chapter\nWe invite all contributions in the following areas:\n- Add or update relevant concepts regarding ROs and related concept such as FAIR Digital Objects {cite:ps}`desmedtetal20202-FAIR-digitalobjects`;\n- Complete and/or add information about typologies;\n- Include additional implementation of ROs and associated services.\n"
  },
  {
    "path": "book/website/communication/social-media/social-media-twitter-multiple.md",
    "content": "(cm-social-media-twitter)=\n# Managing Multiple X Accounts\n\nManaging multiple accounts on X (formerly Twitter) can be challenging and you might be following a certain social media policy or approach that is different from how you would tweet from your personal account.\n\nMany projects and organisations have their own X account that is used for advertising their research outputs and events.\n\n(cm-social-media-twitter-organisation)=\n## Managing an Organisational X Account\n\n**1. Be sure that you are clear about what the purpose of the account is and the type of tweets that the organisation wants.**\n\n* Is it going to be a professional tone or more relaxed and fun.\n* Are there certain restrictions about what content you can tweet about such as not sharing data or results?\n\n**2. Use scheduling to time your tweets**\n\n* This can be done through the X web browser or by using an X app such as X Pro (formerly Tweetdeck).\n* X Pro is the only app owned by X.\nIt was previously free to use but now requires a paid X Premium subscription.\nBut there are [other apps for all different platforms](https://www.reviewgeek.com/52119/the-best-twitter-apps-for-every-platform/), although you often have to pay for their services too.\n* There are other apps, such as [Buffer](https://buffer.com/), that you can use to control multiple social media channels.\n* Scheduling tweets is particularly helpful if you are running an event as you can schedule tweets well in advance to give important information.\n\n**3. Preventing miss tweeting**\n\n* When you are responsible for multiple tweeter accounts, there is the possibility of miss tweeting.\nThis is when you tweet out, for example, a personal tweet using an organisational account.\n* X Pro has a feature that allows you to add a confirmation step to perform an extra check before tweeting.\nThis helps to prevent this issue.\n\n**4. Enabling multiple users of the same account**\n\n* Also on X Pro, you can [set up an account as a team to allow multiple users to have different access](https://help.twitter.com/en/using-x/postdeck-teams).\n* There will be one person that is the admin for the account and then the other users are contributors.\n* As a contributor you can post Tweets, Direct Message, like, and Retweet for the team account.\nYou cannot change the password or manage account settings.\n"
  },
  {
    "path": "book/website/communication/social-media/social-media-twitter-tips.md",
    "content": "(cm-social-media-twitter-tips)=\n# Tips for Starting with X\n\nX (formerly Twitter) has 450 million monthly active users {cite:ps}`boa2023twitter`.\nYou are limited to 280 characters unless you pay for X Premium. \nThe style tends to be more informal and chatty than other platforms like LinkedIn.\nYou can use links, photos (1200 x 628 pixels) and videos (max 2 minutes 20 secs) in similar ways to the other social media platforms.\n\nBelow are general tips for starting to use X for personal academic purposes. Some of the tips have been adapted from 'Practical tips for scientists using twitter' {cite:ps}`Chabrol2021twitter`.\n\nBut when starting with X it is important to first consider what your purpose for using it is.\nThis will help you develop your voice (how you want to be heard, what topics you focus on, your overall message) on X.\n\n**1. Choose a good X handle and write a good bio**\n\n* Add a photo, cover image and short bio that is relevant to the research you are doing.\n* Your bio can be linked to accounts such as your institution using their @, your funding body and common hashtags for your subject.\n* You might want to have a specific X account for your project or organisation as well as a personal one.\n\n**2. Make lists**\n\n* This helps you to follow lots of people and can be used for events.\n* Lists can be made public.\n\n**3. Think about your audience for each tweet**\n\n* It might be that all your tweets are to target your research community but some may also be for the wider public.\nTherefore, think carefully about the language you use, avoid jargon and subject-specific acronyms, and add links to more information.\n\n**4. Add subject-specific hashtags**\n\n* Unless you're paying for X Premium you'll only have 280 characters, so using hashtags to link to different groups of interest is an important way to get your message out there.\n* Tweets with hashtags can increase engagement by almost 100% for individuals.\n* There are also regular hashtags for each day of the week, for example, #MondayMotivation or #FridayFeeling.\n\n**5. Include some other accounts in your tweet**\n\n* Linking your tweet to other accounts using @ will mean you get more retweets and therefore will spread your tweet further.\n* It is a good idea to find other researchers and organisations that have large X followings.\nThis gives your tweet the largest reach possible.\n\n**6. Add visuals**\n\n* You can use images and gifs to draw attention to your tweets.\n* If you don't have an image, a link will generate an image so make sure that the link is up to date and has a relevant image for your tweet.\n* You also have the option to add a description of the image so that content is accessible to more people.\nHere is a link to the X help page on [how to make images accessible for people](https://help.twitter.com/en/using-x/picture-descriptions).\n\n**7. Don't start a tweet with '@'**\n\n* These are treated as replies so become hidden.\n\n**8. Be careful with sensitive data**\n\n* Make sure you are aware of the policy concerning social media in your project or institution.\n* Some projects will not allow you to tweet about progress until a certain time in the project and others will encourage the use of social media from the start.\n\n**9. Take care of yourself**\n\n* Not all the interactions that you have on X will be pleasant as some people find fun in starting arguments or being offensive towards you.\n* It is best not to interact with these people.\n* You can follow [Charles' Rules of Arguments](https://geekfeminism.wikia.org/wiki/Charles%27_Rules_of_Argument).\nThis sets out that if you receive an argumentative reply, you should state your position once explaining any misunderstandings and then do not reply again.\nLet others come to your defence.\n* If it continues, you can block this person and report the abuse.\n* Here is a link to the X help page about [how to block accounts](https://help.twitter.com/en/using-x/blocking-and-unblocking-accounts).\n\nStarting to use X might involve tweeting about new papers and useful resources in your field, events that you go to such as workshops and conferences, and retweeting other people in your field to highlight their work.\n\nYou might also want to start with a series of intro tweets to introduce yourself, your career so far and your current work.\nYou can pin this to your profile so that it is always what people see first.\n\n\n## X terms\n\nThese terms are adapted from {cite:ps}`Cheplygina2020twitter`.\n\n* Confirmation step — Enabling a checking process tweets before posting using X Pro (formerly Tweetdeck).\n* Direct message (DM) — A private message that is only visible to the sender and the specifically identified recipients.\nBy default, regular messages on X are visible to the whole world, including (via search engines such as Google) people who do not have an account on X.\n* Hashtag (#) — Used to make it easier to find tweets with a common theme by defining keywords, for example, tweets about an event (#BookDash) or career talks (#PhDChat).\n* Hat Tip or Heard Through (HT) — Used for thanking the source of a tweet.\n* Like (♡) — Used for showing you like a tweet—a fast way to give feedback without replying.\n* There is no similar function for disliking a tweet.\n* List — A list of X users that can be public (followed by anyone) or private.\n* Lists can be used to follow accounts that tweet about specific topics, but which you don’t want to follow yourself.\n* Live-tweeting — Tweeting short summaries of an event, for example of a conference talk, as it is happening.\n* Mentioning (@) — If you mention someone with their account handle (“This paper by \\@CaAl is great”), your tweet will show up in their notifications.\n* Notifications — Tweets that mention you and replies, retweets and likes for your tweets.\n* Quote-tweet — Sharing a tweet by someone else in a quote, while adding your comments.\n* Retweet (RT) — Sharing a tweet that was originally made by someone else.\n* Subtweeting — Tweeting about somebody without explicitly mentioning their handle, so that they are not informed of your comment.\n* Thread — A series of tweets on one subject, for instance, ten tweets about a new research paper.\n* Timeline — The tweets from the people you follow.\n* X Pro — App formerly called Tweetdeck available to paid subscribers that can be used to tweet and run multiple accounts.\n"
  },
  {
    "path": "book/website/communication/social-media.md",
    "content": "(cm-social-media)=\n# Social Media for Research Communications\n\nThere are billions of users of social media around the world.\nIt is now common practice for the researcher to advertise their work on social media or other internet-based communication platforms.\nYou can use social media to communicate with many different groups both academic or lay audiences.\n\n(cm-social-media-benefits)=\n## Benefits of Using Social Media\n\n* Quickly and easily showcases what you, your team or your institution do.\n* Builds awareness of a topic or project that you are working on.\n* Doesn’t cost anything as most accounts can be set up and run for free.\nAlthough, maintaining a social media account successfully can be time-consuming.\n* Provides an insight into the impact that you are having in terms of followers, visits and downloads.\n* Increases visits to your website and affects search rankings.\n* You can find out about what others are doing in related projects, disciplines or organisations.\n* You can build relationships, and hopefully collaborations, through these networks.\n\n(cm-social-media-platforms)=\n## Social Media Platforms\n\nYou could use academic-based social media sites such as [ResearchGate](https://www.researchgate.net/) or [Academia.edu](https://www.academia.edu/) or more general ones such as Twitter, Facebook, Instagram, Youtube and Linkedin.\n\nMore than 20 million researchers (figure from spring 2021) have signed up to ResearchGate and it can therefore offer a great opportunity for sharing papers, connecting with colleagues through the messaging feature and can be used to advertise projects.\nThere are similar benefits to using Academia.edu or Mendeley, although they are not used as much as ResearchGate.\n\nA regular criticism of these sites is the spamming of your email with constant updates that are hard to turn off.\n\nMore general social media sites are very popular with academic audiences and a Nature survey in 2014 {cite:ps}`Noorden2014social` highlighted that researchers mostly use X and LinkedIn for professional use rather than Facebook.\n\nThis survey also showed that X had a wider range of uses compared to the other social media platforms, such as following discussions, posting work content, discovering peers, discovering recommended papers and commenting on others research.\nIt has become the communication channel of choice for many researchers and is opening up research discussions at a much earlier stage than previously seen.\n\nX can be used to build up a personal academic profile, for use throughout a research project and can also be used by organisations to promote their work and message.\nScientists can also be contacted directly by the public, which enables a more approachable level of communication {cite:ps}`Kelesidou2021scicomm`.\nHowever recent changes to the platform have also alienated some academics and in the longer term this may result in a more widespread move by researchers away from X to more open platforms {cite:ps}`VidalValero2023twitter,Hiltzik2023twitter`.\n\nDespite this X remains popular and, given its wide ranging uses for academic purposes, the next two sub-chapters focus on how to use it effectively.\nBelow we also offer a brief overview of the most popular general social media sites used by researchers - X, LinkedIn, Facebook and Instagram.\n\n### X (formerly Twitter)\n\n* They have 393 million monthly active users as of September 2023 {cite:ps}`Hays2023twitter`.\n* It is less formal than other platforms and very popular with academic audiences.\n* Character limit is only 280 unless you pay for X Premium, but you can join tweets in threads.\n* You can tag others in your tweets or photos.\n* You can add links, photos and videos (max 2 minutes 20 seconds) in tweets. You can also add links to videos.\n* If you don't have an image, adding a link will generate a preview image.\n* It is a conversational and chatty platform. So be chatty in tweets and use images and gifs to make your tweets more fun.\n\n### LinkedIn\n\n* They have 930 million monthly active users as of February 2023 {cite:ps}`Aslam2023linkedin`.\n* It is a more formal and professional communication channel than X and Facebook.\n* Character limit is larger than X at 63,206.\n* You can tag others in your posts.\n* You can add links, photos (size 1200 x 628 pixels) and videos (max 10 minutes) in posts.\n* It is used as an interactive CV, for recruitment and professional networking.\n* Keeping posts brief is a good idea.\n* You can target a particular sector or industry.\n* If you have no image for your post but do have a link, it will make a preview of the link so make sure the page you are linking to is up to date and has a relevant image.\n\n### Facebook\n\n* They have 3.03 billion monthly active users as of June 2023 {cite:ps}`Meta2023facebook`.\n* Character limit the same as LinkedIn at 63,206.\n* You can add tags to other users.\n* You can add links, photos (size 1200 x 628 pixels) and videos (up to 240 minutes and max 4GB size file) to your posts.\n* It is a community-based platform so you have to create that community and be relevant to it.\n* Businesses have to pay for their posts to be seen as Facebook prioritises friends and family in the news feed algorithm.\nSo it's not the best platform for professional organisations.\n\n### Instagram\n\n* They have 2 billion monthly active users as of December 2021 {cite:ps}`Rodriguez2023instagram`.\n* Character limit is 2,200.\nSo larger than X but less than Facebook and LinkedIn.\n* You can add tags to other users.\n* You can only add links in your bio so not in posts.\nBut you can feature links using Linktree.\n* Photos are square (1080 x 1080 pixels).\n* Video length between 3 and 60 seconds, max file size is 4GB.\nStories are 15 seconds long.\n* It is a visual media platform so you need a bank of videos to use it effectively for professional use.\n"
  },
  {
    "path": "book/website/community-handbook/accessibility/accessibility-alt-text.md",
    "content": "(ch-accessibility-alttext)=\n# Alt text\n\nAlternative text (or alt text) is used for describing the appearance and function of an image on an HTML page for users who cannot see it. \nAlt text is often used by visually impaired people who use assistive technology such as screen readers.\nAdding alt texts to figures is one of the first principles of web accessibility as it enables the screen reader software to read an alt text to its users helping them understand/explain the content.\n\nIf an image link breaks, alt texts are still functional and read as intended by the assistive technology.\n\n\n## Best practices for describing an image in an alt text\n\nWriting alt text is all about context. \nBeing aware of how the image is presented and the context in which it sits will give any assistive technology user a better experience. \nIf you’re writing about an image of a painting, you might want to consider if the style of painting is important, does knowing the painter’s name add value? It’s up to you to decide what information is essential.\n\nHere are a few things to keep in mind when writing alt text:\n* Alt text should be specific and not overly descriptive.\nIt should convey the main point of the image, such as why the image was included or what the author wants the reader to notice\n* While length should depend on the complexity of the content, good descriptions are concise, but describe what’s in your images accurately enough to understand their context and content.\n* Stay clear of repetition.\n* Never start your alt text with ‘image of’ as this will be obvious to the user.\n* Include any essential text or data that is part of the visual.\n* Images that already have a caption describing the image, may not need additional alt text.\n* Screen readers will pause and stop when you tell them to but, depending on user settings, might not annunciate exclamation or question marks.\n* While accessibility practices do not need to be justified, it is good to note that Alt text is also used by search engines too, so using alt text may help grow a brand’s visibility online as well as enable greater accessibility.\n\n**Source:** What’s the alternative? How to write good alt text - Design102. Retrieved from [Gov.uk blog Design102 Series](https://design102.blog.gov.uk/2022/01/14/whats-the-alternative-how-to-write-good-alt-text).\nFor more information, please refer to [Images - Guidance - GOV.UK](https://www.gov.uk/guidance/content-design/images).\n\nWe provide an example of alt text in the section below.\n\n(ch-accessibility-alttext-syntax)=\n## Using MyST syntax to add a figure to a _Turing Way_ chapter\n\nAll our chapters are written in {term}`Markdown` files.\nTherefore, using Markdown syntax to include a figure in a Markdown file will work fine, for example, `![](../../../figures/file-collection.*)`, where the relative path of the image file is provided inside the round brackets '()'.\n\n**However**, this formatting does not allow images to be responsive to screen sizes, making them inaccessible to read on small screens and smartphones.\nFurthermore, this doesn't allow authors to resize figures in their chapters or cross-reference them somewhere else in the book.\n\nTherefore, our recommendation is to use [Markedly Structured Text](https://myst-parser.readthedocs.io/en/latest/) (MyST) format available in Jupyter Book.\nFor more on the syntax consult the {ref}`caption section of the style guide<ch-style-figures-caption>`.\n\nYou can resize figures to adjust how they appear in our chapters using the parameters: `width` and `height` (takes value in px, for example, 400px) or `scale` (takes value in percentage, for example, 50%), especially if your original figure is large.\nUsing the parameter: `name`, you can reference figures in other chapters in a similar manner as defined in {ref}`ch-style-crossref`.\n\n**The example figure we have used here can be explained with this alt text:**\n*Cartoon-like sketch of a woman looking through a big file drawer, where documents are arranged systematically indicated by versions. She is smiling and waving at her colleague who is standing next to the file drawer and seems to be checking if everything is ok - gesturing a thumbs-up.*\n\nAll the components of your figure (image file location, size, name, alt text and title) can be encapsulated in a section within a {term}`Markdown` file using the following directive:\n\n````\n```{figure} ../../../figures/file-collection.*\n---\nheight: 500px\nname: file-collection\nalt: >\n  Cartoon-like sketch of a woman looking through a big file drawer, where documents are arranged systematically indicated by versions.\n  She is smiling and waving at her colleague who is standing next to the file drawer and seems to be checking if everything is ok - gesturing a thumbs-up.\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n````\n\nWhen all these components are used correctly, a figure included in a file will be rendered in the online book like in this page:\n\n```{figure} ../../../figures/file-collection.*\n---\nheight: 500px\nname: file-collection\nalt: >\n  Cartoon-like sketch of a woman looking through a big file drawer, where documents are arranged systematically indicated by versions.\n  She is smiling and waving at her colleague who is standing next to the file drawer and seems to be checking if everything is ok - gesturing a thumbs-up.\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\nWhen an image cannot be loaded in a browser or the link to the image breaks, alt text is displayed in place of a figure as shown below:\n\n```{figure} ../../../figures/alt-text-demo.*\n---\nname: alt-text-demo\nalt: >\n  This example shows when a wrong image path is used, the web browser can't access it and hence does not display correctly.\n---\n```\n\n**Please note that a height of 500px works very well with _The Turing Way_ book, but this is only a suggestion.**\n\n(ch-accessibility-alttext-caption)=\n## Captions\n\nCaptions appear below the figure.\nThey should be short and concise and include a reference to the source where they are taken from.\nIn particular it is important to describe the licence under which the image is re-used.\n\nFor example, a caption might say:\n\n> Making your first pull request on GitHub.\n> _The Turing Way_ project illustration by Scriberia.\n> Used under a CC-BY 4.0 licence.\n> DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n\nThe syntax for this image is as follows, and the way it appears in the book is below the code snippet.\n\n````\n```{figure} ../../../figures/first-pull-request.*\n---\nheight: 400px\nname: first-pull-request\nalt: >\n  Cartoon-like sketch of two persons sitting across from each other working on their laptops.\n  A straight arrow on the top indicates the main branch of the repository that they are working on,\n  a pull request is shown by a branch coming out of the main arrow labelled as Clone,\n  followed by a Pull Request with the changes that the first person made in the branch,\n  and the final step labelled as Approved that indicates approval of the changes by the second person.\n  This arrow then merges back to the main arrow/repository.\n---\nMaking your first pull request on GitHub.\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n````\n\n```{figure} ../../../figures/first-pull-request.*\n---\nheight: 400px\nname: first-pull-request-demo\nalt: >\n  Cartoon-like sketch of two persons sitting across from each other working on their laptops.\n  A straight arrow on the top indicates the main branch of the repository that they are working on,\n  a pull request is shown by a branch coming out of the main arrow labelled as Clone,\n  followed by a Pull Request with the changes that the first person made in the branch,\n  and the final step labelled as Approved that indicates approval of the changes by the second person.\n  This arrow then merges back to the main arrow/repository.\n---\nMaking your first pull request on GitHub.\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\nPlease make sure that the link to the source is the {term}`digital object identifier <Digital Object Identifier>` not the Zenodo record.\nAlso ensure that you have created a link to the source using {term}`Markdown` link formatting: `[text](url)`.\n"
  },
  {
    "path": "book/website/community-handbook/accessibility/accessibility-comms-platforms.md",
    "content": "(ch-accessibility-comms-platforms)=\n# Access-centered support on Communication Platforms\n\n_The Turing Way_ uses a variety of platforms for communication (for example, social media platforms like X/Twitter, Linkedin, Mastodon) and collaboration (for example, Github, HackMD, Etherpad, Miro, Excalibur).\nThis chapter describes the access and inclusion-related support we provide on our communication platforms, as well as support we hope to provide in the future.\nWe encourage our community to practice kindness in communicating with others and to be aware of cultural, linguistic, disability and personal differences, including the potential digital divide (in terms of unequal access to, use or impact of Information and Communication Technologies (ICT)) that may affect the way people communicate online.\nOn every platform our community uses to communicate or collaborate, we aim to enable access in a broader sense as defined by our [Accessibility Policy](https://github.com/the-turing-way/the-turing-way/blob/main/ACCESSIBILITY.md).\n\n## Access and inclusion-related support we provide on communication platforms\n\nWe aim to provide the following support and normalise the following practices within our community:\n\n- **Adding alt text to images**: We use alt text or \"alternative text\" to describe images, diagrams, or other visuals within _The Turing Way_. \nTo learn more about how to write and use alt text for your work, please use this {ref}`guidance<ch-accessibility-alttext>`.\n- **Limit embedded links and provide alternatives for accessing information**: On many platforms, embedded links may not be accessible by screen readers, or may increase cognitive overload. \nIf you are inserting a link into a message, limit the number of embedded links within a message. \nOn Slack, avoid hyperlinking links within replies to messages when possible, as links posted within threads are not readable for screen readers.\n- **Limit use of emojis that disrupt narrative flow**: Do not replace words with emojis or use too many emojis to communicate important information. \nScreen readers usually read one emoji at a time using the alternative text and while sometimes the purpose may be clear (```:thumbsup:``` represents an icon of a thumbs up sign), at other times it may not be (```:partyblobcat``` represents a multicolored cat that is rotating in a circle, and is generally used in the context of a celebration or celebratory news). \nMore broadly, strings of emojis can produce a clunky, repetitive user experience for people trying to understand the core message.\nRemember that not all people are able to access the emoji reactions option within Slack, and normalise using written affirmations as well.\n- **Cross-post information to ensure openness**: People interact with _The Turing Way_ community on many different platforms.\nNot everyone in the *The Turing Way* community is in the Slack workspace, or on Github, in every community call, or on every social media channel.\nWhere possible, we aim to normalise creating issues and discussions on the Github repository or post across social media channels in order to ensure the widest reach and participation possible across the community.\n- **Be sensitive to bandwidth needs**: As a digital and remote-first project, we are committed to making sure that our resources, communication platforms, and community are accessible to the widest possible audience, despite any bandwidth needs or barriers.\nIn order to make sure that our communication platforms are accessible in low-bandwidth environments for the community, we avoid posting data-intensive content like videos directly into the channels.\nInstead, we prioritise hosting the content on other platforms (such as YouTube) where viewers have the option to adjust the data-intensiveness of the streaming platform.\nWe also frequently turn off video streaming in team meetings in order to adjust for participants or community members that find it difficult to tune in.\n- **Be descriptive and clear in communication**: Aside from these concrete recommendations that we adhere to within the community, more broadly we aim to prioritise clear communication within _The Turing Way_ in order to ensure that our messages are accessible and readable for the community.\n"
  },
  {
    "path": "book/website/community-handbook/accessibility/accessibility-event-organising.md",
    "content": "(ch-accessibility-events)=\n# Access-centered support for events\n_The Turing Way_ hosts a variety of events throughout the year: virtual Collaboration Cafes, coworking calls, Book Dash events and onboarding sessions. \n\nAll of _The Turing Way_ community calls are hosted on either a remote-first and/or hybrid-basis. \n\nIn order to enable the widest participation possible, and overcome any possible barriers that may prevent participation or negatively affect their experience, we aim to provide the following support for each call.\n\nAll our community calls adhere to the project's [Code of Conduct](https://github.com/the-turing-way/the-turing-way/blob/main/CODE_OF_CONDUCT.md).\n\n## Access and inclusion-related support we provide for virtual events\n\n1. **Comfort breaks**: Virtual discussions can be tiring! For calls like our coworking calls and Collaboration Cafes, comfort breaks are built into the pomodoro working format, with a variety of optional and gently-enforced breaks to ensure that participants are taking sufficient breaks during extended time on virtual calls.\nFor our trainings, workshops and onboarding sessions, we make sure build in comfort breaks throughout the sessions. \n\n2. **Co-hosting**: Our workshops and trainings are generally co-hosted by default in order to ensure ease of facilitation for both trainers, as well as provide support to answer additional questions by participants, and/or solve IT or interpersonal issues that may arise during the call.\nCoworking calls and Collaboration Cafes do not generally have two hosts, but are attended widely by community members that can help with any issues that may arise.\n\n3. **Reference material**: Before and/or after each call, we aim to share slides, links and other reference materials to ensure that that the material can be referenced before or during the call.\nMany of our community materials and presentations are uploaded to our [Zenodo community page](https://zenodo.org/communities/the-turing-way/), and are licensed CC-BY for use by others.\n\n4. **Transcription**: Our virtual and hybrid calls are hosted on the Zoom platform, and as a community, we use the built-in zoom transcription feature.\nDue to IT limitations from our hosting organisation, we do not currently use any additional transcription support (such as Otter.ai), but hope to do so in the future.\n\n5. **Recordings**: Community calls like the coworking call and collaboration cafes are not recorded by default, though the notes from each session are uploaded in our repository.\nWorkshops and trainings may be recorded at the discretion of the organisers, and/or if participants request.\n\n6. **Alternative forms of engagement**: At our community calls, we tend to encourage (but absolutely do not enforce!) a video-on culture at our community calls.\nHowever, we recognise that this may be both bandwidth-intensive as well as exclusory to those who would not like to engage in this way.\nAt our trainings and workshops, we encourage folks to engage in the ways and mediums that they would like.\n\n## Access and inclusion-related support we provide for in-person events\n\nThis [accessibility support](https://www.turing.ac.uk/contact-us/accessibility) is provided for events hosted in-person at the Alan Turing Institute, which is based at the British Library.\n\n1. **Run a venue tour**: Before we choose the venue of the event, we do a tour to make sure that it is accessible to and for everyone.\nWe consider whether or not anyone with a wheelchair or needing walking support should be able to enter the venue, move through its corridors and use the toilets with minimum support.\nWe also make sure that venue provides a space for: a well-being room, children friendly area, breast-feeding room and praying room.\n   \n2. **Be mindful of sensory needs**: We provide quiet spaces, and make attendees aware if there will be loud sounds, videos or special lighting. \n\n3. **Catering**: We request dietary information from all attendees and provide a wide range of foods including gluten- and allergen-free, as well as vegetarian/vegan, options. We make ingredient lists available.\n  \n4. **Breaks**: At meals and breaks, we make sure that someone is available to help blind and low vision people to navigate food and beverage choices.\n\n5. **Pictures**: When people register in person, we ask them if they have a problem with being photographed and then place a sticker on their registration badge that allows us to meet their preferences.\n\n## Access and inclusion-related support we provide for Book Dash:\n\nAs of December 2024, we currently are able to offer the following monetary support for our bi-annual Book Dash events:\n\n1. **Food & Drink**: We are able to offer support for food & non-alcoholic drinks up to £50 for virtual participants, £25 for partially in-person participants.\n\n2. **Technology Requirements**: Up to £75 is available for the rent or purchase of small hardware items such as headphones, webcams, or temporary boosts to internet to enhance participants’ overall experience, subject to prior approval.\n\n## Support we would like to provide in the future\n\nCurrently, we are not able to support the following practices within community calls.\n\n1. **Live transcription and/or translation**: While we have previously hosted social sessions at our biannual Book Dash in Spanish, the vast amount of our trainings and community calls are hosted in English. We would love to support more calls in more languages in the future.\n"
  },
  {
    "path": "book/website/community-handbook/accessibility/accessibility-policy.md",
    "content": "(ch-accessibility-policy)=\n\n```{note}\nThis page displays the [`ACCESSIBILITY.md`](https://github.com/the-turing-way/the-turing-way/blob/main/ACCESSIBILITY.md), a base file with accessibility policy and guidelines when participating in _The Turing Way_.\n```\n\n```{include} ../../../../ACCESSIBILITY.md\n```\n"
  },
  {
    "path": "book/website/community-handbook/accessibility.md",
    "content": "(ch-accessibility)=\n# Accessibility\n\nWithin _The Turing Way_ community, we define accessibility practices as a set of community-wide, behavioral, social, and technical decisions that can be taken to ensure that all are welcome and are able to enter and participate in research and data-driven processes, communities and events despite barriers for access as they relate to language, disability, and geography.\n\nWhile accessibility is commonly understood with respect to disability, we – meaning _The Turing Way_ community – define accessibility as giving access to groups of people that encounter different barriers for participation, and in this sense, our accessibility practices may overlap with practices that enable inclusion.\nExamples of this may include the language used to communicate within a team (be that an international and/or interdisciplinary environment), access to computing infrastructure or institutional resources, internet connectivity needs, hiring and facilitating diverse teams, and more.\n\nWe aim to draw from the [access-centered framework](https://accesscenteredmovement.com/what-access-centered-means/) in describing access as a constant process that changes in each space with each individual.\nMuch like how _The Turing Way_ itself is always being written and rewritten, our accessibility and access-related practices are constantly being updated as broader awareness grows and changes in technology are made.\n\nThis chapter contains following subchapters with accessibility guidelines when participating _The Turing Way_ community and recommendations when writing chapters:\n- {ref}`Accessibility Policy of The Turing Way Community<ch-accessibility-policy>`\n- {ref}`ch-accessibility-events`\n- {ref}`ch-accessibility-comms-platforms`\n- {ref}`ch-accessibility-alttext`\n"
  },
  {
    "path": "book/website/community-handbook/acknowledgement/acknowledgement-examples.md",
    "content": "(ch-acknowledgement-examples)=\n# Different Contributions and their Acknowledgements\n\nIn the previous subchapters, we discussed how we acknowledge our contributors for their work in _The Turing Way_.\n\nWe also describe the [](#contributors-record), which is updated regularly to reflect the contribution types and personal highlights of the contributors.\n\nIn this subchapter, we will explore the different types of contributions that exist within _The Turing Way_, and describe those with the help of the {ref}`personas and pathways<pd-persona-creation>` our contributors may take to make their contributions.\nFurthermore, we describe how each persona will be acknowledged in _The Turing Way_.\n\n## Bug fixing\n\nWe use the term \"bug\" for small errors in the text or code like typos, formatting issues or broken links, or minor fixes.\n\n- *Persona for Small bug fixing*: Fraya found a typo and fixed it.\n  - **Acknowledgement:** They are acknowledged in the Contributors table with a 🐛 (`bug`) emoji.\n- *Persona for fixing bug while maintaining sustained engagement*: Amal has found multiple typos on multiple visits to the project and contributes to conversations in issues about where these typos cause confusion or need additional input to fix.\n  Amal has had a sustained engagement with the community.\n  - **Acknowledgement:** Amal is acknowledged in the Contributors table with a 🐛 (`bug`) and an 🤔 (`idea`) emoji and named as an author on the last 2 releases of the book.\n\n## Providing examples\n\nContributors can also provide examples that can make _The Turing Way_ chapters comprehensible for readers.\n\n- *Persona for adding examples*: Divna made a pull request to add an example that enhanced the quality of the chapter.\n  - **Acknowledgement:** Divna is acknowledged with an 💡 (`example`) emoji in the Contributors table.\n- *Persona for adding examples*: Pawel wrote a subchapter and added it through a pull request to add a detailed example that demonstrated the content of the chapter being used in a real world example.\n  - **Acknowledgement:** Pawel is acknowledged with an 💡 (`example`) emoji in the Contributors table and named as an author on the last 3 releases of the book.\n\n## Code and scripts\n\nWe encourage our contributors to write a piece of code, bots or scripts to help improve the project workflow.\n\n- *Persona for writing scripts for the project*: Kendra wrote a Python script to spot a Latin word in a new contribution, which should be avoided in this book.\n  - **Acknowledgement:** Kendra is acknowledged with a 💻 (`code`) emoji in the Contributors table.\n- *Persona for reusing an existing tool*: Serena set up the continuous integration pipeline for the book using GitHub action features.\n  They further wrote a Python script to make the error report easy to understand and fix.\n  - **Acknowledgement:** Serena is acknowledged with a 💻 (`code`) emoji in the Contributors table along with the 🚧 (`maintenance`) emoji and named as an author in the most recent release of the book.\n\n## Dataset\n\nContributors can provide test data for a test or to link with a chapter to improve the overall content.\n\n- *Persona for reusing a self-generated dataset*: Yan created a small dataset to link to the version control chapter to demonstrate how to version control data.\n  - **Acknowledgement:** Yan is acknowledged with a 🔣 (`data`) emoji in the Contributors table.\n- *Persona for creating a data set for the project*: Xenia added a data set in the research compendia chapter and wrote a section to explain how to create a compendia for the research data using the example data set.\n  - **Acknowledgement:** Xenia is acknowledged with a 🔣 (`data`) emoji in the Contributors table along with a 🖋 (`content`) emoji for writing a chapter.\n    They are named as an author in the most recent version of the book.\n\n## Reviewing chapters and other pull requests\n\nThe review process of a newly contributed chapter or a subsection of an existing chapter involves approving the language and structure of a chapter or a section of a chapter, flagging errors or typos, asking for clarifications if certain parts of the content or statements are unclear, suggesting modifications and improving the overall quality of someone's contribution.\n\n- *Persona for reviewing one pull request*: Tashan has reviewed a pull request that contributed one additional paragraph to an already existing chapter.\nThey approved the pull request after catching two typos and giving a suggestion for a clearer phrasing of one sentence.\n  - **Acknowledgement:** They are acknowledged in the Contributors table with the 👀 (`review`) emoji.\n- *Persona for reviewing pull request over sustained engagement*: Sadaf has reviewed a new chapter on \"Secure communication for distributed teams\".\n  She gave comprehensive feedback on the structure of the proposed references and suggested a new format.\n  She was engaged for multiple reviews of the same pull request and engaged closely with the community member who wrote the chapter.\n  - **Acknowledgement:** Sadaf is acknowledged in the Contributors table with the 👀 (`review`) and 🤔 (`idea`) emojis, and she is named as an author on the latest release of the book.\n\n## Chapter contribution\n\nThe various contributions to a chapter are made towards designing, writing, and reviewing its content through GitHub issues, pull requests and reviewing processes.\n\n- *Persona for writing a chapter*: Jordon has written a chapter on \"Setting expectations across academia and industry\".\n  He started writing the chapter at a Turing Way Book Dash event, based on an idea they had developed in advance of the event.\n  He responded to review comments and iteratively improved the chapter until the pull request was merged.\n  - **Acknowledgement:** He is acknowledged in the Contributors table with 👀 (`review`), 🤔 (`idea`) and 🖋 (`content`) emojis.\n  He is also named as an author on the latest release of the book.\n- *Persona for reviewing and making chapter contribution*: Sia recently learned about _The Turing Way_ project and started contributing by reviewing a pull request for the chapter \"Setting expectations across academia and industry\".\n  She offered some critical suggestions and engaged in helpful discussions with the author to help them improve their contribution.\n  She ended up writing a new section of that chapter as well.\n  - **Acknowledgement:** She is acknowledged in the Contributors table with  👀 (`review`), 🤔 (`idea`) and 🖋 (`content`) emojis and is named as an author in the latest release of the book.\n- *Persona for designing a chapter*: At the event, Ishan collaborated with Mafalda in brainstorming a chapter together and created an issue on that.\n  After the event, Ishan did not have time to contribute to the chapter anymore as an author or contributor.\n  - **Acknowledgement:** Ishan is acknowledged in the Contributors table with the 🤔 (`idea`) emoji.\n- *Persona for designing and writing a chapter*: After the same event as above, Mafalda completed the chapter that she brainstormed with Ishan.\n  She submitted her contribution as a pull request to _The Turing Way_ and responded to the review comments.\n  - **Acknowledgement:** She is acknowledged in the Contributors table with 🤔 (`idea`) and 🖋 (`content`) emojis and is named as an author in the latest release of the book.\n\n## Accessibility\n\nContributors reporting or working on accessibility issues.\n\n- *Persona for technical improvement for accessibility*: Endre wrote a script to make sure that _The Turing Way_ book is properly readable for low vision readers.\n  - **Acknowledgement:** He is acknowledged with an ♿️ (`ally`) emoji in the Contributors Table along with a 💻 (`code`) emoji and named as an author in the last 3 releases of the book.\n- *Persona for writing accessibility related resources*: Rajmund wrote chapters on the community participation in the Community Handbook that discusses the accessibility aspects of working in a research team.\n  - **Acknowledgement:** He is acknowledged with an ♿️ (`ally`) emoji  in the Contributors Table, along with a 🖋 (`content`) emoji for writing and named as an author in the last 2 releases of the book.\n- *Persona for enhancing the accessibility aspects of the resources*: Sammy reviewed a few chapters in _The Turing Way_ to remove the gendered language.\n  They also wrote a subchapter in the community handbook's chapter on a style guide to help others follow a guideline to avoid gendered language from future contributions.\n  - **Acknowledgement:** They are acknowledged with an ♿️ (`ally`) emoji  in the Contributors Table along with a 🖋 (`content`) emoji for chapter contributions and named as an author in the last 2 releases of the book.\n\n## Translation\n\nThe translation process in _The Turing Way_ includes aspects translating _The Turing Way_ chapters into languages other than English and reviewing them.\nThe translation infrastructure as of May 2020 is [Transifex](https://www.transifex.com/theturingway/theturingway/dashboard/).\n\n- *Persona for translating resources*: Anika has translated 3 paragraphs of the version control chapter into Swedish following the standard process defined in _The Turing Way_ repository.\n  - **Acknowledgement:** She is acknowledged in the Contributors table with the 🌍 (`translation`) emoji.\n- *Persona for translating and improving resources*: Jamil has translated the version control chapter into Arabic following the standard process defined in The Turing Way repository and adapted the chapter to make it more logical to read in Arabic.\n  - **Acknowledgement:** He is acknowledged in the Contributors table with the 🌍 (`translation`) and 🖋 (`content`) emojis, and named as an author on the latest release of the book.\n- *Persona for translating resources and mentoring others*: Anabel has written a general guideline for translation and translated the introduction chapter into Turkish.\n  - **Acknowledgement:** Anabel is acknowledged with 🌍 (`translation`), 🤔 and 🖋 (`content`) emojis, and named as an author on the latest release of the book.\n- *Persona for translating resources, mentoring others and maintaining an infrastructure*: Anthony has set up the infrastructure and process for managing translation of _The Turing Way_ into multiple languages.\n  They have translated 3 chapters into Chinese and worked closely with the core team to get mentored contributions from other members in multiple languages.\n  - **Acknowledgement:** They are acknowledged with 🌍 (`translation`), 🤔 (`idea`), 🚇(`infra`) and 🚧 (`maintenance`) emojis, and named as an author on the latest release of the book.\n\n## Organisational support\n\nWhen members participate in _The Turing Way_ community with the in-kind support of their funders and organisation, we acknowledge each member individually and list their organisations as \"Collaborating organisations\".\nSuch organisational supports are applicable when one or multiple members from a project or community collaborate to build resources in _The Turing Way_.\nThese efforts are highly encouraged to ensure the sustainability of their resources that can benefit a much wider community.\n\n- *Persona of a collaborating organisation*: The Narnia National AI Institute (NNAII) have agreed to share their internal guidance on communicating safe and ethical artificial intelligence to _The Turing Way_.\n  The chapters were written by a team of people within NNAII and converted into pull requests that fit _The Turing Way_ style guide.\n  Each individual from the team is listed as a contributor in the Contributors Table with a 🖋 (`content`) emoji or other relevant contributions they have made.\n  - **Acknowledgement:** The NNAII is acknowledged as a \"Collaborating organisation\" in the {ref}`the record of contributions<ch-acknowledgement-record>` with detailed contributions from each of their members involved in this project.\n- *Persona for a contributing member from the organisation*: Abby is one of the members of the NNAII who contributed to the guidance before she left to join a non-profit last year.\n  After leaving NNAII, Abby has designed and written a new chapter in her own time.\n  - **Acknowledgement:** In addition to her previous acknowledgments, she will be acknowledged with a 🖋 (`content`) and 🤔 (`idea`) emoji in the Contributors Table and her {ref}`record of contributions<ch-acknowledgement-record>` will develop independently of the NNAII.\n- *Persona for the supporting (indirect contributor) members from the organisation*: Kadie is a programme director at the NNAII who manages the team that wrote the guidance that has been incorporated into _The Turing Way_.\n  - **Acknowledgement:** She is acknowledged in the Contributors table with the 💵 (`finance`) emoji.\n  Kadie was asked if she would like to be an author on the most recent release of _The Turing Way_ book but declined as she did not personally feel that she had contributed enough to be named as an author.\n- *Persona for a contributing member from the organisation with sustained engagement*: Patty works in a National Library and her employers have approved her to host their resources as chapters in _The Turing Way_.\n  Patty has developed materials, contributed to the community discussions and reviewed others' pull requests on the GitHub repository.\n  - **Acknowledgement:** Patty will be listed in the Contributors Table with 🤔 (`idea`), 🖋 (`content`) and 👀 (`review`) emojis and named as an author on the latest release of the book..\n\n## Maintenance\n\nMaintenance work in _The Turing Way_ applies to multiple aspects, some of which are: responding to the questions in community spaces such as Gitter, GitHub issues, or X (formerly Twitter); the technical infrastructure of the GitHub repository, associated GitHub bots, scripts and continuous integration pipeline; the online hosting platforms of Jupyter book and Netlify; and the translation infrastructure of Transifex.\n\n- *Persona for maintaining community interactions*: Neve has helped two contributors on two individual occasions by responding to a question on the Turing Way Gitter channel and a question on one of the issues in _The Turing Way_ GitHub repository.\n  - **Acknowledgement:** He is acknowledged in the Contributors table with the 💬 (`question`) and 🤔 (`idea`) emojis.\n- *Persona for maintaining community interactions with sustained engagement*: Ursula regularly points new contributors to documentation and submits pull requests to improve the guidance when she sees unclear areas.\n  She reviews pull requests from others working to make the process of contributing smoother.\n  - **Acknowledgement:** She is acknowledged in the Contributors table with the 💬 (`question`), 🤔 (`idea`), 👀 (`review`) and 🚧 (`maintenance`) emojis, and named as an author on the last two releases of the book.\n- *Persona for maintaining project infrastructure*: Gaia is maintaining the back-end infrastructure of the Jupyter Book and supports the continuous integration aspect of the project repository by replying to related issues and providing solutions to fix them.\n  - **Acknowledgement:** She is acknowledged in the Contributors table with 🚇 (`infra`) and 🚧 (`maintenance`) emojis, and named as an author on the latest release of the book.\n- *Persona for maintaining project infrastructure and mentoring others*: Jamil has set up the infrastructure and process for managing translation of _The Turing Way_ into multiple languages.\n  They support new translators by answering their questions related to the translation process.\n  - **Acknowledgement:** They are acknowledged with 🤔 (`idea`), 🚇 (`infra`) and 🚧 (`maintenance`) emojis, and named as an author on the latest release of the book.\n\n## Representing the Turing Way\n\nAnyone who shares _The Turing Way_ resources in any relevant publication, learning material, conference presentations or community event is acknowledged for representing _The Turing Way_.\nThese members may or may not have previously contributed to the project.\nThey either volunteer or are recommended by _The Turing Way_ team members for representing this community within or outside the project.\n\n- *Persona for highlighting project resources*: Yehuda used one of the Scriberia and _The Turing Way_ illustrations in a recent talk they gave at an open source workshop that was hosted by their company.\n  They included links to _The Turing Way_ book, GitHub repository and X handle.\n  Their slides are available under a CC-BY license and are requested to be linked in a monthly newsletter.\n  - **Acknowledgement:** They are acknowledged in the Contributors table with the 🔊 (`Talk`) emoji.\n- *Persona for giving a talk on _The Turing Way_*: Noah is a long time contributor to _The Turing Way_, they answer questions and review pull requests regularly.\n  In March 2020, Kirstie - lead developer of _The Turing Way_ - recommended Noah as a suggested speaker to give a talk about the Project Design section of _The Turing Way_ at a conference on open source community management.\n  She worked with Noah to practice his presentation in advance of the talk.\n  Noah's slides are available under a CC-BY license and are linked from a page in the community handbook.\n  - **Acknowledgement:** They are acknowledged in the Contributors table with the 🔊 (`Talk`), 🚧 (`maintenance`), 👀 (`review`), 🤔 (`idea`) and 💬 (`question`) emojis and named as an author on the last release of the book.\n\n## Training, workshops or community events\n\nMembers can help in organising a training session, host a workshop delivered by the team members, or help in delivering a community event.\n\n1. Klara **delivered a training** session on Binder co-organized by _The Turing Way_ core team members.\n2. Petra **helped organising** a 2-hour long workshop by _The Turing Way_ at a PhD conference and helped deliver it by managing contributions on the GitHub repository.\n3. Uri previously attended a book dash event as a selected participant and joined the most recent book dash as a **helper to support new attendees**.\n4. Paolo **hosted a Collaboration Cafe** in a time zone compatible with the contributors from New Zealand.\n\n**Acknowledgement:** All these contributors will be acknowledged with the 📋 (`eventOrganizing`) emoji in the Contributors Table.\n\n## Tutorial and training material\n\nWe invite our members to create tutorials or share their training materials that can be supplemented with the existing chapters in _The Turing Way_.\n\n- *Persona for creating training materials in the project*: Aune added multiple-choice questions (as a tool for formative assessment) at the end of 3 different chapters to help readers evaluate their understanding of the concepts described in those chapters.\n  - **Acknowledgement:** She is acknowledged with the ✅ (`tutorial`) emoji in the Contributors table.\n- *Persona for reusing a training material in the project*: Leo had developed training material on machine learning for a workshop they organised in the past for their colleagues.\n  They have added this material with a new chapter they authored in the book for reproducibility in _The Turing Way_.\n  - **Acknowledgement:** They are acknowledged with the ✅ (`tutorial`) emoji in the Contributors table along with the 🖋 (`content`) emoji and named as an author on the latest release of the book.\n\n## Blog posts and articles\n\nContributors writing about _The Turing Way_ in articles, blogs, or other online publication platforms.\n\n1. Khasan wrote a relevant online **blogpost that was highlighted** in the monthly newsletter.\n2. Eva wrote a research article and **cited a chapter from _The Turing Way_**, which was then added to the _The Turing Way_ bibliography.\n\n**Acknowledgement:** These contributors are acknowledged with the 📝 (`blog`) emoji in the Contributors Table.\n\n## Videos and recordings\n\nWe encourage creating video content or animations, recording online interactive discussions or linking any relevant videos our contributors may have created in the past that can be used as a learning tool and enhance the quality of _The Turing Way_ content.\n\n- *Persona for helping record and edit videos for the project*: Jakaria hosted a collaboration cafe, recorded the session, edited to be uploaded on _The Turing Way_ YouTube channel.\n  - **Acknowledgement:** Jakaria is acknowledged with the 📹 (`video`) emoji in the Contributors table along with the 📋 (`eventOrganizing`) emoji for event organisation.\n- *Persona for creating training videos*: Rene created 3 short videos to guide step by step learning of git-based version control and linked them to an existing chapter on git and GitHub.\n  - **Acknowledgement:** Rene is acknowledged with the 📹 (`video`) emoji in the Contributors table and named as an author on the latest release of the book.\n\n## Financial support\n\nResearchers and support staff from a collaborating organisation can help with searching for funding, help with writing a grant proposal or providing financial support directly or indirectly for the development of the project.\n\n- *Persona for managing funding*: Laura is managing the sponsorship offered to _The Turing Way_ through one of its collaborating organisation.\n  - **Acknowledgement:** Laura is acknowledged with the 💵 (`financial`) emoji in the Contributors table.\n- *Persona for helping gain funding*: Ismael shared a funding opportunity with an intention to financially support the development of the guide on ethical research.\n  They also helped in editing a grant proposal.\n  - **Acknowledgement:** Ismael is acknowledged with the 🔍 (`fundingFinding`) emoji in the Contributors table and the 💵 (`financial`) emoji for their support and work and named as an author on the latest release of the book.\n\n## Project Management\n\nTeam members, core contributors and community members with sustained engagements often take on project management tasks and support _The Turing Way_ community and project as a whole.\n\n**Acknowledgement:** These members are acknowledged with the 📆 (`projectManagement`) emoji in the Contributors table.\n\n:::{note}\nDid we miss listing a contribution type? Please create an issue on the GitHub repository to discuss that with the team members.\n:::\n"
  },
  {
    "path": "book/website/community-handbook/acknowledgement/acknowledgement-members.md",
    "content": "(ch-acknowledgement-members)=\n# Community and Shared Ownership\n\nAs a community-led project, we believe in and promote a collaborative approach to develop the content of this book.\nFor example, writing a _The Turing Way_ chapter is an iterative process that involves designing, outlining, writing, reviewing, and editing its contents.\nSimilarly, community-oriented processes evolve over time with the help and feedback from the community members.\n\n```{figure} ../../../figures/people-process.*\n---\nheight: 500px\nname: people-process\nalt: Cartoon-like sketch with pink colours of a large sunflower with a star in the middle sitting on top of the ground. It has the text next to the flower that says 'valuing people and processes behind research'. Below the ground, three roots extend, each terminating with an illustrated figure symbolising the often hidden efforts in research. From left to right, a female presenter giving a talk, a mustached male figure in a lab coat collecting data, and a person with glasses diligently working on a laptop. These figures represent the unseen work integral to the research process.\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n## Community members, contributors and co-authors\n\nEveryone who contributes to this book, no matter how small or big their contributions are, is recognised in this project as a contributor and a community member.\n\nTheir contributions may include carrying out small tasks such as reporting bugs, correcting factual errors, adding references, opening issues to discuss an idea, commenting on an ongoing discussion, exchanging ideas with other members or citing and promoting _The Turing Way_.\nAs discussed in the next subchapter, these contributors are highlighted in the {ref}`Contributors Table<contributors-record-contributors>`.\n\nMany contributors will also make substantial contributions such as writing a subchapter, maintaining community interactions, setting up or maintaining the project's infrastructure, helping others in their work and supporting their participation.\nAll the substantial contributors are also highlighted in the Contributors Table and named as co-authors [{term}`def<Authors>`] on the book as a whole.\nAs stated in our [Governance document](https://github.com/the-turing-way/the-turing-way/blob/main/GOVERNANCE.md), \"substantial contribution\" is a subjective term.\nTherefore, we have tried to add as much detail as possible in the next subchapters through personas, contribution types and acknowledgements of those contributions including when a contributor is named as an author.\n\nAuthors are listed in alphabetical order by last name.\nThe first author is always **The Turing Way Community**.\n\nAuthorship is cumulative.\nIf you have been added as an author on one release, you will stay as an author on all future releases.\n\nIf these subchapters do not contain the contribution type that you are interested in or if you would like to know whether you are eligible to be named as an author, please contact the core team by emailing [theturingway@gmail.com](mailto:theturingway@gmail.com).\n\n## Creating opportunities for shared ownership\n\nAs an open-source community, the project invites contributions from experts and enthusiasts alike to collectively develop guidance, recommendations, and practical resources that can foster a gold-standard for reproducible research.\n\n_The Turing Way_ core team values and promotes a culture of collaboration.\nIn contrast to the traditional incentive structure in academia, which often discourages open collaboration, public engagements in project advancement and sharing data early on, we promote a collaborative working culture in _The Turing Way_.\n\nWe intentionally avoid individual authorship in favor of establishing shared ownership and agency in this project.\nThis means that no single person or organisation owns the book or any of its chapters.\nThe book belongs to the community and the chapters are always considered 'work in progress' so that they can evolve over time with newer contributions.\nWe encourage authors to actively involve others in reviewing their work, providing missing information and adding diverse examples, which could not possibly be written by a single person.\n\nWe hope that such collaborative efforts lower the psychological barriers for the new contributors who can propose improvements in the book by editing, moving, and adapting its content as the book grows.\n\nFurthermore, with our commitment to fair acknowledgement in this project, we create opportunities to highlight the work of every contributor without trying to fit _The Turing Way_ into a traditional credit system.\n\nThis is also an opportunity for us to promote a cultural change in the research assessment system to better recognise an individual's contributions to open science.\nThese contributions include exchanging skills, sharing research components for reuse, and offering other academic services such as leading collaborative efforts, organising events, offering consulting, maintaining community resources, teaching and mentoring for the benefit of the broader scientific community.\n\n## Highlight your contributions!\n\nIn the {ref}`next subchapter <ch-acknowledgement-record>`, we have listed all the documents in this project that are considered the \"Record of Contributions\".\n\nWe want our community members to take pride in the valuable work they have done on this project.\nWe invite them to edit these documents to add details of their contributions that they want to highlight in _The Turing Way_.\n\nWe welcome your suggestions and ideas for creating more ways to acknowledge you.\n"
  },
  {
    "path": "book/website/community-handbook/acknowledgement/acknowledgement-record.md",
    "content": "(ch-acknowledgement-record)=\n# Record of Contributions\n\nThe [](#contributors-record) in the [](#aw) is where contributors to _The Turing Way_ are presented.\nThe [](#contributors-record) draws from three sources,\n\n:::{table} The current sources for contributor information and how they are presented in the book.\n:label: tab-contribution-records\n| Record type                        | Source                                                                                                                    | Presented in                          |\n|------------------------------------|---------------------------------------------------------------------------------------------------------------------------|---------------------------------------|\n| Individual highlights and profiles | [Page source](https://github.com/the-turing-way/the-turing-way/blob/main/book/website/afterword/contributors/profiles.md) | [](#contributors-record-individual)  |\n| All contributors                   | [All contributors file](https://github.com/the-turing-way/the-turing-way/blob/main/.all-contributorsrc)                   | [](#contributors-record-all)          |\n| Translations                       | Crowdin API                                                                                                               | [](#contributors-record-translators) |\n:::\n\n\nWe invite all our members to co-create this record to capture the important work they do around answering questions, representing the project, developing and maintaining the infrastructure, and all other nurturing roles that make _The Turing Way_ community so special.\n\nThe process of developing this record is described below.\n\n## Getting Recognised\n\n### All Contributors Table\n\nThe [all contributors table](#contributors-record-all) is updated with every contributor's name using the [all contributors bot](https://allcontributors.org/)'s [emoji key](https://allcontributors.org/docs/en/emoji-key).\n\nInstructions for using the all contributors bot are given in [the contributing guide](#ch-style-roles-profile).\n\n**No contribution is too small**, and these emojis allow us to recognise and fairly acknowledging all kinds of contributions our community members make to the project.\nThose contributions can include (but are not limited to) bug fixing, chapter planning, writing, editing, reviewing, idea generation, presentation, project management, and maintenance.\nPlease see [](#ch-acknowledgement-examples) for details.\n\n```{figure} ../../../figures/allcontributorsbot-emoji.*\n---\nheight: 400px\nname: AllContributorsEmojiKey\nalt: Table with different emojis that is used by the contributors bot\n---\n[Emoji key table](https://allcontributors.org/docs/en/emoji-key) of the all contributors bot that _The Turing Way_ uses for acknowledging different contributions from community members.\n```\n\n(ch-acknowledgement-record-individual)=\n### Individual highlights and profiles\n\nTo add or edit your profile on the [](#contributors-record-individual) page, edit that page.\nWe use the [`profile`](#ch-style-roles-profile) directive to create entries.\nInstructions for how to use the directive are given [here](#ch-style-roles-profile).\n\nAll types of contributions made towards _The Turing Way_ can be added to [personal highlights](#contributors-record-highlights).\nThese highlights can be individually decided by the contributors to record what they consider to be their significant and useful contributions for their personal profile.\nThis can be supplemented with supporting materials such as links to chapters, pull requests, issues, and blog posts.\n\nThis record can be directly translated towards the professional development of our community members, which can be further used for enhancing their personal or professional portfolio (profile, CV, resume).\n\nThe personal highlights are very valuable for capturing the impact that _The Turing Way_ has for its community members in terms of personal networking, professional development, skill sharing and other relevant activities, and how they have made positive impacts around transparency, reproducibility and ethical collaboration in their organisation.\n\n### Translators\n\nThe data for the [record of translators](#contributors-record-translators) is fetched from the Crowdin API.\nA regular action is run to open a pull request updating this data.\nIf you have contributed translations to _The Turing Way_ through Crowdin, you should automatically be acknowledged.\n"
  },
  {
    "path": "book/website/community-handbook/acknowledgement.md",
    "content": "(ch-acknowledgement)=\n# Acknowledging Contributors\n\n_The Turing Way_ is collaboratively developed by its diverse community of researchers, learners, educators, and other stakeholders.\n\nEveryone has a skill that is useful for someone, and therefore anyone can contribute to _The Turing Way_.\nWe value all kinds of contributions in this project and are committed to recognising each of them fairly.\n\n```{figure} ../../figures/theturingway-acknowledgement.*\n---\nheight: 400px\nname: theturingway-acknowledgement\nalt: This illustration shows that the traditional acknowledgement system is broken then it shows how we try to acknowledge them fairly. We have a contributors bot that catches all the contributors information and stores them in contributors record\n---\nThe process of acknowledging contributors in *The Turing Way*. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\nWe recognise all kinds of contributions that are possible in this project.\nWe update our {ref}`Contributors Table<contributors-record-contributors>` by appropriately acknowledging our contributors' work within _The Turing Way_.\nFurthermore, we invite every community member to update the {ref}`Record of Contributions<contributors-record-highlights>` with their personal highlights in _The Turing Way_ and use it for promoting their contributions to open science in general.\n\nIn this chapter, we provide details on the following aspects:\n- who our contributors and community members are\n- how we create opportunities for a shared ownership of this project\n- how we can use the record of contributions to highlight the work of our community members\n- what different types and possible pathways for contributions exist in _The Turing Way_\n"
  },
  {
    "path": "book/website/community-handbook/bookdash/bookdash-after.md",
    "content": "# After the Book Dash\n\nOur Book Dash attendees begin to introduce their perspectives and skills into the project at the Book Dash.\nThese participants go on to join our global community of contributors.\n\nWe invite our attendees to contribute in any capacity that is most suitable for their interests and availability.\nAlso, we share with them some ways they can stay connected and keep contributing to the project.\n\n## Joining the ongoing efforts\n\nWith every new effort initiated by our members, we gain new insights to improve our global outreach.\nThese efforts often start in our [GitHub issues](https://github.com/the-turing-way/the-turing-way/issues) section.\nThese are good places to begin new discussions by creating a new issue or join the ongoing discussion by commenting on an issue.\nIf our contributors want to start to get to know the project or want to return after a long break, they can begin with our good first issues.\nIf they have a new idea that they would like to add to the project as a new section in an existing chapter, or as a whole new chapter, they can start by creating a new issue.\n\n## Attend our online Collaboration Cafe\n\nOur online [Collaboration Cafes](#ch-community-calls-collabcafe) are calls are longer co-working spaces for the _The Turing Way_ community.\nEveryone interested in learning from or developing this project can join us for any duration possible for them.\nAt these calls, you can work on ideas for a new contribution or enhancement of existing content in the project.\n\n## Reviewing open pull requests\n\nOur contributors can help us by reviewing one of the several open pull requests based on their interests.\nThey can join discussions on these pull requests or help in exploring resources that currently exist in the book.\n\n## Representing _The Turing Way_ in your community/conference\n\nIf our attendees would like to represent our community, they can connect with _The Turing Way_ team for support and assistance in drafting an abstract and help them prepare to deliver a short workshop or presentation. \nThis is another contribution that can be discussed and prepared collaboratively during our Collaboration Cafe or coworking calls.\n\n## Connecting through social media\n\nEveryone is welcome to join our [Slack workspace](https://theturingway.slack.com/) for informal discussions.\nThey can also sign up to receive our monthly newsletter: [https://buttondown.email/turingway/](https://buttondown.email/turingway/).\nWe are on X (formerly Twitter) as [\\@turingway](https://twitter.com/turingway) and Mastodon as [\\@turingway\\@fosstodon.org](https://fosstodon.org/\\@turingway), where we send regular updates.\nWe also have a page on [Linkedin](https://www.linkedin.com/company/the-turing-way/).\n\nIf you have more ideas or questions about the project, the Book Dash event or something else related to our community, please feel free to reach out to the team members [theturingway@gmail.com](mailto:theturingway@gmail.com).\n\n## Reports and additional materials\n\n- All the templates related to Book Dashes are provided in the {ref}`community template collection<ch-templates>`\n- [_The Turing Way_ Report By Malvika Sharan with team members from November 2020](https://github.com/the-turing-way/the-turing-way/blob/book-dash-chapter/workshops/book-dash/book-dash-nov20-report.md)\n- CSCCE blog post by Arielle Bennett, July 2020: [Book Dashes: Collaborative Community Events](https://www.cscce.org/2020/07/09/book-dashes-collaborative-community-events/)\n- Open Working blog post by Esther Plomp, February 2020: [The Turing Way Bookdash](https://openworking.wordpress.com/2020/02/27/the-turing-way-bookdash/)\n- [_The Turing Way_ Report By Malvika Sharan with team members from February 2020](https://github.com/the-turing-way/the-turing-way/blob/book-dash-chapter/workshops/book-dash/book-dash-feb20-report.md)\n- [_The Turing Way_ Report By Rachael Ainsworth with team members from London 2019](https://github.com/the-turing-way/the-turing-way/blob/main/workshops/book-dash/book-dash-ldn-report.md)\n- [_The Turing Way_ Report By Rachael Ainsworth with team members from Manchester 2019](https://github.com/the-turing-way/the-turing-way/blob/main/workshops/book-dash/book-dash-mcr-report.md)\n"
  },
  {
    "path": "book/website/community-handbook/bookdash/bookdash-application.md",
    "content": "(ch-bookdash-application)=\n# Application and Review Process\n\nThe application, review, and selection processes have been developed to provide a fair opportunity for all the interested members to show their interest in attending our book dash events.\n\nIn this subchapter, we have provided details on the book dash's application and reviewing process.\n\n## Call for applications\n\nThe book dash event is organised for a minimum of 15 participants.\nThe event is divided into multiple sessions with small groups of participants attending in their time zone.\nThis allows the core team members to offer specific mentorship to the invited participants and make this an interactive, intimate, fun, and productive event.\n\nTo fairly make this selection, a call for applications is opened at least two months in advance so that interested members can share their skills, interest, and expected outcomes through a short application.\nThe applications are kept open for a minimum of 4 weeks and the timeline is communicated clearly through our newsletters, X (formerly Twitter) feed, and application form.\n\nThis application can take 30-45 minutes to complete. \nWe have created this template document with all the questions to prepare a draft before submission: https://tinyurl.com/tw-bookdash-template.\n\nWe continue to think of ways to ensure privacy and data protection.\nCurrently, all these responses are securely handled under the [GDPR (General Data Protection Regulation) law](https://en.wikipedia.org/wiki/General_Data_Protection_Regulation) (learn about creating [GDPR-proof surveys](https://www.surveylegend.com/gdpr/how-to-make-gdpr-proof-surveys-or-forms/)).\nAll our applicants must agree with the following GDPR statement when sending their application:\n> *We need to store your e-mail address to contact you. The information provided in this form will be shared only with The Turing Way Book Dash organisers to help them review your application fairly. These details will be stored in a Google Drive that core Turing Way team members have access to. The servers are based in the USA. You can ask for your e-mail address or any information to be removed from our database at any time. If you have any questions please contact us by emailing turingway@gmail.com. You may edit your responses after submission until 21 May 2022. Please select the \"I understand and I accept\" option before proceeding.*\n\nWe ask if applicants have previously participated in a Book Dash so that they can express their interest to join the Book Dash review and planning committee for this event:\n> We encourage returning applicants to The Turing Way Book Dash to join the planning committee. They will take on advisory and leading roles for the Book Dash events in 2022 by getting involved in application Review, selection process, organisation meeting, session host and mentorship or accessibility-related support they can offer based on their willingness, availability and interest. For any questions, please email theturingway@gmail.com.\n\nIn 150 words each, applicants respond to the following mandatory questions:\n- What could you contribute to _The Turing Way_ during the book dash event?\n- What would you gain from being part of _The Turing Way_ book dash event?\n\nWe ask an optional question for returning members to express their interest in taking on leadership roles in designing and organising Book Dashes:\n- How would you like to collaborate with other participants, or what support will you invite from them during the Book Dash event?\n\nThese responses to the questions in the application form help us select a group of people who will be able to work effectively together and cover a broad set of possible contributions to _The Turing Way_.\nWe don't expect that the candidates might have previously contributed to the project, but some familiarity with our project infrastructure such as GitHub-based contributions will be helpful.\nWe are looking to support ideas on what our participants think is important and helpful for others doing reproducible research and data science in the current scenario.\n\nWe then ask a few demographic questions.\nWe want to make sure that the selected group of participants brings multiple skills, knowledge, and experience to _The Turing Way_.\nWe aim to involve members from diverse groups, especially those who are traditionally excluded from data science based on gender, ethnicity, and career stage.\nTherefore, we ask our applicants to indicate if they consider themselves to be a member of one or multiple historically underrepresented groups.\nHere they can add any other information about themselves that they think the core team should know when reviewing their application.\n\nWe seek to remove any barriers that might prevent our participants from attending the event.\nHence, we use this form to assess what support we can offer, including funding requirements, to our participants in ensuring that they can comfortably attend the event.\nApplicants can mention their travel, accommodation, childcare, and accessibility requirements for their participation.\n\nFinally, we provide details regarding the event schedule and ask our applicants to indicate which time slots for collaborative co-working and social sessions would work for their time zones.\n\n## Reviewing process\n\nApplications for _The Turing Way_ book dashes are reviewed by at least 2 members of _The Turing Way_ core team.\nA response form created by the organising members using the rubrics described below, the response from which are shared among all the reviewers during a designated meeting between the panel members.\nScoring for each criterion is done between 1 to 3, where 3=criteria fully met, 2=criteria partially met, and 1=criteria not met.\nTo avoid personal bias, each of these scores is clearly defined for every question in the review response form, which is explained below.\nThis rubric aims to evaluate the application across multiple aspects and avoid any personal bias panel members may have.\n\n*This rubric is adapted from the [Mozilla Open Leadership](https://foundation.mozilla.org/en/initiatives/mozilla-open-leaders/) and the [Open Life Science](https://openlifesci.org/) programs*.\n\n(ch-bookdash-application-rubrics)=\n### Rubrics for scoring applications\n\nThe invited reviewers will rate the participants across multiple dimensions with scores of 1, 2, or 3.\n\nWe ask our reviewers to consider the following questions:\n\n* Has the applicant answered the application questions?\n* Does the applicant have a clear, feasible, and relevant idea of how they will contribute to the book dash?\tThis scoring corresponds generally to reviews of \"not ready\", \"enthusiastic\" and \"clear\" respectively:\n* Is the applicant enthusiastic about reproducibility and the aims of _The Turing Way_?\n\n\nBased on their evaluation of the applications they will provide scores for different criteria that will be assessed as follows:\n1. Applicants who score **mostly 1s** do not have a clear idea/topic ready for contribution or do not have a clear understanding of the overall goals of _The Turing Way_ and book dash in general.\n2. Applicants who score **mostly 2s** are enthusiastic if not wholly suitable for the project/event, for example, they may come with some ideas for a contribution that is currently not in the scope of the project/event.\n3. Applicants who score **mostly 3s** are clearly ready, goal-oriented, interested in contributing to the project, and excited to learn from others at the event.\n\n**Table summarising our scoring rubric and criteria for each score:**\n\n*This scoring rubric is based on the Mozilla Open Leaders and Open Life Science (OLS) selection criteria as described in the 'Review Rubrics' on [this GitHub repository](https://github.com/open-life-science/application-forms).*\n\n| Sections | Score 1 | Score 2 | Score 3 |\n| -------- | ------- | ------- | -------:|\n| **Readiness for the book dash event** |   (not ready) Does not provide enough information or seems to misunderstand the nature of _The Turing Way_ project and this event in general | (enthusiastic) Seems to have a clear understanding of _The Turing Way_ project and this event and brings along a specific content for contributions | (clear) Seems to have a clear understanding of _The Turing Way_ project and this event and a clear understanding of how they can contribute and collaborate with each other at this event |\n| **Goals for the project contributions:** | (not ready) Shares vague or general ideas that are unrelated to _The Turing Way_ project and this event, or no goals at all | (enthusiastic) Shares clear, overly ambitious ideas for _The Turing Way_ project and this event that can likely be refined in a collaboration cafe, or the day before the event during the brainstorm session | (clear) Shares clear, achievable contribution/development ideas for this event that fits _The Turing Way_ project and are likely to be achieved through the applicant’s participation |\n| **Purpose of participation and what they will get out of the book dash:** | (not ready) Purposes for participation at the book dash seem almost entirely self-centered and about the applicant’s status, rather than about participating in _The Turing Way_ community to develop the project | (enthusiastic) Purposes for the participation at the book dash event are not completely clear from the application or are limited (even though useful), such as typo or bug fixing | (clear) Purposes for participation at the book dash event are valuable in many ways and are likely to help the applicant to become an active contributor and take ownership of their work in _The Turing Way_ project and in the broader ecosystem in their own rights |\n| **Willingness to collaborate and contribute after the book dash:** | (not ready) Seems closed to collaborative ways of working or more interested in only one aspect of data science, research or related topic | (enthusiastic) Seems excited to learn from others and _The Turing Way_ project, but in a general way without much understanding of what those things mean yet | (clear) Seems excited to collaborate with others and is motivated to contribute to _The Turing Way_ community |\n\nThe following sections are aimed at collecting open-ended response by the reviewers:\n\nWe ask all reviewers to finish the review by describing the application, representation aspects of the applicant and the motivations for their scores to facilitate conversation during the selection panel discussion under these questions.\n\n```markdown\n- Please highlight any diversity/minority groups this applicant belong to, that should be represented at this event\n- Please provide 1-2 summary sentences about this application to facilitate discussion during the selection panel\n```\n\nReviewers are also asked to disclose if any conflict of interest may have influenced their review leading to any bias in their decision.\n\n```markdown\n- Please state if you have any conflict of interest with the proposal described in this application or do you know this applicant personally that may lead to a biased decision\n```\n\nFinally, reviewers are asked whether they would recommend an applicant.\nThe available answers are \"No\", \"Yes\", \"Unsure\" or \"Request for open discussion in the panel\".\nCandidates who have ratings of \"No\" or \"Unsure\" across all reviewers will be rejected.\nAll other candidates will be discussed at the panel selection.\n"
  },
  {
    "path": "book/website/community-handbook/bookdash/bookdash-events.md",
    "content": "(ch-bookdash-events)=\n# Book Dash Event Plans\n\nThis subchapter provides information on the events that are organised for the book dash attendees.\nThese events include a pre-event webinar for information, onboarding calls, GitHub introduction, contribution sessions during the Book Dash and Community Share-Outs, which are explained below.\n\n_The Turing Way_ participation guidelines, [Code of Conduct](https://book.the-turing-way.org/community-handbook/coc.html) and [Contribution guideline](#ch-contributing) apply to all these events:\n\n## Pre-event calls\n\n### Webinar for information\n\nThe planning committee members will host one webinar to share information about the Book Dash that can help interested members to plan their proposals for the event.\nThese webinars will include a 10-15 minutes introduction talk followed by a session to address any questions participants may have.\nRecording and notes from this session will be published on the YouTube channel of _The Turing Way_.\n\n### Pre-event onboarding calls\n\nThe planning committee will host two onboarding calls, minimum of one week before the main event to ensure that all the participants are made familiar with the project, the format of the book dash, and how they can be contributing through their involvement at the Book Dash.\nIt is an opportunity for the organising team and the selected attendees to get to know each other and discuss any concerns that they may have before the book dash.\n\nSeveral participants often come to these calls with some plans and topics they would like to explore for their contributions in _The Turing Way_.\nTherefore, the host of this call facilitates a breakout session to allow attendees to draft their [SMART goals](https://www.atlassian.com/blog/productivity/how-to-write-smart-goals) for the Book Dash.\nThese topics can be something that is either missing in the existing chapters or needs to be updated in the project.\nWe also discuss _The Turing Way_ as a project in general and what the core team is working on to support the development of its guide on reproducibility, ethics, project design, collaboration, communication and a meta-book on the project itself.\nMost importantly, the core team goes through the contribution guideline and explains how attendees can effectively use their time at the Book Dash.\n\nThe template for shared notes can be accessed in the community handbook {ref}`here<ch-template-bookdash-precall>`.\nYou can read notes from the calls from the most recent book dash [here](https://hackmd.io/\\@turingway).\n\n### GitHub introduction session\n\nOne week before the Book Dash, 2-3 members from the planning committee will host a skill-up session for members who don't have any prior experience with GitHub.\n\nAt this call, participants will learn how to:\n- create a new repository\n- create a (README) file: introduction to {term}`Markdown`\n- submit changes (to _The Turing Way_) via a Pull Request (PR)\n- see how to review PRs or create issues\n\nThis session will help participants identify resources that they can use for self-paced learning.\nIn the previous events, we have used the following materials:\n- [Training materials](https://malvikasharan.github.io/developing_collaborative_document)\n- [Friendly GitHub Introduction](https://docs.google.com/presentation/d/e/2PACX-1vR-Qu4kYulSMGnnAHH9-OonNiLkaJrsolEecEkt0VD5_3PmKWePmiSQwxK3QHoq5gNsL-MJKowmgsAx/pub?start=false&loop=false&delayms=3000)\n- [Cheatsheet](https://guides.github.com/pdfs/markdown-cheatsheet-online.pdf)\n\n## During the Book Dash\n\n### Contribution sessions\n\nOn each day of the Book Dash, we will hold three 2.5 hour-long contribution sessions when hosting virtually each followed by a break or social event.\nEach contribution session will follow the Pomodoro technique for coworking that we also use for the {ref}`coworking calls<ch-community-calls-motivation>` using the [browser-based shared (cuckoo) clock](https://cuckoo.team/tw-bookdash) to coordinate the time.\n\nIn the opening session of the first day, one of the planning committee members will provide an overview of _The Turing way_ project and the resources that are available for the participants for their book dash contributions.\nAttendees will be then allocated in small groups with their collaborators based on their SMART goals.\nThe collaborating groups will work together to build a roadmap and plans for their contributions as chapters, subchapters or other types of content.\nParticipants are also encouraged to come up with the main sections of their contributions and collect their thoughts in bullet points on a GitHub issue.\n\nThe rest of the contribution sessions throughout the Book Dash will be facilitated in breakouts allowing members with similar ideas to collaborate.\nParticipants can also work in self-organised groups or individually on their contribution ideas with the support of mentors.\nThis is also a chance for everyone to meet the participants and helpers informally, learn about each other and connect with specific members who plan to work on the related topic during the Book Dash.\nParticipants will be supported to collaborate in small groups, organising their thoughts and ideas for contributions during or after the Book Dash.\nEach contribution session will end with participants sharing their work with others and identifying new collaborators based on the similarity of their interests.\n\nFor participants who are unfamiliar with GitHub or would like a refresher (and did not manage to attend the GitHub introduction session), the planning committee members will guide them through the process of making their first pull request.\n\n### Social sessions\n\nThere will also be themed social discussion or networking session where participants can interact with others, continue their discussions outside the contribution session or take a break as it's most sustainable and helpful for their participation.\nFor a virtual Book Dash, a support fund will be provided to cover the subsistence cost including paying for meals for the social sessions.\nIf hosting an in-person event, the core team members will plan a dinner or social event to allow participants to relax after an intense discussion session and enjoy meals together in an informal setting.\n\n### Reporting and documentation\n\nAt the end of each day, participants can gather all their contributions on _The Turing Way_ GitHub repository (issues, pull requests and notes) and add that in the shared notes.\nSpecifically, during the last contribution session, they will be asked to add their details to the [individual contributors record](#contributors-record-individual) and provide anonymous feedback on a {ref}`Pluses and Delta<ch-template-bookdash-feedback>` notes.\nThis will help the planning committee to collect notes for their final report and improve future events.\n\n### Community Share-outs & Contributor Celebration\n\nOn the last day of the Book Dash, _The Turing Way_ team along with the planning committee members host Community Share-out and Contributor Celebration sessions that are open to the public.\nThe Community Share-out events provide a public platform to openly recognise the work of our attendees and community contributors.\n\nIn this session, all the interested contributors including the Book Dash attendees will have a chance to share their work with everyone through a short demo/presentation.\nAll Book Dash attendees are encouraged to invite their colleagues and friends who would like to learn about and celebrate their work and connect with _The Turing Way_ community.\n\nThese sessions are generally recorded to share via the project's YouTube channel.\n\n## Creating an environment for self-paced contributions\n\nWe acknowledge that everyone prefers different settings to work effectively and attentively.\nTherefore we create an environment for self-paced contributions to _The Turing Way_ project.\n\nSome recommendations to achieve this by managing the space at the Book Dash:\n- Set up shared notes for everyone to take notes together and draw inspiration from each other's work (see {ref}`template for notes<ch-template-bookdash-notes>`).\n- Offer a separate space (physical space or online breakout room) for open discussion for people who work better by discussing their ideas out loud.\n- When meeting in person, provide semi-quiet spaces or headphones for noise cancellation for people who don't need active discussions.\n\nThroughout the day, everyone is encouraged to ask for help, move around or change their position or group as needed.\nParticipants are invited to offer feedback on other people's work during the report out session.\n\nThough there are designated breaks, participants are encouraged to take breaks whenever they need to decompress.\nA quiet room is arranged so that people can step back from the crowd as per their need for quiet time.\n"
  },
  {
    "path": "book/website/community-handbook/bookdash/bookdash-illustrator.md",
    "content": "(ch-bookdash-illustrator)=\n# Working with an Illustrator\n\nA picture is worth a thousand words.\nThis adage is true also in research and science communications, especially to get more people to understand complex concepts in data science and research and make technical knowledge more accessible, understandable and explainable for our readers and communicators.\n\nIn *The Turing Way*, we work with professional illustrators to capture the main concepts and ideas we share in *The Turing Way* book and community.\nThese illustrations are either something that *The Turing Way* members are writing about in a chapter or community resource, discussions they have at the Book Dash or *The Turing Way* activities in general.\n\n## Background\n\nIn 2018, impressed by live scribing of a talk by an illustrator, Kirstie Whitaker decided to invite a Scribe for the first set of Book Dash events that took place in 2019 in London and Manchester.\n\nThe Book Dash was a success and the experience of working with an artist added to the overall experience of our attendees.\nThey loved seeing their ideas translated into images - an (almost) immediate output they could collaborate on and feel proud to have contributed to.\nThis experience was brought back in subsequent Book Dash events in person and online and has always remained a highlight.\n\n```{figure} ../../../figures/book_dash_mcr_art.*\n---\nheight: 400px\nname: book_dash_mcr_art\nalt: A set of hand-drawn sketches about stuck horizontally against a textured wooden wall. The first three sketches describe FAIR principles (findable, accessible, interoperable and reusable). Other three images are blurry.\n---\nPicture taken by Jez Cope at the Book Dash 2019 in Manchester. Hand sketched illustrations by Matthew Kemp of [Scriberia](http://www.scriberia.co.uk/).\n```\n\nAll illustrations generated within *The Turing Way* are shared under the CC-BY 4.0 licence on Zenodo: [https://zenodo.org/record/3332807](https://zenodo.org/record/3332807).\nAll images on Zenodo are shared in the original format and size, but we use smaller files in *The Turing Way* guides that you can find in [our GitHub repository](https://github.com/the-turing-way/the-turing-way/tree/main/book/figures).\n\nWhen citing, please include the following attribution with the specific DOI as listed on the particular Zenodo page.\n> _This illustration is created by Scriberia with The Turing Way community. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807)_\n\nWhen using these illustrations in a digital document, please describe them using the Alt Text feature for the users of screen reading apps.\nAlt Text is an important criteria to ensure accessible web design used for describing abstract concepts captured in images to readers who are unable to see them.\nFor guidance, please read [Write good Alt Text to describe images](https://accessibility.huit.harvard.edu/describe-content-images) by the Digital Accessibility service of Harvard University.\n\nWe encourage using these illustrations not just within *The Turing Way*, but wherever appropriate in the context of science communications or to enhance public engagement with data science and research.\nWe already see reuse by the broader community of researchers, science communicators, policymakers and more, as reflected by over 34,000 downloads at the time of writing this chapter (April 2025).\n\nHere are some examples:\n- **Scoping Report: EU Policy**: [Reproducibility of scientific results in the EU: scoping report. Publications Office of the European Union](https://op.europa.eu/en/publication-detail/-/publication/6bc538ad-344f-11eb-b27b-01aa75ed71a1),  Directorate-General for Research and Innovation (European Commission), author(s): Baker, L., Cristea, I. A., Errington, T. M., Jaśko, K., Lusoli, W., MacCallum, C. J., Parry, V.,  Pérignon, C.,  Šimko, T.,  Winchester, C. (2020)\n- **Peer-reviewed article**: Reproducibility Starts from You Today. Patterns, 1(6). Velden, Y. T.-v. d., Dintzner, N., & Teperek, M. (2020). DOI: [10.1016/j.patter.2020.100099](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7660441/)\n- **Blog Post**: [Book Dash Summary](https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&cad=rja&uact=8&ved=2ahUKEwijiPi8qfv4AhWFRsAKHW8xDYoQFnoECB8QAQ&url=https%3A%2F%2Fopenworking.wordpress.com%2F2021%2F11%2F18%2Fthe-turing-way-book-dash-online%2F&usg=AOvVaw17LCopsA1XNyTtq109acnq), Plomp, E. (2021)\n- **Report Highlight**: [Towards a set of best practices for doing research with Trusted Research Environments](https://popdatasci.swan.ac.uk/towards-a-set-of-best-practices-for-doing-research-with-trusted-research-environments), Chalstrey, E. (2021)\n- **FAIR CookBook**: [Leveraging the Turing Way Book](https://faircookbook.elixir-europe.org/content/recipes/afterword/the-turing-way.html), Rocca-Serra, P.\n- **News article**: [Connecting the dots between research methods, academic cultures and technical solutions: Three reflections on publishing reproducible research outputs - News - Knowledge Exchange](https://www.knowledge-exchange.info/news/articles/29-01-2021), Knowledge Exchange, Chiarelli, A. (2021)\n- **Training Materials**: [Reproducible research](https://eglerean.github.io/reproducible-research/03-sharing), (2019)\n\n## Benefits of illustrations and why hire a professional scribe\n\n*The Turing Way* chapters often include research or scientific concepts described by professionals. \nAs experts, many of us do not always effectively communicate our ideas in simple terms for people who are new to those research concepts. \nThis is where illustrations are quite powerful at communicating complex ideas simply.\n\nSimple images, tables and flow charts are something that many of us can create. \nSketchnote is another way to visually describe a set of ideas. \nSeveral resources can be found for people interested in sketch-noting and visual thinking, for example, see this [post from Sketchnote Academy about sketchnote](https://sketchnoteacademy.com/what-is-sketchnoting/) and [videos on visual thinking by Scriberia](https://www.youtube.com/watch?v=-Owxi2QNjlI).\n\nIt is an advantage for scientists who are also excellent in visual communications, but most people may find it challenging and time taking to create both written and visual materials. \nTherefore, it is useful to hire expert/professional scribes if a project or event budget allows. \nThese scribes/artists generally talk to researchers for 10-20 minutes to gather all information they need to express their ideas through drawings, illustrations or infographics. \nSometimes, these can be done as scribing of a talk or discussion as explained in [this video by Scriberia](https://www.youtube.com/watch?v=LjrtKaZVEio). \n\nThese illustrations are available at the end of the event, or after a few days if post-processing, editing, modification or digitalisation of hand-drawn sketches might be needed.\nHaving a scribe at an event can also improve engagement and help participants contribute to something that is immediately and visually achievable in a short duration. \nFurthermore, if shared on the spot, researchers can use their illustrations as a way to exchange their ideas more widely, even with those they won't meet.\n\n### Considerations for creating a brief\n\nFinding a good illustrator or scribe can be a new challenge if you have not worked with one before. \nIt is always useful to ask in your network if someone has previously worked with someone who they may recommend. The cost may vary based on the country, type of service or experience of the scribe/company. \nGenerally, you can find multiple companies or freelancers who offer their services, describe your requirements and ask for quotes. \n\nYour request/brief may include the following details:\n- your budget and how many hours or days would you require a scribe for\n- what kind of sketches do you need: simple illustrations, infographics, motion videos, live scribing\n- communicate with the service providers if you have specific images in mind (if the number of images is known)\n- what would you use those illustrations for, for example, reports, videos, presentations or something else\n- how you hope to work with the scribe: in person or online (what platform would you use, can they have their video off, how would you like them to show illustrations - live or end product)\n- live sketching with little post-processing, or asynchronous collaboration with time bound delivery period\n- do you have any colour preference, for example, to project your brand or event, as well as maintain accessibility\n- what should the scribe know about your project or event that will help them think about their illustrations\n- how much creative freedom would they have in making artistic decisions\n- what kind of details do you need to include that should be maintained consistently in all illustrations\n- If you need raw and vector (layered) versions of your image files, you will have to communicate this in advance and prepare to pay extra for the postprocessing.\n\n### Service providers\n\nThe budget for hiring a professional scribe can vary based on the kind of service they provide.\nIn *The Turing Way*, we have worked with [Scriberia](https://www.scriberia.com/) artists/scribes who are hired on a per day cost for live scribing. \nThe cost is less for half-day, and additional charges apply for infographics.\nFor each event, we have worked with different scribes and enjoy the diverse style and skills they bring to the event. \nOur illustrations are a mix of simple and complex concepts and are often described with cartoon-like characters. \nThe Scribria company is given equal authorship with *The Turing Way* community members who contribute to the development of those images during the Book Dash. \n\nThe costs of hiring freelance illustrators may be lower and they can often provide bespoke services (creating specific styles, details and number of images).\nOur colleagues in [Turing Commons](https://turing-commons.netlify.app/) work with freelance scribe artists and illustrators to create illustrations asynchronously.\nAll images by Turing Commons are available in their [GitHub repository](https://github.com/alan-turing-institute/ethics-and-rri-resources/tree/main/images) also under a CC-BY 4.0 licence for reuse.\n\nWhen planning, it is always good to look for more than one service provider to compare the cost.\nContact the company's account manager or the freelance artist directly to set a 20-30 minutes meeting to discuss your brief and any detail they should know. \nBased on your request, they will share their quotes for each service.\nWhen confirmed, block the dates/times and share details about your event (agenda, logistics, and anything else they should know). \nWhen agreed, you will receive a contract for the service, terms and conditions and an invoice to be paid after the service is delivered.\n\n### Sample schedule\n\n```\nTuring Way Book Dash - Proposed Schedule for Scriberia Artist\n\nTimings\tLength of session\tActivity\n09:00:00\t20\tGroup 1\n09:20:00\t10\tArtist colour Group 1\n09:30:00\t20\tGroup 2\n09:50:00\t10\tArtist colour Group 2\n10:00:00\t20\tGroup 3\n10:20:00\t10\tArtist colour Group 3\n10:30:00\t20\tArtist break\n10:50:00\t20\tGroup 4\n11:10:00\t10\tArtist colour Group 4\n11:20:00\t20\tGroup 5\n11:40:00\t10\tArtist colour Group 5\n11:50:00\t10\tArtist break\n12:00:00\t20\tGroup 6\n12:20:00\t10\tArtist colour Group 6\n12:30:00\t20\tGroup 7\n12:50:00\t10\tArtist colour Group 7\n13:00:00\t45\tArtist lunch\n13:45:00\t20\tGroup 8\n14:05:00\t10\tArtist colour Group 8\n14:15:00\t20\tGroup 9\n14:35:00\t10\tArtist colour Group 9\n14:45:00\t20\tGroup 10\n15:05:00\t10\tArtist colour Group 10\n15:15:00\t10\tArtist break\n15:25:00\t20\tGroup 11\n15:45:00\t10\tArtist colour Group 11\n15:55:00\t20\tGroup 12\n16:15:00\t10\tArtist colour Group 12\n16:25:00\t20\tGroup 13\n16:45:00\t10\tArtist colour Group 13\n16:55:00\t20\tGroup 14\n17:15:00\t10\tArtist colour Group 14\n17:25:00\t35\tFinalise artwork/upload files to GDrive folder provided by client\n18:00:00\t\tFinish\n```\n\n## Pro tips\n\nTo enhance the use of these illustrations, we have learned to keep the concepts simple, self-contained and reusable in different contexts. \nIf texts or sentences are used in the image, we request a copy of those illustrations without text to make sure that they can be translated into other languages. \n\nImages (both versions: with and without text) are uploaded to Zenodo with descriptive names as individual images in 'jpg' format to allow preview and a zipped folder in different file formats to allow downloading. See details here: https://zenodo.org/record/3332807.\n\nWe ensure that the characters in the images are designed while maintaining representations of our diverse community members.\n\n### Translating and editing for reusing images\n\nZipped archives (names ending with '-without-text.zip' on Zenodo) are provided that can be translated into languages that you would like to use. \nWe encourage the use and re-use of these images as much as possible. \nThis includes remixing the images, for example changing the colours, translating text or merging them with additional (openly licensed) images. \nIf you create something that others may benefit from, we encourage you to contribute your image back to *The Turing Way*.\n\nIf you'd like to change the colours of the image to align with other elements of your presentation, see this [post by Alex Chan for changing the dominant colour in an image](https://alexwlchan.net/2020/02/adjusting-the-dominant-colour-of-an-image/).\n"
  },
  {
    "path": "book/website/community-handbook/bookdash/bookdash-logistics.md",
    "content": "# Book Dash Logistics\n\nWe have created the following checklists, which are chronologically structured to help organise Book Dash events online or in-person.\n\n## Before the Event\n\n- [ ] Establish a Book Dash Planning committee by inviting returning members of the event\n- [ ] Finalise dates based on the location and organisers' availability\n- [ ] Book location for in-person events\n- [ ] Set up an online platform ([Zoom](https://zoom.us/), or other accessible software) for remote collaboration\n- [ ] Set up a form (see a template {ref}`here<ch-bookdash-application-additional-materials>`) for application by updating the previous version of the form\n- [ ] Discuss with co-organisers if some resources (such as email drafts or templates) need to be updated\n- [ ] Write a short description for online advertisement\n- [ ] Clearly state the following information in an application form and later communicate by email with the selected participants:\n  * what financial support will be available for either online or in-person events\n  * What arrangements will be available online (such as online helpers and designated mentors) or on-site (such as quiet room and child care) for in-person events\n  * Include accessibility information such as live captioning for in-person events and quiet room/child nursing room for in-person events\n  * Mention the maximum limit for financial support requests for online (such as for headphones) and in-person (such as for travel and accommodation) events\n- [ ] Set up the Book Dash Planning meeting to discuss these details before the announcement is sent out\n  * Find volunteers from the organisers who would like to host onboarding calls (1 week before the event)\n  * Find volunteers from the organisers who would like to host a GitHub introduction session (1 week before the event)\n  * Find volunteers from the organisers who would like to run social events (discussion session, meal, informal chat) - During the event\n  * Find volunteers from the organisers who would like to run community share out sessions - on the last day\n  * Check with them if there is anything else they would like to suggest or get involved in\n- [ ] Announce in the newsletter and promote on X (formerly Twitter) at least 2-3 months in advance\n- [ ] Think about who else needs to be invited, like Artists, speakers, more diverse participants\n- [ ] Identify helpers from the core members and invite them\n- [ ] Send a reminder in next newsletters with more details if needed\n- [ ] Set an Eventbrite page with a registration code for the selected participants\n- [ ] Close the application round in time (1-2 months ahead of the event)\n- [ ] Set-up a form for reviewing applications (see {ref}`ch-bookdash-application-rubrics` for details)\n- [ ] Review applications in a designated panel (Book Dash Planning Committee) using Book Dash Rubrics for selection\n- [ ] Set up another meeting with the Book Dash Planning Committee to discuss the applications and finalise the selection\n  * Use this meeting to also allocate tasks for during and after the event (indicate that on the GitHub issues)\n- [ ] Send an email to the selected attendees with registration\n- [ ] Send an email to the unselected attendees with feedback\n- [ ] Set up an email chain and a Slack channel to connect all members and share updates\n- [ ] Update presentation for introducing the project to the participants on day-1 of the Book Dash\n- [ ] Update shared HackMD for `pre-event calls<ch-template-bookdash-precall>`, {ref}`book dash event<ch-template-bookdash-notes>` and {ref}`feedback<ch-template-bookdash-feedback>`\n- [ ] Provide details on Code of Conduct, contribution guideline and ways to get involved in an ongoing discussion\n- [ ] Host the onboarding call one week before the event to share logistics and facilitate the drafting of SMART goals\n- [ ] Group participants into the proposed working groups as per their SMART goals from the onboarding call\n- [ ] Send a reminder email to register on Eventbrite sharing important links and information including support grant, GitHub session, onboarding call info and reimbursement process\n- [ ] Create a GitHub issue to collect bio and highlight of the participants to add them to the Contributors Record\n\n**Additional task for an online event**\n\n- [ ] State the prerequisites to attend the event\n  * An active GitHub account\n  * Participation in at least one pre-event onboarding call or a Collaboration Cafe\n  * Some experience with using GitHub or attend the Book Dash GitHub session\n  * Familiarity with _The Turing Way_ contribution guidelines and Code of Conduct\n  * Willingness to collaborate with others\n- [ ] Ask them to choose at least one contribution session (2.5 hours) for each day of the Book Dash to ensure flexibility (rather than blocking the full day)\n- [ ] Collect address if something needs to be posted\n\n**Additional task for an in-person Event**\n\n- [ ] Collate participants' preference for travel, meal, accommodation, and accessibility request through the registration form\n- [ ] Send an email to the participants regarding their travel, accommodation, schedule, and meal\n- [ ] Book dinner for people for day-1\n- [ ] Book hotels rooms for people who requested accommodation\n  - [ ] Double-check with each participant if their plan as given on their registration hasn't changed\n- [ ] Book travel for those who requested\n  - [ ] Double-check with each participant if their plan as given on their registration hasn't changed\n- [ ] Book catering for lunch and coffee breaks\n- [ ] Mention that the event will offer a vegetarian meal as default - and ask participants to get in touch if another meal type is required\n\n## During the Event\n\n- [ ] Run onboarding sessions on the first day\n  * Welcome everyone (for each slot)\n  * Ask to fill the icebreaker\n  * One of the organisers delivers introduction talk\n  * Create breakout groups for people working on\n- [ ] Host coworking sessions with Pomodoro sessions 30-35 mins long\n  * At the beginning of the session, ask people to document or verbally share their plan for the session\n  * End each session with any report people want to make\n  * Give 5 minutes break before entering the next Pomodoro\n  * Keep last 10 minutes for final reporting and co-documenting the work that took place during the Pomodoro\n- [ ] If an artist, illustrator or consultant is invited, coordinate the schedule with participants so they have the chance to engage\n- [ ] Run a social session each day\n  * These are run by organisers to ensure everyone has the chance to connect informally\n- [ ] Host community share out event on the last day to demonstrate and celebrate the contributions made by everyone during the Book Dash\n- [ ] Ask for feedback on the last day (plus and delta)\n- [ ] Share the GitHub issue for adding bio and highlight\n- [ ] Take screenshots or group photos (with permission) to share in reports or social media\n\n## After the Event\n\n- [ ] Send a thank you email to everyone for their work\n- [ ] Move bio and highlight from the GitHub issue to the Contributors Record\n- [ ] Summarise the event (number of pull requests, issue, chapters, and other significant news) to share with the participants\n- [ ] Share the update via the newsletter\n- [ ] Develop a report with highlights and updates on GitHub\n- [ ] Set up a debrief meeting with the planning committee\n- [ ] Send a thank you note (or a package when possible) to the planning committee\n"
  },
  {
    "path": "book/website/community-handbook/bookdash/bookdash-selection.md",
    "content": "(ch-bookdash-preparation)=\n# Participant Selection Process\n\nThis subchapter explains the process of selection and logistics for organising the Book Dash.\n\n## Selection of Book Dash Planning Committee\n\nTo ensure that the Book Dash continues to evolve as per the community needs and preferences, invite returning members of the Book Dash events to join a planning committee.\nMembers of the Book Dash planning committee participate in the planning meetings, provide feedback on the ongoing process and when possible take the lead on organisation tasks related to the Book Dash.\n\nThese tasks include completing one or more of the following roles and responsibilities:\n- **Planning Meetings**: attend a planning meeting to help select a date, agree on the format and share any feedback on the previous event that can help plan the Book Dash (time commitment: up to 30-60 minutes in the months leading to the Book Dash)\n- **Application Review**: review 3-6 applications based on your availability (time commitment: up to 30-60 minutes, based on your availability)\n- **Selection meeting**: participate in the selection meeting to help ensure that the selection is equitable (time commitment: 60 minutes)\n- **Organisation meeting**: attend 1 call to finalise the logistics for the organisation (program agenda and participant support will be carried out by _The Turing Way_ core members) (time commitment: 1 hour)\n- **Onboarding calls**: Lead one of the onboarding calls (time commitment: 1 hour)\n- **GitHub introduction session**: Lead the introduction session (time commitment: 1.5 hours)\n- **Session host**: Lead at least one of the sessions during the Book Dash week itself, based on availability (2.5 hour-long sessions)\n- **Debrief meeting**: attend a meeting after the event to discuss what went well and what we can improve going forward (time commitment: 1 hour)\n- **Shared Documents**: set up or review shared notes, application form, review rubrics or other required documents for the Book Dash (time commitment: relative to the type of document)\n- **Post-event Documents**: ensure the update of [](#contributors-record-highlights), help document the event report and update the Book Dash chapter online\n\nThe invitation to join the planning committee is sent by the core team members based on the applications sent by returning members of the Book Dash expressing their interest in mentoring.\nThis is a volunteer position and there are no expectations of commitment to do multiple tasks described above.\n\n## Selection of Book Dash participants\n\nThe Book Dash Planning Committee meets after they have individually scored the applications using the rubrics defined in the previous subchapter.\nThey agree upon a final set of applicants selected to participate in the Book Dash.\nThe panel members also create constructive feedback on the applications that can be shared with the applicants who were not selected so that they can assess other pathways to engage with the project and core team.\n\nAll applicants are contacted at least 4 weeks in advance to ensure that they can assess their situation and availability for the Book Dash.\n\nUpon confirmation, they are provided with registration details through which they can share any information that can help them and the organisers prepare for the Book Dash.\nParticipants are asked to get familiarised with [_The Turing Way_ GitHub repository](https://github.com/the-turing-way/the-turing-way) where they will make their contributions during the Book Dash.\nThe project's [contributing guidelines](#ch-contributing) and {ref}`Code of Conduct<ch-coc>` are also shared with the participants that are applicable to the Book Dash as well.\n\nTo further support the participants, pre-event calls are hosted and further details are shared directly by email (discussed in the next subchapter).\nThe names of the selected participants are announced in _The Turing Way_ newsletter and social media platforms upon agreement with the participants.\n\n(ch-bookdash-application-additional-materials)=\n## Additional materials\n\n- [Template for the application form](https://docs.google.com/forms/d/14JbI_Xqr8vRWAidzcVFhB-5iITA6n9BOZ0RX_aSDauU/edit?usp=sharing)\n- {ref}`templates for planning<ch-templates>`, also see [the issue #806](https://github.com/the-turing-way/the-turing-way/issues/806) for example from the book dash\n"
  },
  {
    "path": "book/website/community-handbook/bookdash.md",
    "content": "(ch-bookdash)=\n# _The Turing Way_ Book Dashes\n\n_The Turing Way_ [Book Dash events](https://book.the-turing-way.org/community-handbook/bookdash.html) are a less intense version of [Book Sprints](https://en.wikipedia.org/wiki/Book_sprint), where participants collaboratively work on _The Turing Way_ book synchronously to develop new chapters and review/edit existing ones to make them more accessible, comprehensive and up-to-date.\nThey also contribute to enhancing the project by improving the ways we work in the community and take the lead on accomplishing different tasks or subprojects.\n\n```{figure} ../../figures/book-dash-collaboration.*\n---\nheight: 500px\nname: book-dash-collaboration\nalt: Cartoon-like sketch of a big yellow tree in the centre of image. A diverse group of people, all pictured within a yellow, green and orange colour scheme, including a person using a wheelchair and people from different backgrounds are watering and maintaining the tree with the help of 2 ladders. The title reads 'The Turing Way book dash.\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\nIn the past, we have organised 1-2 day long Book Dash events in person or in a hybrid format, where one of the participants coordinated with their team remotely. \nHowever, to ensure that international participants have an equal chance to join and address the challenges of hosting in-person events during the COVID-19 pandemic, we started hosting Book Dashes virtually. \nThese virtual Book Dashes are five days long, designed for flexible participation by members in different time zones. \nMeaning, rather than committing their entire working day, participants can choose one or multiple 2.5 hour short collaborative co-working calls, called \"contribution sessions\" each day based on their availability.\nIn the future, we will co-design hybrid events with an \"online-first\" approach for the Book Dash attendees who will have the opportunity to organise small local meet-ups for collaboration and social events.\n\n```{figure} ../../figures/first-pull-request.*\n---\nheight: 400px\nname: book-dash\nalt: A person helping out another person making their first pull request on GitHub\n---\nMaking your first pull request on GitHub.\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n## Inviting diverse contributions\n\nOur Book Dash attendees are:\n- First time Book Dash attendees who have previously interacted with the project or community who send in their application describing where/how in the project and community they would like to contribute. See the {ref}`eligibility<ch-bookdash-eligibility>` section for details.\n- Previous Book Dash attendees to express their interest to participate again as contributors, members of planning committees and/or mentors. Book Dash mentors facilitating other attendees' contributions in one or multiple of the contribution sessions based on their interest and availability.\n\nAs a community-driven guidebook, _The Turing Way_ aims to co-create content that is comprehensible and beneficial for the wider community of researchers, data scientists and individuals working in research infrastructure roles.\nHence, _The Turing Way_ specifically welcomes contributors from diverse fields, identities, and backgrounds who can propose ideas and work on new aspects of an existing chapter or create new chapters in its guides.\n\nAll the contributions are managed through GitHub.\nSince many participants of the Book Dash are relatively new community members, and often new users of GitHub, the team members make sure that they take time to introduce the project and teach collaboration through GitHub before the Book Dash.\n\nThe skills and contributions that we invite at the Book Dash include, but are not limited to:\n\n- Science communication and technical writing skills.\n- Examples and case studies of reproducible research.\n- Editing and reviewing of existing content.\n- Technical tools and methods in data science.\n- Interest in creating content on community building and collaboration.\n- Developing learning resources and reusable content on ethics and AI.\n- Artistic skills for illustrations, sketch notes, and infographics.\n- Enhancing online aspects of the book (for example, CSS, layout, interactivity, continuous integration).\n- Improving accessibility of the content and sharing accessibility principles in data science.\n- Data visualisation skills and best practices.\n- Storytelling skills that can help make our content more engaging.\n\n(ch-bookdash-eligibility)=\n## Eligibility: who should apply to join the Book Dash?\n\nWe want to support participants in getting the most out of these Book Dash events. \nTherefore, we encourage applications from members of our community, including both new and existing contributors. \nMore specifically, we want applicants to know about _The Turing Way_, how we work collaboratively and have a good idea of how they can contribute to our resources. \n\nThis does not mean that you must have contributed to the project before - it is more about having used the project and/or interacted with our community in some way, such as during a community event or via our GitHub repository.\nSome familiarity with the project and how we work in the community will help our participants collaborate during the Book Dash more easily, even if this is with the support of more experienced community members. \nIf you have previously contributed to a collaborative project or have a specific proposal for contribution in mind, you are highly encouraged to apply.\nDo get in touch with one of the core contributors who can help you shape your idea by identifying where and how they fit in the bigger vision of the project.\n\nIf you have not interacted with our community before, but want to take part in a Book Dash, please join one of our [Collaboration Cafés](#ch-community-calls-collabcafe).  You will be onboarded into our community so you can be familiarised to the project and the Book Dash. \nThis way, you will get to know about our project and understand more about how you could contribute during a Book Dash.\n\n## Support in-person, hybrid and remote participation\n\nPrevious Book Dashes have been organised for in-person participation in venues located in the UK (the home country of the project) and the Netherlands, as hybrid events, or entirely online.\n\n**For participants attending a Book Dash in person:** \n* All the participants who need to travel to the event's venue are offered financial support to cover their travel, accommodation, and related expenses such as childcare or special accessibility requirements.\n* In the past, due to the funding model of _The Turing Way_, we had to limit our selection to contributors within European countries.\n\n**For participants attending a Book Dash remotely:** \n* We have experimented with hybrid (partial remote) participation where one of the participants coordinated with their team remotely.\nBased on the success of this hybrid format and further demand for more remote participation, we have had two virtual events that did not involve travel.\nIn the future, we aim to experiment with a multi-hub format allowing multiple small groups across the globe to meet in person as they work synchronously with other international contributors remotely.\n* Financial support is made available to support the remote accessibility requirements of the participants at hybrid and fully remote Book Dashes.\nIt includes (but is not limited to) temporary access to high-speed internet, childcare grants and live transcription during the event.\nThese bursaries are also available for the rent or purchase of small hardware items such as headphones or webcams to enhance participants' overall experience.\n* There is also financial support for subsistence costs such as buying meals or treats for the online social events during the Book Dash.\n\n## Organising a Local Hub\n\nAs part of the wider online Book Dash event it is possible to organise local hubs that take place in person over 1–2 days in the same week as the online Book Dash. \nIn the past, these hubs have been organised at London and Bristol in the UK, as well as Amsterdam and Delft in the Netherlands.\n\nTo organise a hub, you will need to consider which days are most suitable to organise the in-person event. \nThis may depend on your availability, the availability of rooms, or events that take place during the Book Dash event. \nFor the TU Delft Hub we always organised the in-person hub on the Tuesday and the Wednesday, so that we avoid the first online day which is focused on introductions, as well as the 'scriberia' day that usually takes place on Thursday. \nYou will need to arrange or consider the following: \n\n- Book an event location based on the amount of registrations you will expect (maximum 20 persons, realistically speaking it will probably be more towards 10 people joining)\n- Make sure there are some snacks and drinks available\n- Consider if you want to host a dinner on one of the days - this may require budget or communication to participants that they need to cover the dinner themselves\n- Consider if there is funding available from your local institute, or any funders or other stakeholders, which could be used to cover travel/accessibility/childcare/food costs\n- Let participants sign up via the general Book Dash application form, or let them sign up separately for the local hub only\n- Ask participants about any dietary and accessibility requirements, and which (parts of the) days they would like to join\n- Inform your participants at least a week in advance about a preliminary schedule, location information and other information needed to participate in the event\n- On the day itself:\n  - Open the room up early, make sure that there are name tags available and ideally stickers to hand out\n  - Use the introduction presentation to remind people about the Code of Conduct, the schedule and anything else that first-time attendees need to know\n  - Check-in with the online Book Dash by either joining a session online, or at least adding information about what people are working on at the local hub to the etherpad\n  - Focus on facilitating the participation of the participants, not on your own contributions - hosting an event takes effort!\n  - Remind people to join the Share-out sessions on Friday\n- At the end or afterwards: Thank participants and give them the opportunity to provide feedback via a short form or via the etherpads used by the wider Book Dash event\n\n## More Resources on Book Dash\n\nIn this chapter, we discuss the {ref}`application<ch-bookdash-application>`, {ref}`event preparation and participant selection<ch-bookdash-preparation>` and {ref}`event preparation<ch-bookdash-events>` processes.\n\nAll the templates related to book Dashes are provided in the {ref}`community template collection<ch-templates>`.\n"
  },
  {
    "path": "book/website/community-handbook/coc/coc-acknowledgement.md",
    "content": "# 5 Acknowledgement\n\n```{note}\nThis page displays the [`CODE_OF_CONDUCT.md`](https://github.com/the-turing-way/the-turing-way/blob/main/CODE_OF_CONDUCT.md), a base file with Code of Conduct that applies to all spaces and activities within _The Turing Way_.\n```\n\n```{include} ../../../../CODE_OF_CONDUCT.md\n:start-after: # 5 Acknowledgement\n```\n"
  },
  {
    "path": "book/website/community-handbook/coc/coc-details.md",
    "content": "(ch-coc-details)=\n# 2 Code of Conduct: Details\n\n```{note}\nThis page displays the [`CODE_OF_CONDUCT.md`](https://github.com/the-turing-way/the-turing-way/blob/main/CODE_OF_CONDUCT.md), a base file with Code of Conduct that applies to all spaces and activities within _The Turing Way_.\n```\n\n```{include} ../../../../CODE_OF_CONDUCT.md\n:start-after: # 2 Code of Conduct: Details\n:end-before: # 3 Incident Reporting Guidelines\n```\n"
  },
  {
    "path": "book/website/community-handbook/coc/coc-enforcement.md",
    "content": "(ch-coc-enforcement)=\n# 4 Enforcement Manual\n\n```{note}\nThis page displays the [`CODE_OF_CONDUCT.md`](https://github.com/the-turing-way/the-turing-way/blob/main/CODE_OF_CONDUCT.md), a base file with Code of Conduct that applies to all spaces and activities within _The Turing Way_.\n```\n\n```{include} ../../../../CODE_OF_CONDUCT.md\n:start-after: # 4 Enforcement Manual\n:end-before: # 5 Acknowledgement\n```\n"
  },
  {
    "path": "book/website/community-handbook/coc/coc-reporting.md",
    "content": "(ch-coc-reporting)=\n# 3 Incident Reporting Guidelines\n\n```{note}\nThis page displays the [`CODE_OF_CONDUCT.md`](https://github.com/the-turing-way/the-turing-way/blob/main/CODE_OF_CONDUCT.md), a base file with Code of Conduct that applies to all spaces and activities within _The Turing Way_.\n```\n(ch-coc-contact)=\n## 3.1 Contact points\n\n```{include} ../../../../CODE_OF_CONDUCT.md\n:start-after: ## 3.1 Contact points\n:end-before: ## 3.2 Alternate contact points\n```\n\n## 3.2 Alternate contact points\n\n```{include} ../../../../CODE_OF_CONDUCT.md\n:start-after: ## 3.2 Alternate contact points\n:end-before: # 4 Enforcement Manual\n```\n"
  },
  {
    "path": "book/website/community-handbook/coc.md",
    "content": "(ch-coc)=\n# Code of Conduct\n\n```{note}\nThis page displays the [`CODE_OF_CONDUCT.md`](https://github.com/the-turing-way/the-turing-way/blob/main/CODE_OF_CONDUCT.md), a base file with Code of Conduct that applies to all spaces and activities within _The Turing Way_.\n```\n\n```{include} ../../../CODE_OF_CONDUCT.md\n:start-after: # Code of Conduct\n:end-before: # 2 Code of Conduct: Details\n```\n"
  },
  {
    "path": "book/website/community-handbook/communication-channels/slack-start-guide.md",
    "content": "# Quick Start Guide for Slack\n\nWelcome to the community Slack group: a place for you to network, collaborate, exchanges resources and share ideas with others in the community.\n\n**Table of content**\n\n1. [Configuring your account](#configuring-your-account)\n2. [Notification settings](#channel-notification-settings)\n3. [Communicating with others](#communicating-with-others)\n\n(configuring-your-account)=\n## 1. Configuring your account\n\n### PROFILE\n\n* **Your username** – please use a name by which others will be able to identify you. Your email address is visible to others.\n* **Your avatar** – please add a profile picture or other identifier that you’re comfortable with so that others can associate your posts with you more easily.\n* **Your time zone** – this determines when Slack will notify you and can also help others know whether it’s a reasonable time of day to get in touch.\n\nHere is a guide to help you [edit your profile]( https://slack.com/intl/en-ca/help/articles/204092246-Edit-your-profile).\n\n### STATUS UPDATES\n\nStatus updates can be a useful way to let others know your availability as your status will be visible to everyone in the Slack group.\n\nTo update your status, click your name in the top left of the screen and select `update status`. You can select when you want your status update to be removed by stipulating a timeframe from the “clear after” dropdown.\nYou can clear a status update at any time by clicking on your name and selecting `clear status` from the dropdown.\n\n(channel-notification-settings)=\n## 2. Channel and Notification settings\n\n### How to find, join and create channels\n\nBy default, you’re automatically added to the main channels that everyone belongs to (for example, #general, #welcome, #introductions & #random).\n\nYou will be able to create additional channels to facilitate structured conversation. You are free to create as many channels as you would like. However, channels dedicated to projects should be made public (not private) so people can collaborate or help you.\n\n### Configure your notifications\nSlack notifications are great, but they may bother you when you try to focus on your project. There are a lot of options for you to determine how and when you are informed about content – and at what level of granularity.\n\n#### For the overall group\n1. Click on your `name` at the top left of the page and select “`preferences`” from the dropdown\n1. In the Notifications section you have options which include:\n    * Set times when you do not want to be disturbed by notifications\n    * Enable desktop notifications\n    * Choose to be alerted when certain keywords are mentioned\n\n#### Channel by channel\n1. When you’re in a channel, click the “`i`” icon at the top right. Choose “`more`” and then click “`notifications`.”\n    * Here you have the option to ignore any \\@channel messages, or mute the channel entirely.\n\n#### Following a specific thread\nIf another group member posts something of particular interest you can choose to follow that thread. Find how to reply in thread in [Section 3](#communicating-with-others).\n\n1. Click the `ellipsis (three dots)` to the right of the original post and select “`follow message`” from the dropdown.\n\n#### Getting a reminder about a specific thread\nYou additionally have the option to be reminded about a\nthread at a more convenient time. From the `ellipsis` to the right of the original post select “`remind me about this`” from the dropdown and choose a timeframe.\n\n### Muting or leaving channels\nIf a channel has become too noisy, you can additionally:\n* **Mute** it: When you’re in a channel, click the “`i`” icon at the top right. Choose “`more`” and then choose “`mute`” from the dropdown.\n* **Leave** it: When you’re in a channel, click the “`i`” icon at the top right. Choose “`more`” and then choose “`leave`” from the dropdown.\n\n(communicating-with-others)=\n## 3. Communicating with others\n\n### A FEW POINTS OF ETIQUETTE\n\n#### Use threads to continue conversations\n\n* When someone posts a brand new item in a channel, anyone in the channel can reply directly to it, creating a thread. Threads allow separate conversations to take place in the group without confusion – and for members to choose which of those conversations to follow more closely.\n* To add a comment to a thread, click the :left_speech_bubble: to the right of an existing post.\n\n#### Use \\@channel, \\@here and other handles sparingly\n\n* If you type **\\@channel** or **\\@here** or other general handles (**\\@participants** or **\\@instructors**, & **\\@admin**) in a post or comment that will send a notification to everyone in that channel. Please use this only for items that really do need everyone’s attention.\n\n#### Respect the context of this shared space\n\n* We want it to be somewhere where learning can happen in a supportive, safe environment.\n* Please **DO NOT** take conversations out of context and copy/paste them elsewhere without the permission of all the individuals who posted.\n\n#### Not all communications will be synchronous\n\n* While IM-based conversations can feel very immediate, please don’t feel that you have to respond to messages immediately, nor expect others to respond immediately. We’re all busy, really busy!\n\n#### Message Editing & Deletion\n\n* You are allowed to edit your messages at any time. That means if you edit a message after someone replied to it, make it clear that you edited something if it changes the meaning of your message. See the example in the GIF below.\n\n#### Account Management\n\n* To update the email address associated with your Slack account, follow the instructions provided on the [Slack Help page](https://slack.com/intl/en-gb/help/articles/207262907-Change-your-email-address).  \n* If you joined using two different email addresses, you may have unintentionally created two separate accounts. In this case, please contact a member of _The Turing Way_ team. They can help you delete one of the accounts of your choice, allowing you to maintain a single active account linked to your preferred email address.\n\n### SENDING PRIVATE/DIRECT MESSAGES\nIt can be helpful to others when you’re sharing resources and brainstorming solutions to “work out loud” in a specific thread because then your learning becomes a future resource for others, too.\n\nHowever, sometimes you want to start a private conversation. To do this, go to the `direct messages` (DM) section on the bottom left of the left-hand side bar. Click the `+` icon to start a new message. You can add more than one recipient to create a group message.\n\n#### Direct message when necessary\nYou may feel tempted to use DM instead of asking questions in dedicated channels. If an instructor believes others will benefit from the answer, they will probably encourage you to ask your question in the appropriate channel. If you have a question, others likely have the same one, we are all learning from each other.\n\nThat said, DM are useful to discuss privately with other people (one or many) and you don't want to flood a channel.\n\n### Sending files\n\nYes, you can send files (< 1 GB) in public channels and in direct messages. See this [how to guide](https://slack.com/intl/en-ca/help/articles/201330736-Add-files-to-Slack) for help.\n\n# References\n\nThe Slack section was adapted from a resource by BrainHackMTL and the Center for Scientific Collaboration and Community Engagement ([CSCCE](https://www.cscce.org/)) under a [CC BY 4.0 license](https://creativecommons.org/licenses/by/4.0/): [10.5281/zenodo.3763730](http://dx.doi.org/10.5281/zenodo.3763730).\n\nLicensed under a [CC BY 4.0 license.](https://creativecommons.org/licenses/by/4.0/)\n"
  },
  {
    "path": "book/website/community-handbook/communication-channels/slack-welcome-guide.md",
    "content": "![Alt: Two people, one woman with a long orange shirt and one guy with a blue shirt and a tie, and a large Welcome! sign at the back](https://i.imgur.com/NXOPPc4.jpg)\n\n# Welcome to *The Turing Way* Slack!\n\n**Not a member of our Slack workspace? You can join using the [this link](https://join.slack.com/t/theturingway/shared_invite/zt-2v7euwuo7-BYstHdKuTNd1ce0puDtBxA)**\n\nSlack is one of our core communication channels within the *The Turing Way* community. It is a space where folks ask questions, learn about each other's work, and get involved with *The Turing Way* and other projects. While it is not the *only* communication channel used by the community, it is a popular platform, increasingly used by remote teams around the world.\n\n*Here is a short guide to the default slack channels (meaning, you've already been added to them when you joined this space!)*:\n* [#announcements](https://theturingway.slack.com/archives/C014ZE7SKK3): Ping you about recurring community calls and community events (feel free to mute!)\n* [#ask-away](https://theturingway.slack.com/archives/C01ESKR7WN4): Use this channel to ask any question you might have - general or specific, and we'll make sure to redirect you to the right resources\n* [#community](https://theturingway.slack.com/archives/C014KE9A9LM): Topics related to the community, celebrations, collaborations, and other projects \n* [#general](https://theturingway.slack.com/archives/C014LRAK48J): For general-purpose conversations & questions\n* [#github-related-posts](https://theturingway.slack.com/archives/C014LRL27KL): For chapter ideas and discussions, as well as ongoing projects within the github repository.\n* [#ideas-for-discussion](https://theturingway.slack.com/archives/C014ZE7SL9F): For discussion and ideas, related to the guides & otherwise\n* [#introductions](https://theturingway.slack.com/archives/C014LUYEF5G): Feel free to introduce yourself here!\n* [#random](https://theturingway.slack.com/archives/C01BUPURLAW): For all other questions, comments not related to *The Turing Way*\n* [#welcome](https://theturingway.slack.com/archives/C014ZE49HH7): A bot is installed in this channel, that tags you with a random greeting & flag to represent our global community :sparkles:\n\n*There are also a number of channels dedicated to specific types of work and questions within the community (all are welcome!)*:\n\n* [#accessibility](https://theturingway.slack.com/archives/C01E654A42E): Join for discussions around accessibility practices within the community, and the upcoming work of a new working group\n* [#environmental-sustainability](https://theturingway.slack.com/archives/C04RCMAEPUZ): Join for discussions about environmental sustainability, co-hosted with the Environmental Data Science Book.\n* [#translation](https://theturingway.slack.com/archives/C01E17C1K35): Join to learn about all things translation & localisation, as well as ongoing meetings and projects within the team\n* [#infrastructure](https://theturingway.slack.com/archives/C01EUGMQSNP): Learn more about project architecture, and get involved with technical infrastructure aspects of the project\n* [#reviewers-editors-wg](https://theturingway.slack.com/archives/C043N2KSVND): Learn more about how to review & edit ongoing writing projects within *The Turing Way*\n* [#trainers-mentors-wg](https://theturingway.slack.com/archives/C0425F98E5U): Help to review ongoing promotion materials, and learn how how you can mentor other community members\n* [#user-experience](https://theturingway.slack.com/archives/C052J9UCGMP): Join the ongoing efforts around user experience and design within the community.\n\n*You might also be interested in joining the following channels*:\n* [#en-español](https://theturingway.slack.com/archives/C01DY1F5R53): Para hispanohablantes en la comunidad\n* [#events](https://theturingway.slack.com/archives/C017WM4QD24): for upcoming events in the open science network\n* [#jobs-and-opportunities](https://theturingway.slack.com/archives/C02SNNW40BZ): for jobs, workshops, and other related opportunities\n* [#reading-recommendations](https://theturingway.slack.com/archives/C0256MW3HDW): For reading recommendations from community members\n* [#research-data-management](https://theturingway.slack.com/archives/C01FATFLDPA): For folks with an interest in research data management skills, practices, and tools.\n\n*We also have Slack channels dedicated to each guide*:\n* [#guide-for-collaboration](https://theturingway.slack.com/archives/C01LUTU8FPD)\n* [#guide-for-communication](https://theturingway.slack.com/archives/C01M7APDG9X)\n* [#guide-for-ethics](https://theturingway.slack.com/archives/C01CP215WF4)\n* [#guide-for-project-design](https://theturingway.slack.com/archives/C01M7B1T95F)\n* [#guide-for-reproducibility](https://theturingway.slack.com/archives/C023KPNR2N4)\n\nIf there are any other channels you'd like to see in the workspace, or ones that we use that you don't see listed here – please feel free to correct this page by making an issue or pull request on Github.\n\n## Best Practices for using Slack\n\nAs with all of our communication channels, *The Turing Way* slack abides by our [Code of Conduct](https://book.the-turing-way.org/community-handbook/coc.html).\n\nWe are in the process of developing platform-specific guidelines for Slack and other community platforms. While these are being developed, here are a few general guidelines to get you started:\n\n* **Images**: Use alt text to describe images, diagrams, or other visuals ([Learn more about how to do this in this tutorial.](https://slack.com/intl/en-gb/resources/using-slack/how-to-boost-accessibility-in-slack&utm_medium=promo)). Don't forget to add important information like context in your description!\n* **Links**: If you are inserting a link into a message, limit the number of embedded links within a message. Avoid embedding links within replies to messages when possible, as links posted within threads are not readable for screen readers.\n* **Emojis**: Limit the use of emojis that break up narrative flows of information where possible (such as emojis listed between works). Remember that not all people are able to access the emoji reactions option within Slack, and use written affirmations as well!\n* **Bandwidth**: In order to make sure that Slack is accessible in low-bandwidth environments for the community, avoid posting data-intensive content like videos directly into the channels. Instead, prioritise hosting the content on other platforms (such as YouTube), and sharing the link.\n* **Openness**: Remember that not everyone in the *The Turing Way* community is in the Slack workspace – or on every social media channel. Where possible – especially when discussing chapter ideas and other collaborations – create issues and discussions on the Github repository or post across social media channels, in order to ensure the widest reach and participation possible.\n\nIn general, we encourage an approach to Slack that is as accessible as possible, for as many people as possible. Please practice kindness when you communicate with others, and be mindful of cultural, linguistic, disability, and individual differences that may affect how people communicate online. \n\nIs there anything we are missing? Please reach out to the Research Community Manager Anne Lee Steele on Slack or by email at asteele@turing.ac.uk, or to any members of the core team listed in {ref}`fw-governance-roles`.\n\n## Getting started with The Turing Way\n\n* :books: If you want to dive right in to editing the book, check out a Pull Request or Issue on the [Github repository](https://github.com/alan-turing-institute/the-turing-way). Use the tags to navigate through the issues and pull requests. Ones tagged `good first issue` or `good first PR` are a great place to start.\n\n## Don't know where to start?\n\n* Join us at an upcoming Onboarding Call - hosted every 2 months!\n* Feel free to send me (Anne Lee Steele) a message on Slack or email at asteele@turing.ac.uk if you have any questions or don’t know where to start. I’m the Community Manager (but just one of many leaders in this community), and here to help! \n* Join us at a [Collaboration Cafe](https://hackmd.io/\\@turingway/collaboration-cafe), which happen on a bi-monthly basis on Wednesdays to meet more members of the community, and learn more about the project.\n"
  },
  {
    "path": "book/website/community-handbook/communication-channels.md",
    "content": "(ch-communication-platforms)=\n# Communication Platforms\n\nIn _The Turing Way_, our [GitHub organisation](https://github.com/the-turing-way) serve as the primary source of information.\nThe main [project repository](https://github.com/the-turing-way/the-turing-way) hosts book chapters and project management documentation and resources.\n\nIn addition the project delivery team makes use of various communication platforms to facilitate effective information dissemination within and beyond the engaged community.\n\nGiven the diverse range of formal and informal projects managed by both the project delivery team and community members, the communication within _The Turing Way_ community can be broadly categorised as synchronous and asynchronous.\n\n## GitHub for Synchronous and Asynchronous Communications\n\n[GitHub Issue](https://github.com/the-turing-way/the-turing-way/issues) and [Github discussions](https://github.com/the-turing-way/the-turing-way/discussions) \nserve as a dynamic space where updates, queries, and discussions happen. \nThe GitHub 'discussions' feature, although not as frequently used by community members as the issues and Pull Requests, allows the project delivery team to share information related to specific topics, maintaining transparency among community members.\nThese avenues ensure that even individuals not actively participating in a conversation can stay informed about ongoing developments and contribute where they can. \nContributors can respond in real-time, but the system is mainly used to accommodate varying time zones, allowing participants to engage at their convenience.\n\nTo streamline communication, issues that seek input or require voting are labelled appropriately, such as [`community`](https://github.com/the-turing-way/the-turing-way/labels/community), when a certain discussion requires community input.\nWhen soliciting feedback, adding clear titles, mentioning the right people and indicating timelines help improve the engagement.\nThese issues can be crossposted on other communication channels to boost their visibility.\n\nSome examples of when issues and discussions can be used for communication purposes are the following:\n- Inviting community inputs, ideas and feedback: Issue #2811 about [Using/supporting open infrastructure - suggested alternatives to currently used tools](https://github.com/the-turing-way/the-turing-way/issues/2811)\n- Keeping a record of an ongoing project: Discussion #3081 about [Technical Improvements to enhance the usability of _The Turing Way_ Book (GSoC 2023)](https://github.com/the-turing-way/the-turing-way/discussions/3081)\n\nTo indicate the specific nature of the issue/discussion, we also use words such as `[TALK]`, `[INVITATION]` and `[FEEDBACK NEEDED]` (in square brackets) before writing the full title.\n\n## Synchronous Communications\n\nWe use the Slack and social media platforms to engage with our collaborators and community members synchronously.\n\n### Slack Workspace\n\n_The Turing Way_ Slack Workspace (theturingway.slack.com) is one of our core communication channels. \nThis platform enables instant messaging, fostering quick exchanges and real-time collaborations among team members.\nIt is a space where folks ask questions, learn about each other’s work, and get involved with _The Turing Way_ and other projects. \nWhile it is not the only communication channel used by the community, it is a popular platform, increasingly used by remote teams around the world.\n\nYou can join the workspace using the [joining invitation](https://theturingway.slack.com/join/shared_invite/zt-fn608gvb-h_ZSpoA29cCdUwR~TIqpBw#/shared-invite/email).\n\n### Social media channels\n\nIn expanding our reach beyond project-specific communication channels, _The Turing Way_ project delivery team uses social media platforms to connect with a wider audience and share project updates broadly.\n\n- **Twitter (\\@turingway):** Used since 2020, our Twitter presence has played an important role in getting the community engaged in real-time with updates and announcements from the project. Follow [\\@turingway](https://twitter.com/turingway).\n- **Fosstodon (\\@turingway):** Since 2023, we have been using [Fosstodon](https://fosstodon.org/\\@turingway), a platform for open science practitioners in our community.\n- **LinkedIn Page:** Since late 2023, we have been testing and expanding our presence on [LinkedIn](https://www.linkedin.com/company/the-turing-way) among professional networks.\n\nThese social media platforms complement our primary communication channels, providing additional avenues (often requiring manual cross-posting) for community engagement and outreach.\n\n## Asynchronous Communications\n\nIn addition to our synchronous communication channels, we leverage various platforms for archiving, sharing, and preserving project-related outputs within _The Turing Way_ community, which serve as asynchronous communication channels.\n\n### Monthly Newsletters\n\nAsynchronous communication is facilitated through {ref}`monthly newsletters<ch-newsletters>`, offering updates on the project's progress, achievements, and upcoming events. \nThese newsletters provide a digestible format for community members to stay informed at their own pace, offering a snapshot of recent developments within _The Turing Way_.\n\n### Zenodo Community Page\n\n_The Turing Way_ community page on [Zenodo](https://zenodo.org/communities/the-turing-way) is the main platform to archive and preserve project-related outputs, including slide decks, reports, datasets (such as the entire GitHub repository and illustrations), and publications. \nThis platform provides persistent identifiers (DOI) to keep stable and citable records, enhancing accessibility and longevity.\n\n### GitHub Repositories\n\nCentral to our information storage and sharing, our [GitHub repositories](https://github.com/the-turing-way) serve as the primary hub for project-related documents, resources, and collaborative efforts, offering transparency and collaboration for both synchronous and asynchronous communication.\n\nSince our transition from a single repository to a GitHub organisation, we are moving towards community-maintained repositories on various projects taking place within the community, including governance work, Working Groups, community events and different kinds of communication outputs.\n\nBy February 2024, following repositories host specific working group communications and meeting notes:\n- [Accessibility](https://github.com/the-turing-way/accessibility-working-group)\n- [Book Dash](https://github.com/the-turing-way/bookdash)\n- [Infrastructure](https://github.com/the-turing-way/infrastructure-working-group)\n- [Translation and Localisation](https://github.com/TWTranslation)\n- [_The Turing Way_ Community Manager and Project Manager Repo](https://github.com/the-turing-way/2024-rcm-rpm-tasks)\n\n### _The Turing Way_ Book Chapters\n\nThe book chapters themselves serve as a form of asynchronous communication, providing an extensive range of practices documented for reuse by others. \nCommunity members can refer to these chapters at their convenience for onboarding, reference and self-paced learning.\nThese ultimately serve as an important pathway for the community members to identify where they would like to get involved.\n\n_The Turing Way_ community members document the practices they use within the project and our community activities, which are shared in the {ref}`Community Handbook<ch>`.\nTemplates and resources are shared to help with future community-building efforts within and beyond _The Turing Way_.\n\nIn the subchapters of this chapter, we compile the processes and practices guiding communication across different platforms. \nBy doing so, we provide a reference point for community members to identify the right channels they would like to follow and other projects looking to establish effective communication strategies within their own communities. \n\nFeel free to edit and update these resources, or adapt and implement them to suit the unique needs of your community/projects.\n"
  },
  {
    "path": "book/website/community-handbook/community-calls/calendar.md",
    "content": "(ch-community-calls-calendar)=\n# Community calendar\n\nCommunity calls are added to our [calendar](https://calendar.the-turing-way.org).\n\n(calendar-embed)=\n:::{iframe} https://calendar.google.com/calendar/embed?src=theturingway%40gmail.com\n:title: The Turing Way community calendar hosted on Google calendar.\n:width: 800\n:::\n\nYou can view the calendar online at [`calendar.the-turing-way.org`](https://calendar.the-turing-way.org).\nYou can also download the calendar as an [ics file](https://ics.the-turing-way.org) to subscribe in your calendar app.\n"
  },
  {
    "path": "book/website/community-handbook/community-calls/community-calls-collabcafe.md",
    "content": "(ch-community-calls-collabcafe)=\n# Online Collaboration Cafe\n\n```{figure} ../../../figures/collaboration-cafe.*\n---\nheight: 500px\nname: collaboration-cafe\nalt: Cartoon-like sketch in a green, teal, and orange colour scheme, with three main elements. First, in the centre of the image is a large maple leaf, where it's interior has been sectioned into four panels. Each panel has an individual contributing to a collaboration cafe. All individuals are facing each other, by looking diagonally towards the center of where all four panels join. The individuals are (in the top left) holding a physical copy of a document, (in the bottom left) holding a mug, (in the bottom right) holding their hand up and raising their index finger, gesturing to bring something up. The maple leaf also has a green banner below reading \"Collaboration Cafe\". Secondly, there is an oval element, connected, via a continuous line, to the top right portion of the maple leaf. In this oval element, 5 individuals are sitting on a leaf-shaped table, in discussion. Lastly, there is a second oval element, connected via a continuous line, to the top left portion of the maple leaf. This oval has someone overlooking their laptop, which has a video call on the screen, with one person in the video call being enlarged and two others also being part of the call\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n_The Turing Way_ Collaboration Cafes (or 'Cafés' with an accent) are virtual co-working space.\nThe schedule will be updated periodically on our [Community Calendar](#ch-community-calls-calendar) as per the community requirement.\n\nWe host these calls online using [Zoom](https://www.zoom.us/) where we make use of the [breakout rooms](#ch-coworking-collabcafe-breakout) feature to allow small groups to use the time as best fits them.\nOne or two members from the core team are always available on the call to support anyone wanting to learn more about collaborating on GitHub, getting a virtual tour of our GitHub repository or the book, and helping you to make your first pull request (PR).\n\n## Attending an online Collaboration Cafe\n\nThough scheduled for 2 hours, we understand that for many interested participants, it might be impossible to commit to the entire 2 hours on one or multiple occasions, therefore, you are welcome to join for as long as your schedule allows.\n\nIf the current schedule of the online Collaboration Cafe is not suitable for your time zone, you are welcome to host a separate collaboration cafe for your community/time zone.\nPlease open a new issue (see [this example](https://github.com/the-turing-way/the-turing-way/issues/684)) or reach out to _The Turing Way_ team members for details.\nContinue reading for information on hosting these calls.\n\n### Inviting people to an online Collaboration Cafe\n\nNew attendees are welcome to join the Collaboration Cafe, and it is a space where many may encounter _The Turing Way_ project for the first time.\nExisting _The Turing Way_ community members may invite their colleagues to join them in a breakout session, called the Pomodoro session in _The Turing Way_ community, to discuss a topic of shared interest or co-work together.\n\nIt is important that anyone joining a Collaboration Cafe has an interest in _The Turing Way_ and learning with and feeding back into the community.\nIf a meeting is on a topic or for a purpose completely separate from \"reproducible, ethical and collaborative data science\", it may not be the best fit for a Collaboration Cafe.\n\nWhen inviting new people, please forward the Zoom call for the meeting and the shared document with introduction text like:\n\nCollaboration Cafes are The Turing Way's regular online collaboration and coworking calls where community members work on contributions to the project, discuss shared interests, or learn about how to get involved.\nAll of our calls adhere to our code of conduct.\nPlease take a moment to read this [here](#ch-coc).\n\n### Resources used for the call\n\nHere are the resources we use for these calls:\n\n1. Shared notes by [Framapad](https://framapad.org/): You can access these notes online at [annuel2.framapad.org/p/ttw-collaboration-cafe](https://annuel2.framapad.org/p/ttw-collaboration-cafe) and can take notes together with others on the call.\n2. Online call by [Zoom](https://www.zoom.us/): The Zoom link is provided in the Framapad before the call, and members can click to join the call by opening the Zoom window on the web or by using the Zoom app that should be installed locally ([available for free](https://zoom.us/download)).\n3. An online Pomodoro clock on [Cuckoo.team](https://cuckoo.team/collabcafe): During the call, the clock is set for Pomodoro work intervals that can be live-tracked by everyone through their browsers.\n4. Video recordings from some of the earlier calls are available on [our YouTube channel](https://www.youtube.com/channel/UCPDxZv5BMzAw0mPobCbMNuA).\n\nWe coordinate our tasks on the shared Framapad and/or _The Turing Way_ GitHub repository, where we can work collaboratively or independently while working on older GitHub issues/PRs, creating new issues/PRs, taking notes as comments on the GitHub repository or working on a branch locally.\n\n## Format of the call\n\nWe have a template for the {ref}`Collaboration Cafes<ch-template-coworking-collabcafe>`, which is updated on the shared notes for each call.\n\n**Bonus**\n\nYou can watch this video to see Kirstie and Malvika plan the structure and format of Collaboration Café.\n\n::: {iframe} https://www.youtube.com/embed/XUw5kpypeo8\n:width: 100%\n:::\n\n\n### Schedule\n\nOur schedule has evolved since 2019 to account for the different ways in which people work within the community. \nInstead of the \"enforced\" closing of breakout rooms after each Pomodoro session, which was sometimes perceived as disruptive to ongoing conversations or planning sessions, we keep the breakout rooms open for two consecutive Pomodoro sessions. \n\n_The Turing Way_ community has adhered to a cadence of un-enforced and enforced breaks since 2023, using the following schedule: \n\n| Time | Activity |\n| ---- | -------- |\n| 10 mins | Introductions and Needs for Rooms |\n| 20 mins | 🍅 1st Pomodoro session |\n| 5 mins | ☕️ Break - **not enforced** |\n| 20 mins | 🍅 2nd Pomodoro session |\n| 10 mins | ☕️ Break - **enforced: 1hr mark** |\n| 20 mins | 🍅 3rd Pomodoro session |\n| 5 mins | ☕️ Break - **not enforced** |\n| 20 mins | 🍅 4th Pomodoro session |\n| 5 mins | 👋 Wrap up: celebrations, reflections and future directions |\n| 5 mins | 👋 Close |\n\n### Chairing an online Collaboration Cafe\n\n#### Before the Call\n\n- Facilitators of the call, update the shared document ([Framapad](https://annuel2.framapad.org/p/ttw-collaboration-cafe)) before the event using the following steps:\n  - Update the date for the upcoming call\n  - Move the notes from the previous call below the working area and archive them on the `governance` repository\n  - Update an icebreaker question\n  - Share the notes on Slack and on X announcing the event\n\n**Want to see how we run these calls?**\n\nWe have posted a few videos from our Collaboration Cafés on YouTube.\nWatch the video to see how Kirstie hosted the calls when it was first launched.\n\n::: {iframe} https://www.youtube.com/embed/I0z7OEbBzes\n:width: 100%\n:::\n\n#### During the Call\n- Use the notes during the call to share information as you chair the call\n- Make sure that you share the Code of Conduct link and use the shared Cuckoo (or other web-based clocks)\n- Create breakout rooms for people before starting the Pomodoro\n- As the Pomodoro ends, close the rooms, ask for any feedback, and call for a 5 minute break\n- Continue the repeated session for 2-3 Pomodoros, leaving the last 15-30 minutes for discussion on what people worked on\n- Close the call thank everyone, and archive the notes for the next call\n\n#### After the Call\n\nPlease share any feedback from this call with the Community Manager of *The Turing Way*, specifically, if you have any feedback, concerns or ideas for future calls.\nYou are encouraged to create a Pull Request to suggest improvements to this chapter that can help future attendees and chairs of the Collaboration Café.\n\n#### Beginning\n\nThe call begins with the team members welcoming the participants, sharing the Code of Conduct, reminding them how to participate in the call, and setting the stage for quick introductions by everyone.\n\n#### Breaks\n\nWe take short breaks after each Pomodoro to discuss what we are working on, ask questions that might help you in your next Pomodoro session, share any errors or progress, and celebrate each other's successes.\n\nWe use the last 30 minutes for themed discussion, collaborative troubleshooting, or idea exchange for the project and community.\n\nThe welcome, introductions, breaks, and open discussion will all happen in the main room.\n\n#### Pomodoro sessions\n\nPomodoro sessions can happen either in the main Zoom room in silence or in [breakout rooms](#ch-coworking-collabcafe-breakout).\nWe won't record the Pomodoro parts of the Collaboration Cafe or conversations in the breakout rooms.\nYou don't need to know in advance what you're going to do in those Pomodoro sessions!\nThere will always be someone who can help you develop a goal, or allocate a task that you can do in a couple of rounds of 20 minutes.\n\n#### If joining this call later\n\nDuring a typical Pomodoro session, attendees are sent to breakout rooms based on the topic they are working on.\nIf you join later, you will be able to check the remaining time in the ongoing Pomodoro by opening the shared clock in your browser (link should be provided in the shared notes).\nYou can use that Pomodoro session to sign up, read notes from other attendees in the shared document, and explore what you would like to work on during the next Pomodoro session.\n\nIf you know in advance what time you will join the coworking call, you can let the host know before the call or leave a note in the shared document.\n\n#### Recording this call\n\nWe may record the call for the part that involves open discussion so that others who can't attend the call can learn from the conversations we have during the Collaboration Cafes.\nFor this part, you do not have to speak or have your video on if you prefer not to be in the video.\nThe videos will be uploaded to _The Turing Way_ YouTube channel: [https://www.youtube.com/channel/UCPDxZv5BMzAw0mPobCbMNuA](https://www.youtube.com/channel/UCPDxZv5BMzAw0mPobCbMNuA).\n\n### Sign-up and icebreaker\n\nIf you're interested in joining the next Collaboration Cafe, please let the organisers know by adding your name to the **Sign Up** section of the HackMD notes page.\nAdding your name is helpful for the organisers so they can prepare for the call.\nBut don't worry if you don't sign up in advance.\nIt's ok to join at any time for as long as you'd like.\n\nIn addition to your names, we will encourage everyone to add a short response to an icebreaker question, that will help us all learn something personal about all the different people on the call.\n\nHere are a few example questions (so you know what to expect):\n\n* What was your biggest achievement this week?\n* when was the last time you saw a rainbow?\n* what are you most excited about this year?\n* what is your favourite flavour in cake/ice cream?\n\n*Do you have another interesting question to ask others?*\n*[Get in touch](https://github.com/the-turing-way/the-turing-way#get-in-touch) and let us know!*\n*We love creative suggestions!*\n\nHere's an example from the second Collaboration Cafe in September 2019:\n\n> *Name + biggest achievement from this week + emoji that best explain your day*\n> *(Remember that this is a public document. You can use a pseudonym if you'd prefer.)*\n>\n> * Kirstie Whitaker + got a structure written out for an article that had been super hard to get started on! + 🤦‍♀️ (because I got these times mixed up - whoops!)\n> * Malvika Sharan + Coming back from holiday, ready for exciting work :D + :grimacing:\n\nAs you can see, there's a reminder in the notes that they are in a public document.\nIt's totally fine for you to add as much or as little information as you feel comfortable sharing.\n\n### Conversation starters\n\nIn the **Conversation Starters** section of the HackMD notes, we encourage everyone to advertise their events or give an update from their community.\n\nThese don't have to be Turing Way \"branded\"!\n**We want to know about all the cool things you're working on.** ✨\n\n### Good first contributions\n\nWe want the Collaboration Cafes to be a place that welcomes new and old members to _The Turing Way_ community.\n\nIn brainstorming these events, we imagined that some people may want to add new material that they've created before to the book, others may want to finish a contribution that they've started, and still others might want to learn new skills including _how_ to contribute to _The Turing Way_.\nThese are **all** great reasons to join us!\n\nWe'll always have someone on the team available to help you brainstorm your first contribution, and answer any questions about how to incorporate your work.\n\nGood first contributions might include:\n\n* Finding a typo in the book and/or repository and fixing it.\n* Looking for duplicated information in the book and opening an issue to discuss how it can be combined.\n* Finding an old issue or PR and try to summarize the discussion so it is easy to decide on the next step.\n* Adding your personal experience of reproducible research in the always open google form: [https://goo.gl/forms/akFqZEIy2kxAjfZW2](https://goo.gl/forms/akFqZEIy2kxAjfZW2).\n\n(ch-coworking-collabcafe-breakout)=\n### Breakout rooms\n\nZoom allows groups of collaborators to chat in one \"main room\" altogether, or to split up - within the same call - and talk with each other in smaller [\"breakout rooms\"](https://support.zoom.us/hc/en-us/articles/206476093-Getting-Started-with-Breakout-Rooms).\n\nDuring the online Collaboration Cafe sessions, we'll use the breakout rooms to allow people to talk about multiple different topics in parallel during the Pomodoro sessions.\n\nYou'll see a breakout section in the shared notes:\n\n> **Breakout-rooms-Topic-proposals**\n>\n> *If you have an idea for a topic you'd like to discuss in a breakout room, please add it below and put your name next to it.*\n> *If you like one of the topics that are already suggested, please add your name next to that one.*\n> *Teamwork makes the dream work.*\n> *For more information about breakout rooms see [the description on The Turing Way](#ch-coworking-collabcafe-breakout).*\n\nFor each session, you can propose a conversation to have in a breakout room or add your name to join a suggestion that is already on the list.\n\nYou don't have to add your name in advance (although you're welcome to) and you don't have to stay in the breakout room you've put your name next to.\n\nBreakout room conversation topics might include:\n\n* GitHub new user or refresher questions (and answers)\n* Finding a good first issue\n* Reading and giving feedback on a chapter with the original author\n* Reading and giving feedback on a chapter with a new reader\n* Brainstorming _where_ your topics could best fit into _The Turing Way_\n* Bug squashing - removing barriers (technical and otherwise)\n\nThe person chairing the call will put you into the specific breakout rooms for the Pomodoro sessions and then bring you back into the main room for the 5-minute breaks and the broader conversation at the end of the Collaboration Cafe.\n"
  },
  {
    "path": "book/website/community-handbook/community-calls/community-calls-forums.md",
    "content": "(ch-community-calls-forums)=\n# Community Forums\n\nCommunity Forums are our public-facing calls to share updates from across different levels of governance in _The Turing Way_.\nModelled off a political town hall event, these online sessions are an opportunity to better understand activities across the project and how decisions are made. \nOur aim is to leverage the expertise across our community in reviewing our processes and recommend improvements. \nThese calls are a mix of celebration, feedback, and opportunities to build connections with other organisations and initiatives around the world.\nCommunity Forums are also used for getting new or returning community members informed, and actively involve them in discussing governance processes within _The Turing Way_.\n\nCurrently, these calls are hosted in English and recorded for use by participants. \nThese calls also involve live discussion, screen-sharing, and other interactive activities that may be internet bandwidth-intensive.\n\n## Format of call\n\nThe current format of the call is as follows, and will likely evolve as the community needs to evolve alongside them.\n\n## Archived notes and resources\n\nCollaborative notes, capturing feedback and highlights are archived on the [`governance` GitHub repository](https://github.com/the-turing-way/governance/blob/main/community-forum/README.md).\nSlides are published on Zenodo and linked to the repository.\n"
  },
  {
    "path": "book/website/community-handbook/community-calls/community-calls-motivation.md",
    "content": "(ch-community-calls-motivation)=\n# Motivations, Background, and Techniques for Coworking Calls\n\n## Motivation and background\n\nWhen _The Turing Way_ started with around 10 members located in the United Kingdom, they could work in real-time and often together in the same location.\nThey shared ideas, helped each other out, got huge amounts of writing, editing and reviewing done, and had lots of fun interacting with each other.\n\nTo help the community of contributors grow beyond the core team, the in-person Book Dash (a shorter version of [book sprints](https://www.booksprints.net/)) were hosted to offer interested participants a similar collaborative environment with an advantage to connect with each other informally.\nHowever, not everyone can join such in-person events.\nThese only work for people who can take 1-2 full days from their job-related and personal responsibilities to attend the event.\nMoreover, they take a lot of time and effort in organisation and are expensive to run, especially if we want to host them frequently to allow more and more participants to experience the joy of working together.\n\nThis is where the practice of online coworking is extremely valuable for _The Turing Way_ as a community project.\n\nThe motivations behind hosting these online calls for _The Turing Way_ community are the following:\n\n1. Onboard members who are new to the project by providing a real-time orientation\n2. Build personal connections between members of the community\n3. Support contributors as they edit, review, design and write content for the book\n4. Create a sense of accountability and ownership for the goals our members want to accomplish in the project\n5. Celebrate the progress of _The Turing Way_ and collaboratively build consensus on the next steps and future directions.\n\nWe aim to create a safe space for shared experience, connection, support and collaboration for the distributed community of _The Turing Way_.\n\nIf you want to attend these calls but don't know what to work on, don't worry!\n_The Turing Way_ core team members will be on the call and point you to some starting points in the project and other ongoing efforts where you can make a difference.\n\n## Techniques\n\nWe offer two types of coworking calls: 1-hour short calls every week to work on ongoing projects in the community, and 2-hour long bimonthly Collaboration Cafes that offer a mix of community discussion and quiet working slots.\nWe encourage our members to attend for as long during these designated hours as their schedule allows, even if they can't be present during the entire call.\n\nThese calls use a combination of two techniques:\n1. Shut up & Write method\n2. Pomodoro Interval Technique\n\n### Shut up & Write\n\nThe [Shut up & Write!](https://shutupwrite.com/) are *local writing meetups where you get your writing done*.\nTheir [method](https://shutupwrite.com/method) divides the writing process into eight steps: ideation, structuring, drafting, editing, restructuring and revising, polishing, publishing, and promoting.\nThey encourage their participants to identify what they want to write and where they are in this eight-step process.\nOnce they identify their starting point and commit to getting through the next steps by practicing consistency *steadily to “The End”*.\n\nThey explain that the Shut up & Write! events provide two things:\n\n**1. Accountability & Habit Formation:**\n\nA new habit becomes a part of our routine when we commit to doing them consistently on a specific day, time, and location.\nBased on this principle, Shut up & Write events allow participants to yield successful outcomes for their writing assignments by making the commitment to attend the writing event each week at the same time for 1 hour.\n\n**2. Social Motivation & Support:**\n\nThe *sense of belonging* can increase performance and engagement in tasks.\nIn a survey conducted on 2000 participants from different sectors, high belonging was linked to a whopping 56% increase in job performance {cite:ps}`HBR2019Belonging`.\nAlong the same line, Shut Up & Write events provide a sense of community where attendees feel supported and motivated by everyone else writing around them.\n\nThey create a cycle of 3 experiences: \"habit building and progress\", \"social support and accountability\" and \"great writing experience\", which keep people engaged, feel committed and accomplish what they set out to do.\n\n### Pomodoro Technique\n\nThe [Pomodoro Technique](https://en.wikipedia.org/wiki/Pomodoro_Technique) uses a timer to break down work into smaller intervals usually of 25 minutes called \"Pomodoros\", separated by short breaks of 5 minutes.\nLike the previous technique, the Pomodoro Technique allows planning, tracking, recording, processing and visualizing the task at hand.\n\n> Pomodoro, from the Italian word for 'tomato', after the tomato-shaped kitchen timer that Francesco Cirillo used as a university student. {cite:ps}`Lifehack2020pomodoro`\n\nThe goal of this technique is to avoid procrastinating and get things done with the help of the following workflow:\n- identify the task\n- set the Pomodoro timer (25 minutes long)\n- work on the task until the timer rings\n- take a 5 minute break\n- identify what would you work on next\n- restart the timer and repeat the workflow\n\nThe original method recommends putting a checkmark on a piece of paper to count the number of Pomodoros and suggests taking a longer break of 15-30 minutes after four Pomodoros.\nThe longer breaks can be used for the following tasks:\n- Reflect on the work that you could get done in the last Pomodoros\n- Reflect on what you learned and what you would do differently going forward\n- Identify the next set of tasks or the next steps in the project you are working on\n\nIn the next subchapters, we explain our coworking call formats where we combine these two techniques to host the biweekly Collaboration Cafes and weekly coworking calls for our community members.\n"
  },
  {
    "path": "book/website/community-handbook/community-calls/community-calls-working-groups.md",
    "content": "(ch-community-calls-working-groups)=\n# Working Group and Team Meetings\n\nWorking Groups self-organise meetings on regular basis and at their own discretion.\nThe cadence (whether monthly or bi-weekly) is up to the discretion of the group.\nMany of the working groups also utilise the Collaboration Cafe as a space to organise and cowork on different tasks.\n\n## Upcoming meetings\n\nYou can see future working group meetings, and joining details, in the [community calendar](https://calendar.the-turing-way.org).\nYou can download the calendar as an [ics file](https://ics.the-turing-way.org) to subscript in your calendar app.\n\n:::{embed} #calendar-embed\n:::\n"
  },
  {
    "path": "book/website/community-handbook/community-calls.md",
    "content": "(ch-community-calls)=\n# Community Calls\n\n_The Turing Way_ community is distributed around the world.\nTo bring the community together, _The Turing Way_ has a variety of different community calls organised throughout the year.\nThese calls may vary from collaboration and working calls to organisational meetings, to public share-outs.\nDue to the international nature of the project, these calls are generally organised online using a platform such as Zoom.\n\nOn each page of this subchapter, you can learn more about each type of community call.\n\nIt is important to note that not all of our community calls fit neatly into one category over another.\nSome may mix practices and purposes (for example coworking as well as celebrations), while others may have a specific purpose (such as decision-making). \nAll are meant to demonstrate our principles of being an open and transparent community.\n\nBecause of their scope and size, the [](#ch-bookdash) and [Fireside Chat series](#ch-fireside-chat) are documented separately.\nHowever, those calls overlap with many of the principles and practices shared in this community call chapter.\n\n## Joining Community Calls in Low-Bandwidth Environments\n\nWe understand that accessing online community calls can be challenging for individuals in low-bandwidth environments.\n\nHere are some tips and alternatives for joining our calls:\n\n- **Using Zoom App:** If you're experiencing low bandwidth on your computer (which could be due to high usage by multiple devices, and/or slow network speeds), turn off your camera, ask the host to ask others to turn off their cameras (especially when you are speaking) or consider joining the call using the Zoom mobile app on your smartphone.\nThe app may provide better connectivity and audio quality.\n- **Calling In:** Zoom allows participants to join calls via phone call, which can be a viable option for those with limited internet access.\nCheck the meeting details for dial-in numbers and access codes.\n- **Reducing Video Quality:** If video is not essential for your participation, consider disabling your video feed during the call to conserve bandwidth.\nYou can still actively engage in discussions via audio and text chat.\n\nFor more information on how to join Zoom calls see [the zoom support documentation](https://support.zoom.com/hc/en/article?id=zm_kb&sysparm_article=KB0060732).\n\nWe are committed to ensuring that our community calls are accessible to all members.\nIf you have any specific accessibility needs or suggestions, please reach out to us so we can accommodate them.\n\nYou can read more information on our access-related practices as a community in the [Community Handbook](#ch-accessibility).\n"
  },
  {
    "path": "book/website/community-handbook/community-handbook.md",
    "content": "(ch)=\n# Community Handbook\n\n***This is a community handbook that discusses aspects of The Turing Way project that one can use for participating in this community.***\n\n_The Turing Way_ is a community-led book project that involves diverse perspectives of researchers, funders, educators, learners and various stakeholders from around the world.\n\nThe Community Handbook part of this book aims to provide information about the project, ways of working, and other aspects that can make community participation equitable for our members.\n\nWe are incredibly grateful to our community members who are the readers, co-authors, contributors, collaborators, maintainers, helper and supporters.\n\nThank you for joining the incredible journey of _The Turing Way_!\n\n```{figure} ../../figures/community.*\n---\nheight: 400px\nname: community\nalt: A garden full of folks working on different parts of the garden. Someone is welcoming others, someone is teaching the basics, someone is writing best practices and someone is helping this community grow.\n---\n*The Turing Way* community illustrated as a garden. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n## Wondering where to start?\n\nPlease follow [](#ch-contributing) and [](#ch-coc) to participate in and contribute to _The Turing Way_.\n\nRead the {ref}`fw-community` for details about community and community roles.\n\nFind information about the members involved in the governance of _The Turing Way_, including the project delivery team in {ref}`fw-governance-roles`.\nAn overview of how they collaborate across the different levels of governance in the {ref}`fw-ways-of-working` documentation.\n\nFor any questions or concerns, please contact the {ref}`project delivery team<fw-governance-roles>`.\n"
  },
  {
    "path": "book/website/community-handbook/contributing-chapters/contributing-templates.md",
    "content": "(ch-contributing-templates)=\n# Templates\n\nIn the `book` [directory](https://github.com/the-turing-way/the-turing-way/tree/main/book) of the _The Turing Way's_ Github repository, you will find a `templates` [sub-directory](https://github.com/the-turing-way/the-turing-way/tree/main/book/templates) that contains templates for writing chapters and case studies.\nPlease use them to guide and structure your contributions to _The Turing Way_.\n\n(ch-contributing-templates-chapters)=\n## Chapters\n\nChapters are _the_ building blocks of _The Turing Way_ book and each Guide in _The Turing Way_ spans several chapters that all explore topics under the Guide's overall theme.\n\nChapters, themselves, contain _sub-chapters_ that delve deeper into the chapter's topic, a _Checklist_ section that itemises action points for readers to take based on the key concepts from the chapter, and a _Resources_ section that points readers to other resources where they can investigate the chapter's topic further.\nIn addition, a chapter may contain a _Personal Stories_ sub-chapter that studies how an individual practices the chapter's topic in their work.\n\nThe [chapter template](https://github.com/the-turing-way/the-turing-way/tree/main/book/templates/chapter-template) is a great resource for designing and planning a new chapter.\nIt contains useful recommendations to structure your content and help you think about _what_ to write.\n\nIn addition, if you wish to revise an existing chapter instead, the chapter template remains a good point of reference to identify what sections to include or what a typical chapter in _The Turing Way_ should contain.\n\n(ch-contributing-templates-casestudies)=\n## Case Studies\n\nIn each Guide in _The Turing Way_, you will find a case studies chapter that contains a collection of case studies that each investigate how key concepts from the Guide relate to specific subjects.\nThese serve as relatable, real-world examples that help readers gain a deeper understanding of the concepts, tools, and practices introduced in the Guide.\n\nLike the chapter template, the [case studies template](https://github.com/the-turing-way/the-turing-way/tree/main/book/templates/case-study-template) is a useful resource for writing and revising case studies in _The Turing Way_.\nPlease structure your case study contributions as per the template's recommendations that includes prompts to help you think about _what_ to write, as well as _how_ to write it.\n"
  },
  {
    "path": "book/website/community-handbook/contributing-chapters/contributing-workflow.md",
    "content": "(ch-contributing-workflow)=\n# Contribution Workflow\n\nWhether you are writing new content or reviewing existing content, contributing to _The Turing Way_ generally encompasses the steps discussed in this section.\nYou may refer to the recommendations here to ensure that you have adequately prepared your contribution for review.\nPlease note that the order of these recommendations is not strict and we encourage you to follow the approach that suits you best.\n\n(ch-contributing-workflow-template)=\n## Select a template\n\nOnce you have decided on the type of content you want to contribute to _The Turing Way_, use the relevant [template](https://github.com/the-turing-way/the-turing-way/tree/main/book/templates) to prepare your contribution.\n\n```{note}\nPlease note that we welcome new template contributions.\nIf the chapter or case study templates do not suit your needs, please open a Pull Request with suggestions for improving them.\nIf you want to contribute content for which there is no corresponding template, you are also encouraged to create the missing template and add it to the template collection.\n```\n\n(ch-contributing-workflow-location)=\n## Place new files and folders in appropriate locations\n\n_The Turing Way_'s Github repository follows an overall file structure where Guides are folders and chapters are sub-folders within them.\nSimilarly, case studies are located inside a `case-studies` sub-folder within the Guide folders.\nAll folders are located inside the [`book/website`](https://github.com/the-turing-way/the-turing-way/tree/main/book/website) directory.\n\nWhen writing new content, ensure that the new files and folders you create are placed appropriately to preserve _The Turing Way's_ file structure.\n\nFor example, the [Version Control](https://book.the-turing-way.org/reproducible-research/vcs.html) chapter in the Guide for Reproducible Research is placed as follows:\n\n````{admonition} Adding new files and folders\n:class: dropdown\n```\nbook\\website\n│\n└───reproducible-research <---- (folder for the Guide to Reproducible Research)\n│   │   reproducible-research.md <---- (Guide's landing page)\n│   │   vcs.md <---- (landing page for the Version Control chapter)\n|   |   new-chapter <---- (landing page for a new chapter)\n│   │\n│   └───vcs (chapter folder)\n│   |   │   vcs-workflow.md\n|   |   |   vcs-git.md\n|   |   |   vcs-git-commit.md\n|   |   |   ...\n|   |   |   vcs-personal-stories.md\n│   |   │   vcs-checklist.md\n│   |   │   vcs-resources.md\n│   |\n|   |\n|   └───new-chapter (new chapter folder)\n|   |   |   ...\n|    \n└───project-design <---- (folder for the Guide for Project Design)\n    │   project-design.md\n    │   ...\n```\n````\n\nNew chapters in the Guide for Reproducible Research should be added like `new-chapter` in the example above.\n\n(ch-contributing-workflow-naming)=\n## Name files/folders appropriately\n\nPlease follow _The Turing Way's_ conventions for naming files.\nWith proper file names, other contributors can easily identify the purpose and location of your files and add to or improve them if necessary.\n\n(ch-contributing-workflow-guidelines)=\n## Follow the style and consistency guidelines\n\nAs you write your chapter, keep _The Turing Way's_ [style](https://book.the-turing-way.org/community-handbook/style.html) and [consistency](https://book.the-turing-way.org/community-handbook/consistency.html) recommendations in mind.\nThis ensures that your new content is accessible, and fits the overall style, structure, and formatting of the book.\n\n(ch-contributing-workflow-toc)=\n## Add your new files to the book's table of contents\n\nThe book-wide table of contents lives in the `myst.yml` [file](https://github.com/the-turing-way/the-turing-way/blob/main/book/website/myst.yml).\nThis file structures _The Turing Way_ and defines the order in which chapters appear.\nYour chapter's files should be added to the `myst.yml` as appropriate.\n\nFor example, because the [Statistical Methods Manuscript](https://book.the-turing-way.org/reproducible-research/case-studies/statistical-methods-manuscript.html) case study belongs to the Guide for Reproducible Research, it was added to the table of contents as follows:\n\n````{admonition} Updating the book-wide table of contents\n:class: dropdown\n```\n- file: reproducible-research/reproducible-research\n  sections:\n  ...\n  - title: Case Studies\n    file: reproducible-research/case-studies\n    sections:\n    - title: A Statistical Methods Manuscript\n      file: reproducible-research/case-studies/statistical-methods-manuscript\n```\n\n````\n\n(ch-contributing-workflow-referencing)=\n## Reference external sources appropriately\n\nEnsure external sources are properly referenced and included in _The Turing Way's_ centralised BibTeX file as recommended in the [style guide](https://book.the-turing-way.org/community-handbook/style/style-citing.html).\n\n(ch-contributing-workflow-glossary)=\n## Update the book-wide glossary\n\n_The Turing Way_ maintains a book-wide glossary located in its [Afterword](https://book.the-turing-way.org/afterword/glossary.html).\nWhen writing your chapter, [update the book-wide glossary](https://book.the-turing-way.org/community-handbook/style/style-more-styling.html) with the key terms in your chapter that readers should remember.\n\n(ch-contributing-workflow-crosschecking)=\n## Cross check your Pull Request\n\nThe content of the templates are only meant to guide and structure your writing.\nPlease remove all of the template's placeholders, tips, and suggestions from your chapter before you submit your PR for review.\n"
  },
  {
    "path": "book/website/community-handbook/contributing-chapters.md",
    "content": "(ch-contributing-chapters)=\n# Contributing and Developing Chapters - Templates and Workflow\n\nAs _The Turing Way_ project grows and evolves, we actively welcome and encourage continuous contributions from community members in the form of new chapters and case studies.\nHowever, these new contributions need to be consistent with the overall theme, purpose, format, and style of the book's existing content.\n\nSince _The Turing Way_ is written asynchronously by multiple authors around the world, we created a series of templates to guide different kinds of content development while maintaining a consistent format of the book.\n\n```{figure} ../../figures/that-could-be-a-chapter.*\n---\nheight: 400px\nname: that-could-be-a-chapter\nalt: Illustration by Scriberia for The Turing Way, showing a contributor having an idea for a chapter on The Turing Way. The contributor in question is named Kirstie Whitaker and she is on the left hand side of the illustration saying \"THAT COULD BE A CHAPTER IN THE TURING WAY\". On the right hand side is a sketch of a physical book named \"THE TURING WAY\", with stream of speech bubbles, comments and squares starting from the the left-hand side, going behind Kirsty and entering the spine of the book.\n---\n\"That could be a chapter in The Turing Way!\" - Kirstie Whitaker. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\nThis chapter provides a brief overview of the workflow for writing chapters and case studies for _The Turing Way_.\nWe encourage you to read through and follow the recommendations if you wish to make a contribution.\nAlso, ensure that you read our [Contributor Guidelines](#ch-contributing) in addition to our [style](https://book.the-turing-way.org/community-handbook/style.html) and [consistency](https://book.the-turing-way.org/community-handbook/consistency.html) recommendations as you prepare your contributions.\n"
  },
  {
    "path": "book/website/community-handbook/contributing.md",
    "content": "(ch-contributing)=\n# Contributing to _The Turing Way_\n\n🎉🎈🍰 **Welcome to _The Turing Way_!** 🍰🎈🎉\n\n💫 _We're excited that you're here and want to contribute._ 💫\n\nWe want to ensure that every user and contributor feels welcome, included and supported to participate in _The Turing Way_ community.\nWe hope that the information provided in this document will make it as easy as possible for you to get involved.\n\nWe welcome all contributions to this project via {term}`GitHub` {term}`issues` and {term}`pull requests <pull request>`.\nPlease follow these guidelines to make sure your contributions can be easily integrated into the projects.\nAs you start contributing to _The Turing Way_, don't forget that your ideas are more important than perfect {term}`pull requests <pull request>`. ❤️\n\nIf you have any questions that aren't discussed below, please let us know through one of the many ways to [get in touch](#ch-contributing-join).\n\n## Guiding Principles and Code of Conduct\n\n_The Turing Way_ is a community-led and collaboratively developed project.\nWe, therefore, require that all our members and their contributions **adhere to our [guiding principles](#guiding-principles) and {term}`CoC <Code of Conduct>`**.\nPlease familiarize yourself with [our guiding principles](#guiding-principles), which underpin all our activities, and [our {term}`CoC <Code of Conduct>`](#ch-coc), which lists the expected behaviours and explains reporting and enforcement.\n\n## Inclusivity\n\n_The Turing Way_ aims to be inclusive to people from all walks of life and to all research fields.\nThese intentions must be reflected in the contributions that we make to the project.\n\nIn addition to the {term}`CoC <Code of Conduct>`, we encourage intentional, inclusive actions from contributors to _The Turing Way_.\nFor example, you should:\n\n- Use respectful, gender-neutral and inclusive language.\n- Aim to include perspectives of researchers from different research backgrounds.\n- Make sure that the colour palettes are accessible to colour-blind readers and contributors.\n  See the blog post [Designing Scientific Figures for Colour Blindness](https://www.lewismackenzie.science/updates-1/2017/2/9/designing-scientific-figures-for-colour-blindness) for an example of how somebody improved one of their diagrams, including links to recommended colour palettes and a colour-blindness simulator.\n\n(ch-contributing-join)=\n## Join the Community\n\nThere are many ways to engage with the community!\nWe maintain a set of useful resources and announcements at [the-turing-way.org](https://the-turing-way.org).\n\n### Slack\n\nWe use [Slack](https://slack.the-turing-way.org) for more informal and rapid communication.\nThere are channels for working groups, asking for support, and community discussion.\nThere are also off-topic channels for socialising with other community members.\nSlack is also a good place to receive notifications for upcoming events.\n\n### Calendar\n\nWe keep a record of past and upcoming events on our [calendar](#ch-community-calls-calendar).\nYou can subscribe to the calendar to get notifications.\n\n### Newsletter\n\nYou can sign up to our [newsletter](https://news.the-turing-way.org) to receive monthly project updates.\n\n### GitHub\n\n_The Turing Way_ is developed on [GitHub](https://git.the-turing-way.org).\nWe use {term}`GitHub` [discussions](https://github.com/orgs/the-turing-way/discussions), [issues](https://github.com/the-turing-way/the-turing-way/issues) and [pull requests](https://github.com/the-turing-way/the-turing-way/pulls) to organise ideas and contributions.\n[](#ch-contributing-github) and [](#ch-contributing-pull-request) explain how to use these features.\n\n### Coworking and Real-Time Collaboration\n\n_The Turing Way_ hosts synchronous events using video conferencing for focused collaboration.\nThese include working group meetings, regular [collaboration cafes](#ch-community-calls-collabcafe) and week-long [Book Dash](#ch-bookdash) sprint events.\nThese events can be found on the [community calendar](#ch-community-calls-calendar).\n\n### Email\n\nYou can also contact the Community Management Working Group and the Steering Committee by emailing [theturingway@gmail.com](mailto:theturingway@gmail.com).\n\n(ch-contributing-github)=\n## Collaborating on GitHub\n\n[Git](https://git-scm.com) is a really useful tool for version control.\n[GitHub](https://github.com) sits on top of {term}`Git` and supports collaborative and distributed working.\nIt can be daunting to start using {term}`Git` and {term}`GitHub` if you haven't worked with them in the past.\nWe are here to help if you encounter problems! ❤️\n\nIn order to contribute via {term}`GitHub`, you'll need to create a free account.\nRead the [GitHub documentation](https://help.github.com/articles/signing-up-for-a-new-github-account/) for instructions.\n\n## Issues and Discussions\n\nLook through open items first; join discussions, collaborate on an ongoing tasks and exchange your thoughts with others.\nIf you can't find an open item related to your idea, you can open a new one.\nOpen a discussion if you have a question, or an idea to talk about with the community.\nOpen an {term}`issue <issues>` if you have a specific task like fixing a bug or editing part of the book.\nOur [issue templates](https://github.com/the-turing-way/the-turing-way/issues/new/choose) guide you to add the important information.\n\n### Good First Issues\n\nWe mark {term}`issues` suitable for first contributions with the [good first issue](https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue%20state%3Aopen%20label%3A%22good%20first%20issue%22) label.\n\n### Good First Pull Requests\n\nIf you would like opportunities to {term}`review` others' contributions, we mark good {term}`pull requests <pull request>` for new reviewers with the [good first PR review](https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Aopen+is%3Apr+label%3A%22good+first+PR+review%22) label.\n\n## Writing Markdown\n\n_The Turing Way_ is written almost entirely in {term}`Markdown`.\nIn particular, it is written in a flavour of {term}`Markdown` called [MyST Markdown](https://mystmd.org/).\n\nThe [Style Guide](#ch-style) section of the Community Handbook explains our conventions and recommendations for writing {term}`Markdown`.\nYou can also read the [Authoring section of the MyST Markdown Guide](xref:myst-guide) for the complete set of features and {term}`syntax`.\n\n(ch-contributing-pull-request)=\n## Making Changes with a Pull Request\n\nChanges to the book are always made through {term}`pull requests <pull request>`.\nWe encourage all contributors to work on their own fork of the repository.\nPull requests should be self-contained and as small as possible.\n\nPull request should be marked as drafts until there are ready for {term}`review`.\n\nWe follow the [GitHub flow](https://docs.github.com/en/get-started/using-github/github-flow) workflow:\n\n1. Create a {term}`feature branch` on your fork.\n2. Commit changes.\n3. Open a {term}`pull request` to _The Turing Way_'s repository.\n  - Open a draft {term}`pull request` if the work is still in progress.\n  - Open a {term}`pull request` if you feel the work is ready for {term}`review`.\n  - Complete the {term}`pull request` template to provide information useful for reviewers.\n4. Iterate on changes in response to {term}`continuous integration` and reviewer comments.\n5. Merge when all {term}`issues` are addressed and changes are approved.\n\n### Best Practice\n\nHere are some tips for best practice working with git:\n\n- [Keep your fork up to date](https://help.github.com/articles/syncing-a-fork) with the main repository\n- Try to keep changes focused.\n  If you submit many changes at once it will be much more difficult to {term}`review`.\n- Make small {term}`commits <commit>` often.\n- Write [good {term}`commit` messages](https://chris.beams.io/git-commit).\n- Do not re-write history!\n- Open draft {term}`pull requests <pull request>` soon, to get early feedback.\n\n(ch-contributing-low-effort)=\n### Low Effort or Engagement\n\nAn important part of our community is putting in effort to mentoring contributors, particularly those new to open source.\nHowever, we also need to protect our maintainers' time so they do not get burned out reviewing poor quality contributions or trying to mentor unengaged contributors.\nAnd so, pull requests may be closed if we feel they are unlikely to result in a _tangible improvement_ to the book, or the maintainer investment required would not match the amount of improvement the contribution provides.\n\n:::{important}\nThere is no size threshold for contributions to be accepted.\nFor example, single typo fixes are great contributions.\n:::\n\nFeatures that mark a contribution as low effort include:\n\n- Mostly or entirely superficial changes, such as whitespace changes or replacing words with synonyms.\n- Ignoring book structure and the [style guide](#ch-style), such as not updating the table of contents, or ignoring directory structure.\n- Apparently machine-generated contributions with little or no human effort to review and edit.\n  This may be apparent in comments as:\n    - Irrelevant, unclear text.\n    - Disconnection between {term}`pull request` comments describing changes and actual changes made to the files.\n    - Hallucinated references.\n  And in code/contributions as:\n    - Verbose and vague text.\n    - Long sections of plain text lacking, for example, cross-references, citations, figures, admonitions.\n    - Hallucinated references.\n    - Fixes for non-existent bugs or adding pointless tests.\n\nFeatures that mark a contribution as low engagement include:\n\n- Not responding to reviewers.\n- Ignoring reviewers and instead making unrelated changes.\n- Not providing sufficient information in {term}`issues` or {term}`pull requests <pull request>`.\n  Our {term}`issue <issues>` and {term}`pull request` templates help guide you to the information maintainers and reviewers need.\n\n### Chapter Templates\n\nIf you are writing a new chapter, make use of the [chapter template](https://github.com/the-turing-way/the-turing-way/tree/main/book/templates/chapter-template).\n\n### Local development\n\nYou can build the book locally during development.\nThis is the quickest way to see how you changes affect the book.\nThe steps are described in [](#ch-local-build).\n\n(ch-contributing-recognising)=\n## Recognising Contributions\n\nWe welcome and recognise all kinds of contributions, from fixing small errors, to developing documentation, maintaining the project infrastructure, writing chapters or {term}`reviewing <review>` existing resources.\nThe [community handbook](#ch-acknowledgement) explains how contributions will be acknowledged and recorded in _The Turing Way_.\n\nTo add yourself or someone else as a {term}`contributor <contributors>`, comment on the relevant {term}`issue <issues>` or pull request with the following:\n\n```none\n@all-contributors please add <username> for <contributions>\n```\n\nYou can see the [Emoji Key (Contribution Types Reference)](https://allcontributors.org/docs/en/emoji-key) for a list of valid `<contribution>` types and examples of how we've run this command in [this issue](https://github.com/the-turing-way/the-turing-way/issues/274).\nThe bot will then create a {term}`pull request` to add the contributor and reply with the pull request details.\n\n:::{warning} Please only add one contributor at a time with the bot!\nAdd each contributor in turn, merge the pull request and delete the branch (`all-contributors/add-<username>`) before adding another one.\nOtherwise, the {term}`pull requests <pull request>` will tend to have merge conflicts.\nTherefore, please check the open {term}`pull requests <pull request>` first to make sure there aren't any [open requests from the bot](https://github.com/the-turing-way/the-turing-way/pulls/app%2Fallcontributors) before adding another.\n:::\n\nFinally, don't forget to add yourself to the [list of contributors](#contributors-record)!\n"
  },
  {
    "path": "book/website/community-handbook/fireside-chat/fireside-chat-checklist.md",
    "content": "(ch-fireside-chat-checklist)=\n\n# Fireside Chat Planning Checklist\n\n## Before the Event\n\n- Create a planning issue on GitHub using the [issue template - Fireside Chat Checklist](https://github.com/the-turing-way/the-turing-way/issues/new/choose)\n- A Turing Way team member (Community Manager or Research Project Manager) will create a Zoom link with a waiting room and live transcription enabled. They will also open the call on the day of the event, and give 'co-host rights' to all facilitators to allow them to manage Zoom participants and chats\n- Identify an overarching theme that we share with a different community -- Fireside Chats are intended to promote cross-community collaboration\n- Reach out to a community/project/organisation representative who can co-facilitate the event with a core team member in *The Turing Way*\n- Set up an internal shared document for discussions and notes (use [this Google doc template](https://docs.google.com/document/d/1X_NfRkkH6p47yRgpd6xlw8yrvo6jIsbF_mV0BinjcaQ/edit?usp=sharing))\n- Discuss what the co-hosts might want to highlight at this Fireside Chat (note: these discussions don't necessarily need to identify a solution - but should recognise shared themes, challenges, and spaces for research communities)\n- Identify speakers from the community and invite them\n- Create a private Slack Channel with all speakers and hosts and discuss some overarching topics they are interested in sharing\n- Ask for the bio and image of speakers, and their permission to record the session\n- Schedule the first check-in 4-5 weeks in advance to surface some common themes, helping plan the title and questions\n- Decide on a common date and send a placeholder calendar invitation blocking their calendar for the event (15 mins pre-event tech-check/Green room, 60 minutes live and 15-30 minutes unrecorded discussion with the audience)\n- Create an Eventbrite page in *The Turing Way* account - refer to [this page for an example](https://www.eventbrite.co.uk/e/navigating-growth-and-scale-to-sustain-open-communities-tickets-360328802147) (you can copy and edit)\n- Set up the Etherpad using the template provided here: https://hackmd.io/\\@turingway/fireside-chats (browse [this example](https://pad.sfconservancy.org/p/ttw-fireside-chat-mar2022))\n- Create a paragraph to add to the Eventbrite page along with the speakers' and hosts' bios\n- Create a flyer to share on social media using [this template](https://docs.google.com/presentation/d/1Fx2WcVvGX6dM3z74VDQp_UD8edKp6Phl/edit?usp=sharing&ouid=102682705838770934280&rtpof=true&sd=true)\n- Coordinate on Slack with the speakers to check if they are happy with the announcements and if their info is correct\n- Announce at least 3-4 weeks in advance on Slack, Newsletter, X (formerly Twitter) and in different talks\n- Add information to the Intro HackMD: https://hackmd.io/\\@turingway/demo-intro\n- Hosts will define an agenda and questions for the session - hosts will also allocate some questions for each other to speak on\n- Set another check-in at least 2 weeks in advance to touch base and discuss the plans and questions with the speakers - assign 1-2 questions for each speaker to begin \n- Plan with your cohost who will ask which question, how you will time keep, what channel you will use to ask questions to each other privately, who will monitor the chat (maybe ask someone outside this group to help with note taking and chat monitoring)\n- Update the calendar invitation with Zoom, Etherpad and Eventbrite -- encouraging them to share the Eventbrite page in their network\n- Identify someone from the community who can do the introduction of *The Turing Way*, Code of Conduct (CoC) reminder and pass it to the speakers\n\n## During the session\n\n- Open the Zoom call 15 minutes in advance (keep the waiting room of Zoom enabled)\n- Test if speakers' microphones, cameras and internet work alright - help troubleshoot any tech challenges\n- Let participants in right on time\n- Welcome them and share the Etherpad\n- Remind them that the call will be recorded and that participants can use chat (but may not have the chance to speak during the 60 minutes live)\n- Start recording (on Zoom Cloud) and enable transcription\n- At 5 minutes past, as people join, the person designated to welcome them will introduce *The Turing Way*, CoC, and Etherpad information and Present the topic\n- Hosts then introduce themselves and pose an opening question allowing all speakers including the co-host to share their positions on the topic in ~2 minutes\n- As planned in the agenda, hosts ask the question to the specific speaker, a follow up response from the other speaker is invited\n- Speakers will make sure that everyone on the panel has had an equal chance to discuss and share their opinions\n- Any question from the chat is copied over to the Etherpad, in the last 10 minutes publicly posed questions can be asked\n- The recorded session finishes with a short closing arguments from each speaker and host\n- After the recorded part of the discussion (60-75 minutes), all participants are reminded of the next stage of unrecorded discussion informally with the speakers \n- Hosts close the call after 90 minutes of the session (with 15-30 minutes unrecorded discussion)\n\n## After the session\n\n- Send a thank you email to the speakers (within 1 day)\n- Archive session notes by copying them from Etherpad to the internal planning document\n- Download the video from Zoom and edit the live transcription (proofread for accuracy) -- invite volunteer support as needed\n- Upload the video on *The Turing Way* YouTube - label and annotate well, and add the flyer as the video's front page\n- Share the published videos with the speakers\n- Summarise the session to add to *The Turing Way* -- invite someone from the community who could help with that \n- Promote the video via Slack, Newsletter, X\n- Send a thank you email to the Eventbrite participants sharing the video and inviting any ideas and suggestions for improvement via a standard feedback form\n- Update the book chapter and templates if needed\n- Add speakers to the contributors table on GitHub repo using `all-contributions bot` for presentation\n- Close the planning issue as complete!\n"
  },
  {
    "path": "book/website/community-handbook/fireside-chat/fireside-chat-roles.md",
    "content": "(ch-fireside-chat-roles)=\n\n# Fireside Chat Roles and Responsibilities\n\n(ch-fireside-chat-roles-chair)=\n## Chair - opens the session\n\nOne of *The Turing Way* team members will open the panel, welcoming the audience, introducing *The Turing Way* and the Fireside Chat, and setting the norm (Code of Conduct [CoC], Etherpad, chat, question process). They’ll thank the co-hosts and pass the ‘mic’ to them. \nHere is a [suggested script](https://docs.google.com/document/d/1U41vfHQ0Ks0HfgE8mreaXhrRsfviKBr9Cr3V4DJ644c/edit). \nNorm setting here means, making sure that the opening script includes these details:\n\n* We have CoC that applies to the Fireside Chat. Contact: theturingway@gmail.com, or individually write to *The Turing Way* team.\n* We co-design the session with the co-hosts -- they are also the speaker in the session and we don’t have the moderator vs speaker differentiation.\n* We try to bring different views, perspectives and backgrounds through the speakers. We very much welcome suggestions and nominations for speakers.\n* We use Etherpad to share the format, invite everyone to share their notes and resources and take them back with them after the event.\n* Engaging via chat is optional, if you get distracted by the chats, please disable chat notifications.\n* You can share your question via Etherpad or Zoom chat. Co-hosts will try to address them in the last part of the discussion. If we don’t have the time to address them live, we will make sure to respond via Etherpad.\n\n(ch-fireside-chat-roles-hosts)=\n## Co-hosts - facilitate the session\n\nCo-hosts are invited to co-design the event with one of *The Turing Way* team members. \nThey enable a discussion that does not look for answers or solutions but creates shared opportunities for members from different communities to explore a topic or challenge from their contexts. \nIf there are solutions available, that is great! But that is not the goal. The hope is that these discussions will stimulate ideas for collaboration beyond the Fireside Chats.\n**We have 2 hosts for each session to allow hosts to also address questions, as well as share tasks such as coordinating with the speakers or monitoring questions.**\n\n* During the event, they will help each other keep track of time, and bring back discussions in the direction that they planned for if the discussion deviates. Support each other in taking audience questions. If due to a technical glitch, one of the hosts/speakers drops, they can continue with the planned agenda by themselves, or ask *The Turing Way* team to step in to help as needed.\n* They get to set the tone and direction of the event and suggest/curate speakers for the panel. The suggested number of the complete panel is 5-6. Please consider diverse perspectives and experiences as well as geographical diversity to make sure we have a balanced discussion.\n* Responsibilities of co-hosts: Supported by *The Turing Way* team where needed\n* Co-hosts will represent their organisation/community at this event - and can choose to include their logo in the event’s promotional materials.\n* Share a short blurb about their organisation and a logo to be included on the Eventbrite page.\n* Decide on the title - this will allow us to put together an Eventbrite page. \n* Decide on the speakers - they are invited and details are added on the Eventbrite page and other promotional material.\n* If they already know the suggested speaker, we will appreciate it if they can send the invitation and get confirmation using an [email draft](https://docs.google.com/document/d/12VoVexsXXBx25SnAU4mayPw5un-v936g9Ux61DLjGzo/edit).\n* Host 30 mins calls with the speakers before the event to identify what they would like to speak about.\n* Frame questions based on their discussions with the speakers, and invite speakers to help finalise the questions (using Slack and the planning document).\n* Considering the flow of the discussion, decide on the order of the questions that will be asked.\n  * Each co-host should have equal opportunity to get ‘stage time’.\n  * They should agree on which questions they will pose to guide the discussion.\n  * They should pose 1 question to each speaker who takes a lead on responding. 1-2 follow-up responses can be invited from other speakers.\n    * Make sure that the speakers know in what order they will be speaking, and what questions will be asked.\n    * Coordinate via the Slack channel, and share any notes about the format via the shared document.\n  * They should pose at least one question to each other - either directly, or as a follow-up to the main question.\n* Finalise a question for the closing statement (30-60 seconds take away from each speaker)\n\n(ch-fireside-chat-roles-speakers)=\n## Speakers - guide the discussion\n\nWe host 5-6 speakers in the panel, which includes the facilitators.\nIt is important to note that Fireside Chats don't have the traditional role of facilitators versus speakers.\nFacilitators are invited based on their experience on the topic and they also respond to questions, adding to the discussion from their experiences.\n\n* Once agreed upon, all speakers will be invited to join a private Slack channel to participate in asynchronous planning discussions.\n* They will supply a short bio and image to be shared on the Eventbrite page.\n* They will be invited to attend a call (30) minutes before the event to discuss the topic and help the co-hosts identify what specific area of the topic they will talk about.\n* They will be coordinating with the co-host to finalise the specific question posed to them, and if they would like, they can suggest another question for the other panellists.\n* They will have access to the internal planning documents where they can find all information they need, as well as have opportunities to give feedback by directly collaborating on the Google document.\n* They should check what in addition to questions posed to them, questions they would like to respond to as a follow-up discussion.\n* Join Zoom at least 5-10 minutes before the event to test their system (microphone, camera, internet, and access to the document used for the session).\n* It is important that all speakers get the same ‘stage time’. (If you are the speaker -- please take this space to share your thoughts if you are generally not the one speaking out, and if you generally tend to speak more, please intentionally create space for others to speak).\n* We suggest not engaging in the Zoom chat to avoid getting distracted. The co-hosts will keep track of questions being asked there and share them on the Etherpad, as well as posing them to the panel if time allows.\n* If we can’t cover all the audience questions, we encourage speakers to take 5 minutes after the event to respond on Etherpad.\n* We will upload the video on YouTube, so if there are any parts of the discussion speakers would rather not have shared there, they should let *The Turing Way* team know.\n* If the speakers have any written scripts while preparing for this panel (such as for the opening and closing statements), we request them to share those with *The Turing Way* team to help with their video transcription review work.\n\n(ch-fireside-chat-roles-team)=\n### *The Turing Way* team - supports the event\n\n* They will co-host the event with a project/organisation partner, who they will invite at least 6 weeks in advance. \n* They will invite the co-host to join a private Slack channel and set up the internal planning document to coordinate with them.\n* They will set up an initial planning discussion with them.\nThe planning discussion is crucial to explore the topics and themes they want to speak about and the possible set of speakers they would like to invite from their network.\n* Following this discussion, they will propose a few titles for the event inviting suggestions and nominations for the speakers (via Slack).\n* Based on the previous contacts with the proposed speakers, one of the co-hosts or a *Turing Way* team member will email the speaker sharing initial details and the proposed theme. \nThey will make sure that there is someone delegated to contact the speaker using a template email draft. \n* They will set up planning discussions with the speakers and follow up with them as needed.\n* They will collect bios and images for each speaker, and communicate all details with them as agreed with the co-hosts.\n* They will help set up the Eventbrite, Etherpad, Zoom and Flyer for online sharing -- inviting feedback and edits from the co-hosts and speakers.\n* They will support co-hosts in finalising and communicating the questions and format for the panel.\n* They will send calendar invites for the event with a link for joining the call and share the speaker release form via email before the event.\n* On the day of the event, a team member will open the call, welcome participants and monitor the chat and Etherpad.\n* They will upload the video to YouTube:\n  * *The Turing Way* team will invite volunteers and/or speakers to help review the uploaded transcription for correctness.\n* They will send a “thank you email” to all the attendees via Eventbrite sharing the link to the YouTube video.\n* They will thank the speakers, and make sure that the signed speakers' release forms have been obtained. \n\n(ch-fireside-chat-roles-agenda)=\n## Event agenda\n\nFireside Chats follow this rough agenda:\n\n* The co-hosts will introduce the topic and the panel. The invited co-host will also introduce their organisation/community as co-organisers.\n* Each speaker will give a 2-minute pitch covering their interests, experiences, concerns and insights related to the event's topic.\n* Session hosts will state the question and invite responses from 1-2 speakers (the questions can be agreed upon in advanced) - there might be follow-up question based on the response that we may not have discussed in advance.\n* Hosts will make sure that all speakers have had the chance to speak (by responding to different questions) and express their thoughts or share resources from their work.\n* If time permits, co-hosts will take questions from the audience and speakers will be invited to address them.\nThey will also invite attendees to use Zoom chat and the Etherpad notes to share their thoughts.\n* The session will conclude with a final 1-minute pitch as the take-home message from each speaker.\n\n"
  },
  {
    "path": "book/website/community-handbook/fireside-chat.md",
    "content": "(ch-fireside-chat)=\n# Fireside Chat Series\n\n*The Turing Way* Fireside Chat Series features public events with experts, champions and their projects in reproducibility, open research, ethics, collaboration and other opportunities in data science and research.\n\n*The Turing Way* team collaborates with different international communities to co-design and co-host Fireside Chat events that are informal yet structured discussions on topics of shared interests across research communities. \nSpeakers are invited from diverse backgrounds and perspectives present their views, contextualise the topics in their areas of work and catalyse cross-community collaborations through knowledge sharing.\n\n```{figure} ../../figures/fireside-chat.*\n---\nname: fireside-chat\nalt:  Illustration by Scriberia for The Turing Way, showing a group of contributors having a chat ssitting around a log fire. The logs, which are fueling the fire, are in the cenre of the illustration. Emanating upwards from the logs is the fire and surrounding the flames of the fire are speech bubbles, network graphs, line charts and pie charts. At the top of the flame is a banner reading \"THE\", then the flames spell out \"FIRESIDE\" and finally on the logs is the word \"CHAT\". Moreover, there are 4 contributors sitting around the fire on the bottom of the illustration; they each have speech bubbles attached to the end of a stick, which they are roasting in the fire. The contributor sitting on the left-hand side is sitting in a wheelchair, there are 2 in the middle sitting on a log and a final one on the right-hand side is standing up and walking towards the rest of the group.\n---\nFireside Chat in The Turing Way.\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n## Background\n\n```{admonition} What is a fireside chat?\nA fireside chat is a personal and interactive discussion involving a moderator and guest, allowing an audience to gain insights into the guest’s personal stories and thoughts on various topics. - [Source: Vimeo. (2022)](https://vimeo.com/blog/post/what-is-a-fireside-chat)\n\nThe term is credited to a series of 30 evening radio addresses given by U.S. President Franklin D. Roosevelt between 1933 and 1944.\nThe concept has since evolved from one-way addresses to two-way debates and was popularized by tech startup community events, [...] occasionally even replacing solo keynotes. - [Why and How to Organize Fireside Chats, Slido. (2018)](https://medium.com/@Slidoapp/why-and-how-to-organize-fireside-chats-at-your-event-74ee55e90334)\n\n```\n\n### Fireside Chats in _The Turing Way_\n\nIn *The Turing Way*, we imagine Fireside Chats as conversations among friends and colleagues taking place around a warm inviting fireplace.\nThrough the Fireside Chat series in *The Turing Way*, we want to build an intentional space to gather, facilitate important conversations and establish cross-community collaborations.\n\nDifferent stakeholders in open research and grassroots communities have a shared mission of making scientific knowledge freely available for public access and for the benefit of society. \nHowever, most of these communities operate independently of other initiatives, either lacking the capacity to build meaningful collaboration or competing for limited resources. \nThis often results in scientific outputs that most users can find, but not access, or build upon in their local contexts.\nOpen discussions and spaces for collaborations can contribute to individual benefit, team efforts as well as the overall sustainability of the open science ecosystem {cite}`Sharan2021reimagine`.\n\n*The Turing Way* Fireside Chat series will facilitate discussions on topics of broader interest, create shared spaces for cross-community collaborations and build opportunities for exchanging common experiences and resources. \n\n## Scope\n\nThe Fireside Chat series is hosted online on topics of interest within *The Turing Way* community as well as members across other mission-aligned projects such as Open Life Science, The Carpentries, Open Post Academics, Open Science Community in Saudi Arabia, Wikimedia, Frictionless Data, Talarify in South Africa and MetaDocencia (some of our collaborators so far).\nWe will continue to collaborate with other communities working in participatory, open research and citizen spaces to organise future events on topics that they are working on.\n\nAlthough *The Turing Way* hosts these calls in English, we encourage our collaborative projects to consider hosting a future event in their time zones, in their primary languages and on topics relevant to their local contexts.\n\n### Themes\n\nTitles of past events include \"Project, Community, Reproducible Research: What Exactly is The Turing Way?\", \"Shared Concerns in Open Research Communities\", \"Gaps and opportunities for multilingual data science\", \"Emergent Roles in Research Infrastructure & Technology\" and \"Enabling inclusive research conferencing in the 'post-pandemic era'\".\nYou can revisit previous Fireside Chats via the [YouTube playlist](https://www.youtube.com/playlist?list=PLBxcQEfGu3DmBcSmt9GVfo4wN1KP1y2yl).\n\nSuggestions of topics for the future Fireside chat include:\n1) Hidden labour in open source: How are we changing volunteer culture?\n3) Planning sustainability for our grassroots projects\n4) Cross-community resource exchange: learning from citizen spaces\n5) Harnessing potential for research communication in the 21st century\n6) Challenges for creating open (research) infrastructures\n\n### Frequency and Duration\n\nThese calls are hosted every month on the third or fourth Friday as per the common availability of all speakers.\nThe recommended duration is 60 to 90 minutes which are recorded to post online for people who can't attend these calls in real-time.\nHosts can consider allocating a part of the call for open discussions with participants, however, this part doesn't need to be recorded to allow maximum participation by attendees who may otherwise not engage.\nThe schedule is decided based on the availability of individuals invited as speakers/panellists.\n\n### Resources\n\n- **GitHub checklist for organisers and speakers**: we have a checklist for planning the Fireside Chat as an [issue template](https://github.com/the-turing-way/the-turing-way/issues/new/choose). For each iteration, event hosts will create a new issue to allow other participants to follow along with the planning process.\n- **Eventbrite pages**: Registrations are handled via [*The Turing Way* Eventbrite page](https://www.eventbrite.co.uk/o/the-turing-way-18600928389). The event is free to attend and recordings are shared with all registered participants after the event.\n- **Zoom**: We host Fireside events online using [Zoom](https://zoom.us/) (with live transcription), however, the platform for the participants can change based on the preference of the majority of speakers.\n- **Online promotion**: Announcements are shared on *The Turing Way* [X (formerly Twitter)](https://twitter.com/turingway), [Slack workspace](https://join.slack.com/t/theturingway/shared_invite/zt-2v7euwuo7-BYstHdKuTNd1ce0puDtBxA) and [monthly newsletters](https://buttondown.com/turingway), which are then cross-posted by other communities in their network.\n- **Shared Documents**: We currently use Etherpad by Software Freedom Conservancy to enable shared note-taking during the event. Refer to this for example - https://pad.sfconservancy.org/p/ttw-fireside-chat-mar2022. \n    - **Template** is provided as a subchapter: {ref}`ch-template-fireside-chat`.\n    - **Overview of all Fireside Chats** are currently shared via HackMD: https://hackmd.io/\\@turingway/fireside-chats.\n- **Video Recording**: Video recordings with closed captioning are shared on *The Turing Way* YouTube channel in the [Fireside Chat video playlist](https://www.youtube.com/watch?v=nuNA3Qa8A-k&list=PLBxcQEfGu3DmBcSmt9GVfo4wN1KP1y2yl).\n\n### Participants\n\n- **Co-host**: A community/organisation/project is invited to collaborate and co-host a Fireside Chat with *The Turing Way* team.\nOne of the team members works with the co-host to co-design and plan the event, as well as co-facilitate the discussion during the event. \n- **Speakers**: 3-4 speakers are invited from multiple communities to allow multiple perspectives to be shared. \nSpeakers include the co-hosts as the contributors to the discussion. \nSpeakers are invited several weeks before the event to contribute to the event at the planning phase by sharing questions they hope to discuss during the event.\n- **Open participation**: To enable open collaboration during the event, we facilitate open collaboration via Zoom chat and shared note-taking in Etherpad. Although the event is an informal discussion, we record the session upon the speakers' permission. We do not run interactive sessions to avoid recording anyone who may not have consented to be recorded. Call hosts can plan to allocate part of the event for open discussions that should not be recorded.\n \n*The Turing Way* {ref}`Code of Conduct<ch-coc>` applies to the Fireside Chat participants and all interactions taking place as a part of the event.\n"
  },
  {
    "path": "book/website/community-handbook/github-gardening.md",
    "content": "(ch-gardening)=\n# GitHub Gardening\n\nManaging a open source community and maintaining its infrastructure, like [code repositories](#rr-vcs) and {term}`issue trackers <Issue Tracking>`, takes time an effort.\nIn the free and open source community this work is often called maintenance.\nThis work is difficult and requires strong technical skills as well as excellent interpersonal skills.\nIt can often seem that this work goes unappreciated, but it is critically important for the health of an open source project.\n\nIn _The Turing Way_ we call this work gardening, because that is an analogy for how this kind of activity is about tending to the community, keeping it healthy and helping it grow.\nThis page has [instructions](#ch-gardening-checklists) and guidelines for our gardeners to help them work.\n\n(ch-gardening-principles)=\n## Guiding principles\n\n### Maintain quality\n\nGardening work plays an important role in maintaining the quality of a project.\n[Continuous integration processes](#rr-ci) and [code review](#rr-reviewing) help to ensure the quality of contributions as they are merged.\nHowever, there are many other aspects of the community where gardeners can help.\n\nGardeners should focus on keeping the quality of issues, discussions and pull requests high.\nGardeners shouldn't be afraid to close items or ask for changes.\nGardening work makes items higher quality, which improves the chances they will be seen, have engagement and get completed.\n\n### Be a mentor\n\nGardeners can mentor community members, teaching them new skills and encouraging best practice.\nGardeners should look to share their knowledge and teach others.\nHowever, gardeners shouldn't feel they have to personally fix problems or take on work when they ask for changes.\n\n### Use your knowledge\n\nContributing to a project as a new community member can be intimidating.\nThere is a lot of institutional knowledge that is difficult to learn and share.\nGardeners should use their experience to help contributors.\nFor example, recommending people who would be interested in a pull request or pointing to style conventions in the [](#ch).\n\n(ch-gardening-principles-human)=\n### Be a human\n\nGardeners must remember to be kind to others.\nIf gardeners need to say anything that may be difficult, they should take some time to explain.\nThey should remember to be welcoming; a project can only survive with contributors, and everyone starts as a new contributors.\nGardeners may also find taking this kind of action difficult, and so, we have collected some [example responses fragments](#ch-gardening-example-responses) to help build clear, firm and polite comments.\n\n## GitHub item usage\n\nTo help keep items findable, we use GitHub features for different purposes.\n\n(ch-gardening-items-issues)=\n### Issues\n\nAn issue is a task, for example a bug to fix or a feature to add.\nA good issue should,\n\n- be of a reasonable size for one person\n- or, to coordinate large pieces of work, be a list of sub-issues\n- have a clear \"definition of done\"\n\nExamples of bad issues could be,\n\n- Too much work for one person or a single pull request\n- No clear work to be done, a question or a discussion\n\n(ch-gardening-items-pull-requests)=\n### Pull requests\n\nPull requests are proposals to merge one branch into another.\n\nWe encourage people to open pull requests early.\nThis helps make their work visible and get early feedback.\nPull requests should be marked as drafts while they are work in progress.\nThey should be marked as ready for review when the author feels it is ready to be merged.\n\n(ch-gardening-items-discussions)=\n### Discussions\n\nDiscussions are used for conversations which are not necessarily tied to a specific task.\nThey are often broader than issues.\n\nExamples of good discussions are,\n\n- Questions about the project\n- Proposals and new ideas\n- Polling the community\n- Discussing the options before opening an issue\n\n## Gardening stages\n\nThese stages correlate roughly with how _mature_ an item is.\nThey are not law but they are intended to help us understand what stage an item is at and what we should be aiming to do to help contributors at each stage.\n\n### Sowing\n\nSowing ensures new items have the best chance of success.\nIt makes sure items are visible and well defined.\n\n### Fertilising\n\nFertilising helps push in-progress items over the line, so that contributions can be finalised.\nWe help keep contributors engaged and support them to overcome challenges.\n\n### Pruning\n\nPruning manages the end of life for items which have gone {term}`stale <Stale>`.\nThis step keeps the repository clean, closing inactive or completed work while leaving the option for it to be continued in the future.\n\n(ch-gardening-checklists)=\n## Checklists\n\n### Issues\n\n#### Sowing\n\n- [ ] Ensure it is in the correct repository\n    - If not, move to a more appropriate repository\n- [ ] Ensure it is [an issue](#ch-gardening-items-issues)\n    - Move to [a discussion](#ch-gardening-items-discussions) if appropriate\n- [ ] Ensure there is a definition of done\n    - Ask the author to find one if this isn't clear\n    - Move to a discussion if there needs to be a discussion to find one\n    - Close as unfixable if one cannot be found\n- [ ] Assign appropriate labels\n- [ ] Tag (or assign) community members who may be interested or who can help\n\n#### Fertilising\n\n- [ ] Ensure issue is in action\n    - Check who is working on the issue and assign\n- [ ] Understand progress and challenges\n    - Check what support contributors need to fix the issue\n- [ ] Support assignees\n    - Tag community members who can help\n    - Invite to post a Slack message\n    - Invite to collaboration cafe\n\n#### Pruning\n\n- [ ] Handle {term}`stale <Stale>` issues\n    - If there is no stale label, mark as stale and leave a message\n    - If there is a stale label and 30 days have passed, close the issue as stale\n\n### Pull requests\n\n#### Sowing\n\n- [ ] Ensure it has the [correct status](#ch-gardening-items-pull-requests)\n    - Convert to \"Draft\" if it is still work in progress\n    - Convert to \"Ready for review\" if it is ready for final reviews\n- [ ] Assign appropriate labels\n- [ ] Assign or tag potential reviewers\n\n#### Fertilising\n\n- [ ] Check progress with the authors\n    - Ask how close are they to finished\n    - Understand what support they need\n- [ ] Support assignees\n    - Tag community members who can help\n    - Invite to post a Slack message\n    - Invite to collaboration cafe\n    - Arrange for someone to adopt the PR if the author no longer has time\n\n#### Pruning\n\n- [ ] Merge if it is ready, passes tests and has accepted reviews\n- [ ] Close if the pull request is an example of [low quality or low engagement](#ch-contributing-low-effort)\n- [ ] Close if there is no realistic chance of a merge.\n  For example if the authors are not engaged or the branch is very far behind main\n- [ ] If the PR was closed and it was from a branch on the main repo, make sure the branch is deleted, too.\n  It is easier to deal with stale branches at the time the last action was made on them rather than in a future triage session.\n:::{warning}\nClosing a PR from a branch on _The Turing Way_'s repository will delete that branch and could result in loss of the commits.\nClosing a PR will not delete a branch on a fork.\n:::\n\n### Discussions\n\n#### Sowing\n\n- [ ] Ensure it is [a discussion](#ch-gardening-items-discussions)\n- [ ] Ensure there is a clear focus\n    - If it is a question, make sure it is well defined\n    - If it is a discussion, suggestion, poll or similar, make sure the topic is clear\n- [ ] Tag community members who can help\n\n#### Fertilising\n\n- [ ] Check progress\n    - Ask what hasn't been resolved\n- [ ] Support discussions\n    - Tag community members who can help\n    - Suggest advertising in Slack\n    - Invite to collaboration cafe\n\n#### Pruning\n\n- [ ] Close discussions when they have concluded\n    - If the discussion is a Q&A, mark an accepted answer\n- [ ] Close as outdated if it is {term}`stale <Stale>`\n\n(ch-gardening-example-responses)=\n## Writing good comments as a gardener\n\nIn their work, gardeners may have to take actions that might be difficult for others to accept or understand.\nFor example, closing an issue as \"will not fix\" or requesting large changes to a pull request.\nIt is therefore important to be [clear and kind when giving feedback](#ch-gardening-principles-human) to contributors.\n\nHere, we have a basic outline to a comment, with optional, modular fragments that you can include or exclude as appropriate.\nYou _do not_ have to use this template, but we encourage you to use it if it is helpful.\nWe also recommend that you remix the suggestions here in your own voice as it helps to show our personalities and prevent gardeners appearing robotic.\n\nWhen first engaging with someone, it is good to start with a salutation,\n\n- Hi, thanks for opening this PR/issue.\n- Hello, we are exciting you are contributing to The Turing Way!\n\nExplain any issues clearly, and without blame or accusation,\n\n- Your changes do not match the PR or issue description\n- Your changes deviate strongly from our [Style Guide](#ch-style).\n- Your changes are only making superficial additions or changes.\n  Our contribution guidelines mention that all contributions should improve the contents of the book.\n- It looks like a significant portion of your changes are written using generative AI without taking care to review its output.\n- You have added/changed a significant amount of content in the book without any discussion or consultation of community members.\n  Our book is collaboratively written and we encourage you to reach out to the community with such significant changes before adding it to the book.\n\nDescribe any action you are taking,\n\n- I will close this issue as a duplicate.\n- I will close this PR as I think it is unlikely it will be ready to merge in the foreseeable future.\n- I will close this PR as what you are proposing won't improve the book.\n\nAnd, in cases where we can reach a good outcome, leave some guidance and encouragement,\n\n- Please re-request a review from me, or tag me in a comment, once you have made changes.\n- It would be great if you could join a [collaboration café](#ch-community-calls-collabcafe) to talk about this idea.\n"
  },
  {
    "path": "book/website/community-handbook/infrastructure/infrastructure-contributors.md",
    "content": "(ch-infrastructure-contributors)=\n# Publishing Contributors\n\nKeeping track of contributions of all types is important: both code and non-code contributors.\nWithin _The Turing Way_, contributors are kept track of and published in the book's [](#contributors-record).\nThe rationale and guidance for acknowledging contributions are explained in [](#ch-acknowledgement).\n\nThe data for sections of [the contributors record](#contributors-record) are sourced from different places,\n\n:::{embed} tab-contribution-records\n:::\n\nIn this page we describe the infrastructure supporting publishing contributors.\n\n## All Contributors\n\nThe [All Contributors section](#contributors-record-all) displays the same [all contributors](https://allcontributors.org/docs/en/overview) table as [`README.md`](https://github.com/the-turing-way/the-turing-way/blob/main/README.md).\n\nThe information to build this table is contained in [`.all-contributorsrc`](https://github.com/the-turing-way/the-turing-way/blob/main/.all-contributorsrc), the configuration file for all contributors.\nThis JSON file controls the appearance of the table and also specifies where to write the all contributors table in the `\"files\"` list.\nEach time the all contributors bot or CLI is run the table will be written to files in the `\"files\"` list.\n\nThe table is inserted as HTML between the following sets of tags:\n\n```Markdown\n<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->\n<!-- prettier-ignore-start -->\n<!-- markdownlint-disable -->\n```\n\n```Markdown\n<!-- markdownlint-restore -->\n<!-- prettier-ignore-end -->\n\n<!-- ALL-CONTRIBUTORS-LIST:END -->\n```\n\nYou shouldn't need to make changes to the HTML directly.\nFurthermore, it will be overwritten often by the all contributors bot.\nManual changes to the contributors list, such as adding a contributor or regenerating the table, can be made using the [all contributors CLI](https://allcontributors.org/docs/en/cli/usage).\n\n## Translators\n\nThe [translation contributions](#contributors-record-translators) are taken from the Crowdin API.\nThis process is automated in [this workflow](https://github.com/JimMadge/the-turing-way/blob/main/.github/workflows/crowdin-contributors.yml).\nThe workflow, which runs weekly, fetches data from the Crowdin API then updates the tables in both the project's `README.md` and the page in the afterword.\n"
  },
  {
    "path": "book/website/community-handbook/infrastructure/infrastructure-dns.md",
    "content": "(ch-infrastructure-dns)=\n# DNS\n\nDomain Name System (DNS) is how human-readable domains, like `book.the-turing-way.org` get translated to Internet Protocol (IP) addresses that computers use to locate each other.\nYou can think of DNS like a phone book for the internet.\nWithout it, you wouldn't be able to use domain names to find websites or services.\nDNS is configured by creating records, which give instructions on how to handle requests depending on the domain name.\n\nOn the internet, DNS is managed by a series of connect providers.\nGoogle has a DNS service at `8.8.8.8` and `8.8.4.4`.\nCloudflare has a DNS service at `1.1.1.1`.\nDNS servers are connected and propagate records to each other.\nThat means, if you want to host something on your domain you don't have to create records on every DNS server for the public to find it.\n\nIt is very likely that you will use a DNS server run by your internet provider, although you can often change this.\nDNS is not encrypted, so in theory the DNS server you use can see what domains you are requesting.\nHowever, DNS over HTTPS is available and becoming more common.\n\nTo learn more about DNS you can read [Cloudflare's DNS learning documents](https://www.cloudflare.com/learning/dns/what-is-dns/).\n\n(summary-of-records)=\n## Summary of Records\n\nThere are many DNS record types.\nThe following table gives a simple explanation of some of the more common ones.\n\n| Record      | Purpose                                                               |\n| --------    | --------------------------------------------------------------------- |\n| A           | Directs a hostname to an IPv4 address                                 |\n| AAAA        | The same as A but for IPv6                                            |\n| CNAME       | Makes the hostname an alias for another                               |\n| ALIAS/ANAME | Similar to a CNAME record, but can be used at the root domain         |\n| MX          | Points to an email server for the domain                              |\n| TXT         | Arbitrary text, often used to configure SSL or email authentication   |\n| NS          | Delegates DNS to a different nameserver                               |\n\n## Looking at DNS Records\n\nYou can inspect DNS records using the `dig` or `nslookup` commands.\n\nThe `dig` command line can be formatted like\n\n```console\ndig [@DNS-server] [domain] [record-type]\n```\n\nFor example, we can check the A record for `book.the-turing-way.org` using Google's DNS server (`8.8.8.8`) like this\n\n```console\n$ dig @8.8.8.8 book.the-turing-way.org A\n\n; <<>> DiG 9.10.6 <<>> @8.8.8.8 book.the-turing-way.org A\n; (1 server found)\n;; global options: +cmd\n;; Got answer:\n;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 28689\n;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1\n\n;; OPT PSEUDOSECTION:\n; EDNS: version: 0, flags:; udp: 512\n;; QUESTION SECTION:\n;book.the-turing-way.org.       IN      A\n\n;; ANSWER SECTION:\nbook.the-turing-way.org. 300    IN      A       99.83.231.61\nbook.the-turing-way.org. 300    IN      A       75.2.60.5\n\n;; Query time: 16 msec\n;; SERVER: 8.8.8.8#53(8.8.8.8)\n;; WHEN: Tue May 20 11:27:38 BST 2025\n;; MSG SIZE  rcvd: 84\n```\n\nWe can see in the answer section that there are two A records for `book.the-turing-way.org` pointing to two IP addresses where the book is served.\nThis is actually an ALIAS record, but these records resolve to A records when you query them.\nWhat happens if you look for a TXT record at `egg.the-turing-way.org`?\n\n## The Turing Way Records\n\n_The Turing Way's_ DNS records are managed on [NameCheap](https://namecheap.com) by the DNS team, a sub-team of the Infrastructure Working Group.\nHere we describe the records that have been created for _The Turing Way_.\n\nThe records are in the format,\n\n```\ndomain type value\n```\n\nThe domain `@` means the root domain, like `example.com`.\nOtherwise the domain is a subdomain of the root domain.\nFor example `www` would mean `www.example.com`\n\n### ALIAS records\n\nWe use an ALIAS record for _The Turing Way_ book at `book.the-turing-way.org`.\nThis is an alias for the Netlify load balancer, where the book is currently hosted.\nIf the book is moved to another hosting provider the record can be updated to point to the new host.\nThat way, the book will _always_ be accessible at `book.the-turing-way.org` no matter how or where it is hosted.\n\n```\nbook ALIAS apex-loadbalancer.netlify.com.\n```\n\nWe also redirect the root domain, `the-turing-way.org`, to the Netlify load balancer.\nThis is a feature of ALIAS records that wouldn't be possible with CNAME.\nWe do this so that we can [redirect subdomains](#ch-infrastructure-redirects).\n\n```\n@ ALIAS apex-loadbalancer.netlify.com.\n```\n\n### CNAME records\n\nAs explained in [](#summary-of-records) CNAME records are aliases.\nWe use a CNAME record for `www` so that looking up `www.the-turing-way.org` or `www.book.the-turing-way.org` will be treated the same as the non-www domains.\n`www.` has no special meaning and is just a normal subdomain.\nHowever, historically it was commonly used for websites (as opposed to other services like FTP) so many will still expect a site to be served there.\n\n```\nwww CNAME the-turing-way.org.\nwww.book CNAME book.the-turing-way.org.\n```\n\nWe also have a set of CNAME records to route \"helper\" subdomains to our webserver so we can [redirect them to community resources](#ch-infrastructure-redirects-helpers).\n\n```\ngit CNAME the-turing-way.org.\nnews CNAME the-turing-way.org.\nslack CNAME the-turing-way.org.\ncalendar CNAME the-turing-way.org.\nics CNAME the-turing-way.org.\n```\n\n### CAA\n\nSecure Socket Layer (SSL) is a protocol for secure communication.\nSSL is used to encrypt HTTP traffic in HTTPS.\nAlmost every time you access a website in a browser will be over HTTPS.\nIt is important to encrypt web traffic, particularly when you are sending or receiving secret information such as user credentials, bank details and personal data.\n\nA [Certification Authority Authorisation (CAA) record](https://letsencrypt.org/docs/caa/) specifies who can issue a valid SSL certificate for a domain.\nThis is security best practice as it helps verify that the SSL certificate is valid and was issued by the correct authority.\nCurrently, [Netlify manages SSL certificates](https://docs.netlify.com/domains-https/https-ssl/#netlify-managed-certificates) for the book.\nThe certificates are issued by Let's Encrypt.\n\nThe following CAA record is configured,\n\n```\nbook CAA 0 issue \"letsencrypt.org\"\n```\n\nThis record only allows Let's Encrypt to issue certificates.\nNetlify also suggests [specifying their `accounturi` in the record](https://docs.netlify.com/domains-https/https-ssl/#netlify-managed-certificates) which would further ensure that only Netlify can request new certificates from Let's Encrypt.\nHowever, NameCheap doesn't seem to allow this in CAA records.\n"
  },
  {
    "path": "book/website/community-handbook/infrastructure/infrastructure-external-link-check.md",
    "content": "# External Link Checking\n\nThe external link check tests if links between pages of _The Turing Way_ and other websites work.\nThis is a useful tool which helps us ensure that when users click a link they are brought to a working page.\n\nThere is a [GitHub workflow](https://github.com/the-turing-way/the-turing-way/blob/HEAD/.github/workflows/external_link_check.yml) which regularly tests external links in the book and posts a list of broken links to an [issue](https://github.com/the-turing-way/the-turing-way/issues/3171).\nThis section explains the process which updates the broken links issue.\n\n## Workflow\n\nThe [workflow](https://github.com/the-turing-way/the-turing-way/blob/main/.github/workflows/external_link_check.yml) is dispatched according to a [schedule](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule).\nThe schedule uses the [POSIX cron](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule) format to specify when the workflow should run.\nThe workflow is currently configured to run once per week at midnight on Monday in the UTC+00:00 time zone.\n\n[Lychee](https://lychee.cli.rs/) is used to check the book's external links _after_ building the book.\nIf the book fails to build then the workflow will also fail.\nThe workflow uses cached results from previous runs to avoid the need to recheck all links every time the check is run.\nHowever, this does mean that the results may not be up to date.\n\nThe GitHub runner's GitHub token is specified as an environment variable for the Lychee action.\nThis prevents false negatives due to rate limiting when testing links to GitHub.\n\nThe [Lychee configuration](https://github.com/the-turing-way/the-turing-way/blob/main/lychee.toml) in the root of the repository controls the behaviour of Lychee.\nThe configuration is a TOML file.\nAn example configuration file with explanations can be found in [the Lychee documentation](https://lychee.cli.rs/#/usage/config).\n\nThe configuration file can be used to improve the usefulness of the broken links issue.\nIn particular, it is possible to exclude domains which are known to produce false negatives using the [`--exclude` argument](https://lychee.cli.rs/#/recipes/filtering-links) on the command line or the equivalent `exclude` key in the [configuration file](https://lychee.cli.rs/#/usage/config).\n\nLychee produces a report of broken links and saves this to a {term}`Markdown` file.\nThe workflow then concatenates this report with an [issue header](https://github.com/the-turing-way/the-turing-way/blob/main/.github/workflows/resources/external_link_check_header.md) and updates the broken links issue.\n\n## Issue\n\nThe broken links issue is [#3171](https://github.com/the-turing-way/the-turing-way/issues/3171).\nThe information in the [issue header](https://github.com/the-turing-way/the-turing-way/blob/main/.github/workflows/resources/external_link_check_header.md) aims to explain the output and provide some guidance for fixing broken links.\nThat information is not duplicated here.\nImprovements to the explanation or guidance should be made to the [issue header](https://github.com/the-turing-way/the-turing-way/blob/main/.github/workflows/resources/external_link_check_header.md) as any changes made to the issue will be overwritten when it is next updated.\n\n## Running the Checks Locally\n\nYou can run the external link checking process locally using Lychee _after_ [building the book](#ch-local-build).\nFrom the repository root,\n\n```console\nlychee --config ./lychee.toml book/website/_build/html/**/*.html\n```\n"
  },
  {
    "path": "book/website/community-handbook/infrastructure/infrastructure-pathways.md",
    "content": "(ch-infrastructure-pathways)=\n# Pathways\n\nThe [](#ch-pathways) presents multiple curated sets of chapters to allow role and theme-based entry points to the book.\nThis feature allows multiple entry points that people can select to find information most relevant to them.\n\n## Pathways package\n\nThe pathways feature is supported by the [myst-curations plugin](https://github.com/the-turing-way/myst-curation).\nThis Javascript plugin processes curation directives in the book.\n"
  },
  {
    "path": "book/website/community-handbook/infrastructure/infrastructure-plugins.md",
    "content": "(ch-infrastructure-plugins)=\n# MyST Plugins\n\n## MyST Curation\n\nThis plugin is explained in [it's own chapter](#ch-infrastructure-pathways).\n\n## Profile\n\nThis [plugin](https://github.com/the-turing-way/the-turing-way/blob/main/book/website/plugins/profile.mjs) adds roles and directives for creating contributor profiles for [](#contributors-record).\n"
  },
  {
    "path": "book/website/community-handbook/infrastructure/infrastructure-redirects.md",
    "content": "(ch-infrastructure-redirects)=\n# Redirects\n\nWhen a web server receives a request, it may return a [redirection response](https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Status#redirection_messages) (with a 30X return code).\nWe use redirects for a few purposes,\n\n- to prevent link rot by forwarding old paths to new locations\n- to redirect specific addresses to external domains\n\nRedirecting at the web server rather than with [DNS](#ch-infrastructure-dns) has some advantages,\n\n- We have more control over the format of the redirect, for example we can use wildcards and substitution.\n- Redirection will happen _after_ TLS, so HTTPS can be used.\n- Clients will receive HTTP codes indicating that they were redirected, and whether the redirect should be considered permanent.\n- The redirects are described in plain text in the book repository, making them more visible and easier to contribute to.\n\n## Netlify redirects\n\nRedirects for _The Turing Way_ are defined in [nelify.toml](https://github.com/the-turing-way/the-turing-way/blob/main/netlify.toml) in the array of tables `[[redirects]]`.\nThe [TOML syntax](https://toml.io/en/v1.0.0#array-of-tables) means that a new `[[redirects]]` item is added for each redirect we want to define.\nThe syntax for Netlify redirects [is described in their documentation](https://docs.netlify.com/routing/redirects/#syntax-for-the-netlify-configuration-file), where the [available options](https://docs.netlify.com/routing/redirects/redirect-options) are also explained.\n\n:::{important}\nFor Netlify to redirect a domain, that domain **must**,\n\n1. Resolve to the Netlify load balancer (which means [DNS](#ch-infrastructure-dns) must be configured to point that domain to Netlify)\n2. The [domain must be assigned to the site](https://docs.netlify.com/routing/redirects/redirect-options/#domain-level-redirects).\n   After your primary domain, these extra domains should be added as [aliases](https://docs.netlify.com/domains/configure-domains/add-a-domain-alias/).\n   This is so that Netlify knows that _we_ want to handle the requests to these domains reaching their load balancer, as they host many site with their own rules.\n3. For HTTPS support, the TLS certificate must include the subdomain to redirect.\n   You can view which domains the cert covers in the Netlify dashboard, and renew the cert if you have added new subdomains.\n:::\n\n## Our redirects\n\n### www\n\nWe have a [wildcard](https://docs.netlify.com/routing/redirects/redirect-options/#splats), permanent redirect for `https://www.book.the-turing-way.org/*` which returns the preferred url, without www.\n\n### Old book domain\n\nWe have a [wildcard](https://docs.netlify.com/routing/redirects/redirect-options/#splats), permanent redirect for the old book domain at `https://the-turing-way.netlify.app/*` which returns the new url.\n\n### Start page\n\nIn our [DNS](#ch-infrastructure-dns) configuration we have pointed `the-turing-way.org` and `www.the-turing-way.org` to the Netlify load balancer. We redirect these to `the-turing-way.start.page` as a landing page for _The Turing Way_ project as a whole.\n\n### Moved chapters\n\nMost of the redirects are for chapters or pages which have moved internally.\nThe full list of these isn't described here but can be seen in [nelify.toml](https://github.com/the-turing-way/the-turing-way/blob/main/netlify.toml).\n\n(ch-infrastructure-redirects-helpers)=\n### Helpers\n\nOur helper redirects allow us to have easy to remember and share URLs which we can point to community resources, which may move.\nWe currently have the following helpers,\n\n| Helper URL                                                         | Directs to                                                   |\n| ---                                                                | ---                                                          |\n| [git.the-turing-way.org](https://git.the-turing-way.org)           | Our git repositories                                         |\n| [news.the-turing-way.org](https://news.the-turing-way.org)         | Our newsletters archive                                      |\n| [slack.the-turing-way.org](https://slack.the-turing-way.org)       | An invitation to our Slack workspace                         |\n| [calendar.the-turing-way.org](https://calendar.the-turing-way.org) | Web view of our community calendar                           |\n| [ics.the-turing-way.org](https://ics.the-turing-way.org)           | Calendar file, to subscribe to in your own calendar software |\n"
  },
  {
    "path": "book/website/community-handbook/infrastructure/infrastructure-teams-as-code.md",
    "content": "(ch-infrastructure-teams-as-code)=\n# Teams as Code\n\n_The Turing Way_ uses [GitHub Teams](https://docs.github.com/en/organizations/organizing-members-into-teams/about-teams) to organise its members and manage access/permissions to various repositories, most notably [Working Groups](#subprojects-working-groups).\nHowever, as the community grows and we create more teams and repositories, managing the GitHub Teams will become more difficult and time consuming.\nAlso, a bottleneck will be created if only a small number of community members (for example the GitHub organisation owners or the [Infrastructure Working Group](#subprojects-infra-wg)) have the ability to manage the teams.\nTherefore, a repository has been setup using [infrastructure-as-code principles](https://en.wikipedia.org/wiki/Infrastructure_as_code) specifically targeting teams management: [the-turing-way/teams-as-code#README.md](https://github.com/the-turing-way/teams-as-code/blob/HEAD/README.md).\nThis repository enables each team to manage their membership independently.\n\nIn this repository, YAML files are used to build human-readable definitions of our GitHub Teams, their members, which repositories they have access to, and at what permission level.\nThe workflows in this repository use a tool called [opentofu](https://opentofu.org/) to create and reflect the structure defined by the YAML files in _The Turing Way's_ GitHub organisation.\nTherefore, any additions, changes, or deletions made to the YAML files will be automatically applied to the organisation when the edits have been merged.\nThis will allow easier management and control of teams, their members, and permissions throughout the organisation.\n\nAs well as this ease of management, we have chosen this approach because it will make the teams easier to audit. \nWho made what changes will be captured in the git history of the repository.\nAll of this information is now centralised and transparent in a single place and easy-to-read format.\nThe bottleneck on the [Infrastructure Working Group](#subprojects-infra-wg) and/or GitHub org admins will be removed since those with write access (the teams themselves) will be able to raise, review, and merge their own Pull Requests against this repository.\nWe have implemented a [CODEOWNERS](https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners) file that makes each GitHub team responsible for their own YAML file defining it (or a good enough approximation where necessary).\n\nPlease see the [teams-as-code repository](https://github.com/the-turing-way/teams-as-code) for more information.\n"
  },
  {
    "path": "book/website/community-handbook/infrastructure.md",
    "content": "(ch-infrastructure)=\n# Infrastructure\n\n_The Turing Way_ consists of many parts which need to work together to make sure the book can be built, renders correctly, and is available on the internet.\nThere are processes to build, deploy, and ensure the quality of the book.\nThere is also configuration which may direct those processes or the site.\nWhile infrastructure can be defined in many ways, collectively we call these things infrastructure.\n\nSome examples include:\n\n- Instructions to build the site from the source files, both {ref}`locally<ch-local-build>` and [for deployment](https://github.com/the-turing-way/the-turing-way/blob/main/netlify.toml)\n- {term}`Continuous Integration` tasks to look for problems in the source\n- Redirect rules to help site navigation and avoid `404 Not Found` errors\n- {term}`Hosting` and {term}`DNS`\n\nSome of this is controlled by data in the repository itself.\nFor example, quality control processes to ensure the book will build and help maintain accessibility standards are part of the {ref}`Continuous Integration<rr-ci>` process and described in the [.github/workflows/](https://github.com/the-turing-way/the-turing-way/tree/main/.github/workflows) directory.\n\nSome aspects may not be declared in the repository.\nFor example, hosting is provided by [Netlify](https://www.netlify.com) which holds some of its own configuration.\n\nThis section of the book describes the infrastructure that _The Turing Way_ uses.\nThe aim is to demystify how things work, ensure that the infrastructure is described openly, and to help people contribute to infrastructure.\n"
  },
  {
    "path": "book/website/community-handbook/local-build.md",
    "content": "(ch-local-build)=\n# Build the Book Locally\n\n## Why build locally\n\nIt is useful to preview changes you have been working on as you go on your local machine.\nYou can be confident that changes you have made are accurate and as intended and it will likely be quicker than waiting for a preview to be build from a pull request.\nYou can replicate the build process using [Make](#rr-make) and [Jupyter Book](https://next.jupyterbook.org).\n\n## Prerequisites\n\nWe will be using the command line throughout this guide.\nYou will need to use a terminal to follow.\n\nYou will also need to install Python3.\nYou can check which specific version of Python3 the build uses in [netlify.toml](https://github.com/the-turing-way/the-turing-way/blob/main/netlify.toml).\nHowever, versions close to that version are also likely to work.\n\nOther command line tools you will need are,\n\n- `git`\n- `make`\n\n(step-by-step-guide)=\n## Step-by-step Guide\n\n### Clone The Repository\n\n```console\ngit clone https://github.com/the-turing-way/the-turing-way.git\n```\n\n````{note}\nThe repository is quite large and cloning may take a long time on slower internet connections.\nYou can use [partial clones](https://github.blog/2020-12-21-get-up-to-speed-with-partial-clone-and-shallow-clone).\nSpecifically, focusing on blobless clones, involves utilizing the `--filter=blob:none` option in the git clone command.\n\nBy using `--filter=blob:none`, the initial git clone operation downloads all reachable commits and trees, while blobs (file contents) for commits are only downloaded when performing a git checkout.\n\nHere's the command to create a blobless clone of the book:\n\n```console\ngit clone --filter=blob:none https://github.com/the-turing-way/the-turing-way.git\n```\n````\n\n### Create a Virtual Environment\n\nNavigate into the repository using the command `cd the-turing-way`; the `cd` command means change directory.\nCreate a virtual environment using Python,\n\n```console\npython3 -m venv ./venv\n```\n\nNext, active the virtual environment,\n::::{tab-set}\n:::{tab-item} Unix\n:sync: Unix\n```console\nsource ./venv/bin/activate\n```\n:::\n:::{tab-item} Windows\n:sync: Windows\n```console\nvenv\\Scripts\\activate\n```\n:::\n::::\n\nYour prompt may now start with `(venv)`, for example `(venv) user@host$`.\nUsing the virtual environment means we can install _The Turing Way's_ dependencies without interfering with other packages or libraries you might be using.\nThat will be explained in more depth in [a later section](#recommend).\n\n### Install the Dependencies\n\nThe next steps use a {term}`Makefile`.\nThe Makefile contains instructions to build a set of \"targets\".\nThat way we can easily run the same commands repeatedly, and in different environments, without needing to remember all the parameters.\n\n:::{hint}\nTo see a list of all targets the Makefile contains, run `make help` or simply `make` from the `book` subdirectory.\n:::\n\nIt is easiest to change into the directory containing the Makefile,\n\n```console\ncd book\n```\n\nInstall the build dependencies into your virtual environment,\n\n```console\nmake deps\n```\n\n### Serve the book locally\n\nWhen you serve the book, it will be deployed on a local webserver which updates automatically as you make changes.\nTo serve the book locally run,\n\n```console\nmake serve\n```\n\nOnce the build has succeeded, you can open <http://localhost:3000/> in your browser.\n\n```{tip}\nThe build process takes time so you may have to wait for changes to become visible in your browser.\n```\n\n### Building Previews for Different Branches\n\nThe build process will use the source files from whatever branch you have checked out.\nIf you have just cloned the repository, that will be the `main` branch.\n\nTo build another branch, for example a feature branch you are working on you first switch to that branch,\n\n```console\ngit switch mybranch\n```\n\nIf you are already running `make serve`, you should see the book updating automatically. Otherwise you can run `make serve` again.\n\n(other-targets)=\n## Other Targets\n\n### Export the Book to HTML\n\nYou can build the book, writing the outputs as HTML,\n\n```console\nmake book\n```\n\nThe build process will create a new folder `book/website/_build/html` where all of the HTML files are saved.\nThis is the same command used to prepare the book for deployment to the website.\n\n## Clean Up After a Build\n\nThe build process generates a lot of files.\nClearing these files to force a build from scratch may reveal errors and warnings that wouldn't be raised otherwise.\n\nTo remove the outputs of builds use the `clean` target,\n\n```console\nmake clean\n```\n\n(other-targets:strict)=\n### Strict Build\n\nThe `strict` target is useful for debugging.\nIt will make any warnings raise an error, but also continue the build.\nThat way, all warnings should be presented to you as errors.\nRun the strict build with,\n\n```console\nmake strict\n```\n\n(recommend)=\n## Why We Recommend Using a Virtual Environment\n\nIn the [step-by-step guide](#step-by-step-guide), we used Jupyter Book to build the Turing Way.\nFor this program to work as intended you will need a Python installation and set of dependencies on your machine.\n\nIf you want to use other Python projects, they will also have their own dependencies.\nYou may encounter cases where the dependencies of two packages conflict with each other and it becomes difficult, or impossible, to satisfy both sets of dependencies simultaneously.\n\nUsing virtual environments minimises dependency problems.\nIt allows us to install Python packages and all their dependencies in separate, dedicated directories.\nThat way, packages with incompatible dependencies are not a problem because they each have a independent installations and do not share resources.\n\n```{figure} https://imgs.xkcd.com/comics/python_environment.png\n---\nheight: 487px\nname: python-environment\nalt: >\n  A humorous, black and white flowchart from XKCD depicting the complexity of managing different Python environments on a computer.\n  It shows a tangled web of arrows and lines connecting various versions of Python installed through different methods such as Homebrew, Anaconda, and binaries from Python.org.\n  There are also references to different tools and paths like PIP, PYTHONPATH, and system PATH, that add to the confusion.\n  The paths weave in and out of local folders on a computer.\n  Some of them are noted to be owned by root, making them harder to manage.\n  The illustration is annotated with bemused and perplexed comments about the state of the Python environment, concluding with a comic punchline at the bottom that reads, \"My Python environment has become so degraded that my laptop has been declared a superfund site.\"\n---\nIllustration [from xkcd](https://xkcd.com/1987) describing the complexities of installing different versions of Python on your computer. Used under a [CC-BY-NC 2.5 licence](https://creativecommons.org/licenses/by-nc/2.5/deed.en).\n```\n"
  },
  {
    "path": "book/website/community-handbook/newsletters/newsletters-process.md",
    "content": "# Creating a newsletter\n\nThis document provides an overview of a process we use in _The Turing Way_ for drafting, reviewing and publishing newsletters.\nThough written for _The Turing way_, these steps can be adapted for documenting newsletters for any project.\n\nWe only suggest using these recommendations as guides.\nThese should not be considered as a set of fixed rules or the \"only\" way one should create newsletters.\nAs individual authors, you should allow your personality to show in your newsletter drafts.\nAfter all, these newsletters land in someone's personal mailbox and most likely they know you (or your community).\n\n## Steps for drafting _The Turing Way_ newsletters\n\n### Create a GitHub issue to collect items\n\nCreate a new GitHub issue where throughout the month you and other community members can suggest news items as a comment.\nFor example, in [this issue](https://github.com/the-turing-way/newsletter/issues/29), several members could suggest news items to include in the next newsletter, in this case for March 2025.\nSuch GitHub issues can be published in the current newsletter inviting contributions from readers and community members for the next month.\n\n### Start a draft\n\nThere are several ways to start a draft for a _The Turing Way_ newsletter:\n\n1. Create a new branch of _The Turing Way_ [GitHub repository](https://github.com/the-turing-way/the-turing-way/) within the appropriate directory (explained in the next subchapter on {ref}`newsletter's style guide <ch-newsletters-style>`).\n\nYou can work on this GitHub branch locally or online through a pull request (PR).\nIf working online, please keep the draft mode on for your PR or add \"[WIP]\" (work in progress) in the title.\n\n2. Create the first draft on a shared HackMD when working with others to collaboratively write your draft before you transfer them to a GitHub branch.\n\n### Collect items for the newsletter as bullet points\n\nBased on what we currently publish, collect information from the listed resources for the topics described below (they can be presented in a format agreed with *The Turing Way* staff):\n\n* **Community meetings**: review the [community calendar](https://calendar.google.com/calendar/embed?src=theturingway%40gmail.com&ctz=Europe%2FLondon) for upcoming events such as Collaboration Cafés, book dashes and workshops.\n\n* **News from the community**:\n  - Check Github issue for updates shared by community members to add to newsletter\n  - Check Linkedin for updates on the [official account](https://www.linkedin.com/company/the-turing-way/), tagged posts, and the [#TuringWay Hashtag](https://www.linkedin.com/feed/hashtag/?keywords=TuringWay)\n  - Check Blue Sky for updates on the [official account](https://bsky.app/profile/turingway.bsky.social) and the [#TuringWay Hashtag](https://fosstodon.org/tags/turingway)\n  - Check Mastodon for updates on the [official account](https://fosstodon.org/\\@turingway) and the [#TuringWay Hashtag](https://fosstodon.org/tags/turingway)\n  - See the Github repository for [issues](https://github.com/the-turing-way/the-turing-way/issues) for ongoing discussions, recently [merged PRs](https://github.com/the-turing-way/the-turing-way/pulls?q=is%3Apr+is%3Aclosed+sort%3Aupdated-desc) and new chapters.\n  - You can also ask in the [Slack channel](https://theturingway.slack.com) if someone would like to add something to the newsletter.\nIn this part, also highlight any important milestones in the project that were either established or achieved over the last month.\n\n* **Relevant resources and events for the community**: check social media, Slack and online posts for any recent publication and events from community members, resources for training or opportunities for skill-building or any other materials like blog posts or articles published in the network that could be useful for others.\n\n* **Section recurring Community Events and Calls**: this is the place to edit dates and information related to recurring community calls (such as onboarding calls and community calls), as well as regular calls organised by working groups within the community.\n \n* **Sections for acknowledgements and celebrations of community members**: this is the place to give shout-outs to our members who have given talks, workshops or helped *The Turing Way* in some way, celebrate personal milestones and highlight any relevant announcements from community members. \n  * To identify talks and presentations, please scan *The Turing Way* accounts for GitHub issues, X, Slack and the [Zenodo Community](https://zenodo.org/communities/the-turing-way) page (for DOI).\nSince 2023, *The Turing Way* core team maintains all information about events and activities on their [centralised event page](https://docs.google.com/spreadsheets/d/1C-VZvmFL4PnSBsv_G9ZD3dwjIYLno3NyL7oHvbplnWs/edit#gid=577525947).\n  * This is also a place to share tweets from the community or mention other online interactions such as posts from recent meetings where someone talked about _The Turing Way_.\n\n* **In The Turing Way Orbit**: this section is an addition from 2022, which allows a dedicated section for sharing events, resources and opportunities for jobs, funding, collaboration and more from our collaborators, partners and broader research network.\n\nThe newsletter should provide relevant information about or from contributing and new members acknowledging them openly.\nThere should also be opportunities for folks who have never engaged before, or may not have the capacity to actively engage but still want to stay informed.\nThis can include Tips & Tricks for new contributors, recent conversations in community spaces, new chapters, ideas where support is needed or resources in the project that can make new members learn ways to engage, identify paths to get started as contributors and find relatable contents like impact stories of existing members, contributor's profiles or other community-related aspects.\n\n### Collect images associated with the news item\n\nFollowing the recommendations on {ref}`style guide for community<ch-style>` and {ref}`style guide for newsletters<ch-newsletters-style>` for using images, collect a few images (maximum 2 per section).\nMake sure that these images are available under a free license (like CC-BY), collected with the link of their sources, and named clearly as suggested in the style guide.\n\nFor social media mentions, there is no fixed number of screenshots, but 4-6 posts looks less crowded in the newsletter.\nThey can be edited together in one image (explained in the newsletter's style guide).\n\n### Write about each news item\n\nBased on the bullet points collected for each news item, create 1-2 small paragraphs using the recommendations for the language and format described in the next subchapter.\n\nProvide links when useful, give credit fairly to the community members who might be associated with the news item and end the paragraph with a sentence and link to more information.\n\n### Proofreading your draft\n\nBefore sharing your draft you should do a proofread for grammar and typos.\nAn online app like [Ginger Grammar Checker](https://www.gingersoftware.com/grammarcheck), [Grammarly](https://app.grammarly.com) free version, [GrammarCheck](https://www.grammarcheck.net/editor/) or [Reverso Speller](https://www.reverso.net/spell-checker/english-spelling-grammar/) can help correct any grammatical and spelling errors.\n\nYou should also double-check to make sure that the links mentioned in the draft are not broken.\nYou can use online tools such as the [W3C link checker](https://validator.w3.org/checklink) or the free version of [Dr. Link Check](https://www.drlinkcheck.com/).\n\nIf possible, get your draft reviewed by 1-2 members.\n\n### Updating your draft to the online repository\n\nIf you have drafted your newsletter in a local branch, before creating a PR, please add all the images mentioned in the newsletter to the right location: `the-turing-way/communications/newsletters/images`.\nMore details about using images have been discussed in the next subchapter, {ref}`style guide<ch-newsletters-style>`.\n\nIf you are working on a PR on GitHub, upload all the images and check if they are linked properly.\n\nIf you have created your newsletter draft in a HackMD, then copy-paste the content to create/update your GitHub PR and upload all the linked images.\n\nWhen ready, mark your PR as \"Ready for Review\" and tag a few contributing members, preferably those who have been mentioned in the draft so that they can review and approve your text.\n\n### Review process\n\nThe reviewers for the newsletter can review the text for language, relevance, typos, accuracy (fact-check), appropriateness of the use of images and the overall tone.\n\nReviewers can provide constructive feedback on the newsletter draft, add any missing items that they would like to highlight, suggest appropriate changes and approve the PR when ready for the draft to be published.\n\nAfter the review process, each reviewer's name can be added under the special mentions section by the author to acknowledge their work.\n\n### Publication process\n\nWe are currently using [Buttondown](https://buttondown.email/) to publish our newsletters.\n\nHere are the steps for publishing the newsletter draft online and sending it by email to the subscribed members:\n\n- Convert the {term}`Markdown` content of the newsletter draft to HTML using [browserling.com](https://www.browserling.com/tools/markdown-to-html) by copy-pasting the {term}`Markdown` content to the text box in the web application and pressing \"Convert to HTML button\".\n- If authorised, log in to the TinyLetter account and click the “Write A Newsletter” button.\n- Paste the HTML content of your draft generated by browserling.\n- Make sure that the subject is written in the correct text box.\n- Click “Preview” to see how the rendered version of your message will look.\n- Upload images separately to the TinyLetter platform (the quality of photos significantly degrades if copied automatically).\n- Adjust formatting as needed.\n- Send a preview version to your email or _The Turing Way_ email (theturingway@gmail.com) to check if everything looks OK.\n- Once confirmed for its format and content, the newsletter is sent to the registered members by clicking “Send to all”.\n- The [online newsletters](https://buttondown.email/turingway/) are shareable by link and can be read by non-subscribed members as well.\n\n*(Learn to make your newsletter [here](https://www.sitepoint.com/how-start-a-newsletter-in-minutes-with-tinyletter/).)*\n\n **It's published, now what?**\n\n- Update the index table in the [README.md file](https://github.com/the-turing-way/the-turing-way/blob/main/communications/newsletters/README.md) with the details of the newly published newsletter.\n- Post about the newsletter on social media (Linkedin, Bluesky, and Fosstodon)\n- Send a notification on the relevant [Slack](https://theturingway.slack.com) channels.\n- Do a celebratory dance! (This is mandatory! 💃)\n"
  },
  {
    "path": "book/website/community-handbook/newsletters/newsletters-style.md",
    "content": "(ch-newsletters-style)=\n# Newsletter Style Guide\n\nIn the previous subchapter, we described the process of drafting, reviewing and publishing _The Turing Way_'s monthly newsletters.\n\nIn this document, we have listed some guidelines to maintain consistency across all the newsletters.\n\n- **File format**: Draft the newsletter in {term}`Markdown`.\n- **Filename**: Create a filename with the \"newsletter_serial_MMYYYY.md \" format, where \"serial\" should be replaced by the (numerical) serial number of the newsletter, the month should be replaced by the short name of the month and YYYY with the year as a number.\n- **File location on _The Turing Way_ GitHub Organisation**: The newsletters are currently stored in the `newsletter` repository `https://github.com/the-turing-way/newsletter`.\n    - This location also consists of a \"README.md\" file that has a table for all the published newsletters that are updated after each release.\n    - This location has a folder called \"images\" that centrally holds images and links to the corresponding newsletters.\n- **Dates**: \"DD Month YYYY\" format\n    - use it consistently in the entire document\n    - To reflect a range, use \"from DD to DD Month YYYY\" format.\n    - Even if the sentences have reference to a day as in \"yesterday\", \"today\" or \"tomorrow\", provide the exact date inside parenthesis so that it still makes sense if someone reads a newsletter in the future.\n- **Time**: Use time in [Greenwich Mean Time](https://greenwichmeantime.com/what-is-gmt/) (GMT) or [British Summer Time](https://greenwichmeantime.com/uk/time/british-summer-time/) (BST), followed by a link from [arewemeetingyet.com](https://arewemeetingyet.com/#form) to check the time in relative time zones.\n- **Links**: Use the Markdown formatting for link like this, `[text that needs to be linked](full HTTP link)`.\n    - Provide links wherever useful, for example, [Framapad for Collaboration Café](https://annuel2.framapad.org/p/ttw-collaboration-cafe), [GitHub issue](https://github.com/the-turing-way/the-turing-way/issues), [registration pages](https://www.eventbrite.co.uk/) and [see details](https://github.com/the-turing-way/the-turing-way).\n    - Create links for email addresses using this {term}`Markdown` syntax - ``[real-email-address](mailto:real-email-address)``.\n    - [Too many links](https://intelligentcontacts.com/7-tips-to-keep-your-emails-out-of-the-spam-filter/) can trigger the spam filter on a recipient's inbox. try to keep them to a mimumum if you can.\n- **Quoting others**: Use greater than (>) symbol followed by a space before the quoted sentence. For example:\n    `> This is my legendary quote.` will appear as:\n    > This is my legendary quote.\n- **Header and styling**: The newsletter title is the top header.\n    - Different sections as suggested in the newsletters are second-level headers and the sub-sections are third-level headers.\n    - Use bold letters, italics, hyperlinked texts and quotations wherever applicable\n    - The project name, _The Turing Way_, should be italicised.\n    - Use line breaks for each line consistent with _The Turing Way_ writing format.\n    - Leave at least one line space after each section and subsection.\n- **Language and tone**: Keep the overall language simple and jargon-free, see [_The Turing Way_ style guide](#ch-style) for reference.\n    - The tone should be welcoming, friendly and preferably informal.\n    This can be personal to the author's writing style.\n    - Ask more than one person to review your draft to make sure that its content is easy to understand and written clearly.\n    - If using content from a language or culture different from your own, ask people with that language or culture to review your draft to make sure that the content is not misrepresented.\n- **Use of emojis**: It is encouraged to use emoji (*show your personality*) 😇, but keep it simple, neutral and positive.\n    - Be aware that ambiguous emojis can be misinterpreted by different readers.\n    - When in doubt, ask someone to review your draft.\n- **Use of images**: Only use relevant images linked to the news item in the newsletter.\n    - Make sure that the images are available under a CC-BY license or approved to be reused by the owners.\n    - Avoid using memes, images with political or sexual innuendo, or anything that is not directly related to the community.\n    - When drafting the newsletter in a HackMD, drag-n-drop an image into the editor or copy-paste an image to automatically upload the image to [Imgur](https://en.wikipedia.org/wiki/Imgur).\n    - When drafting the newsletter on GitHub, upload the images in the folder `the-turing-way/communications/newsletters/`.\n    - The file naming convention for images is `short-name-monthYYYY.png`, where the short-name should be replaced with the identifiable short name of the image, the month should be replaced by the short name of the month and YYYY should be replaced by the year.\n    - File extension can be `.jpg`, `.png` or others with compatible image file types.\n    - Use {term}`Markdown` syntax to link the images in the newsletter: `![](image/path)`.\n    - As suggested in [_The Turing Way_ style guide](https://book.the-turing-way.org/community-handbook/style/style-figures.html), create an alt text for the image: `![Alt: Description of the image - this is not the title but actual explanation of the image](image/path)`\n    - Below the image, write a short descriptive title for the image followed by an empty line.\n    Link the title to the source such as a tweet or related event.\n    - When using multiple images as panels in one collective image, number each image clearly (this can be done in any photo or text editor) and provide a numbered title for each image.\n    See an example [here](https://github.com/the-turing-way/newsletter/blob/main/newsletter_54_May2024.md).\n"
  },
  {
    "path": "book/website/community-handbook/newsletters/newsletters-template.md",
    "content": "(ch-newsltters-template)\n# Template for Drafting Newsletters\n\nThe templates outlined below is what we have been using as a guide for collecting news items for _The Turing Way_ newsletters over the past years.\nThese two templates have evolved greatly over the years and in no way claims to be the 'perfect' format.\nWhen reusing this template, you should experiment with what works for your community.\nYour suggestions in the earlier subchapters are very welcome.\n\n```\n\n# TTW Newsletter Title\n\nShort description title for first line.\n\nLonger description paragraph goes here that says a little bit more about the project.\n\n* 📢 Bullet list highlight \n* 📢 Bullet list highlight\n* 📢 Bullet list highlight \n* 📢 Bullet list highlight \n\nSometimes an additional description goes here.\n\nAs usual, you can find more updates and opportunities in the 'Community News' and 'Opportunities in _The Turing Way_ orbit' sections below. \nTo keep up to date with community events, you can also subscribe to our [shared calendar here](https://calendar.google.com/calendar/u/0/r?cid=theturingway@gmail.com). 📅\n\nIf you're interested in keeping up in real-time, don't forget that you can always join our [Slack workspace](https://tinyurl.com/jointuringwayslack), or join us on [Fosstodon](https://fosstodon.org/@turingway).\n\n---\n\n# Community News and Updates\n\n![Alt: Hand-drawn sketch of \"our Community\" drawn, featuring a garden that has people working with each other in maintaining, cleaning, working on computers and welcoming others.](https://i.imgur.com/AJgGmCn.jpg)\n_Illustration by Scriberia showing community as a garden and members as gardeners. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://zenodo.org/record/5706310#.YoS-RmDMK58)._\n\n## Upcoming Fireside Chat OR Community Call\n\n![Alt: Alt text goes here.](https://i.imgur.com/fl5JIAd.png)\n\nThis XXX, we're hosting a Fireside Chat on **TITLE\" on Day XX Month, 15:00-16:00 UTC** ([see in your time zone](https://arewemeetingyet.com/London/2022-06-30/16:00)).\nChaired by XXX and XXX, this panel will feature insights from **XXX, XXX, XXX and XXX**. \nOne sentence summary about the fireside chat can go here.. \nJoin us, and [sign up on Eventbrite here](Link to Eventbrite). \n\n## Upcoming events\n\n📅 Check out our [new events calendar](https://docs.google.com/spreadsheets/d/1C-VZvmFL4PnSBsv_G9ZD3dwjIYLno3NyL7oHvbplnWs/edit#gid=577525947) to learn more about what is happening in the community. \n\n✨ If you are attending an event and would like to meet folks from across the community, please include that in this [pad](https://pad.sfconservancy.org/p/ttw-event-calendar-2023).\n\n## Recurring Community Events and Calls ☕\n\n[Adding a list of ongoing community calls]\n\n# Community News\n\n## Title for event in community\n\n\n---\n\n# Talks and Workshops\n- **Name** and **Name** gave talks about \"Title\" on X and X Month: [Zenodo link]\n- **Name** and **Name** gave talks about \"Title\" on X and X Month: [Zenodo link]\n- **Name** and **Name** gave talks about \"Title\" on X and X Month: [Zenodo link]\n- **Name** and **Name** gave talks about \"Title\" on X and X Month: [Zenodo link]\n- **Name** and **Name** gave talks about \"Title\" on X and X Month: [Zenodo link]\n\n---\n\n# In *The Turing Way* Orbit\n\n- Job: Organisation: Role\n    - ⏰ Apply by 15 January 2023\n    - 📍 Location: Remote, with a supervisor based in The Netherlands\n    - 🔗 [Read Details](https://)\n\n*For more events, subscribe to the [Open Research Calendar](https://openresearchcalendar.org/).*\n\n-----\n\n## Get involved + Connect with us!\n\nYou are welcome to join *The Turing Way* community, and learn more about the project.\n\n*   [About the project](https://www.turing.ac.uk/research/research-projects/turing-way-handbook-reproducible-data-science)\n*   [_The Turing Way_ book](https://the-turing-way.netlify.com)\n*   [HackMD Intro Page](https://hackmd.io/@turingway/demo-intro)\n*   [GitHub repository](https://github.com/alan-turing-institute/the-turing-way)\n*   [Slack Workspace](https://join.slack.com/t/theturingway/shared_invite/zt-fn608gvb-h_ZSpoA29cCdUwR~TIqpBw)\n*   [Mastodon profile](https://scholar.social/web/@turingway@fosstodon.org)\n*   [YouTube Channel](https://www.youtube.com/channel/UCPDxZv5BMzAw0mPobCbMNuA)\n\nIf you'd like to contribute to the next newsletter, please email Anne Lee Steele at asteele@turing.ac.uk! Feel free to send her a message on Slack, or [book some time in on Anne's calendly](calendly.com/aleesteele/) to say hello.\n\n_Did you miss the last newsletters?_ _Check them out [here](https://tinyletter.com/TuringWay/archive)._\n```\n\n## March 2025 Template\n\nThe template outlined below is what we have been using as a guide for collecting news items for _The Turing Way_ newsletters since September 2022.\n\n## September 2019 Template\n\nThe template outlined below is what we have been using as a guide for collecting news items for _The Turing Way_ newsletters since September 2019.\n\n```\nDate: DD Month YYYY\n\n# title\n\nHello Turing Way friends!\n\nThis month ...\n\nShout out ...\n\nEvents ...\n\nFind more details on these topics below 👇\n\n\n## Community meetings\n\n    <About events like Collaboration Café, book dash, other meetings>\n\n## News from the community\n\n    <Any news from the team, community members, and new chapters>\n\n## Relevant resources\n\n    <Any useful resources like relevant publication, training items, and materials from collaborators>\n\n## Tips & Tricks for new contributors\n\n    <Any material that helps the new contributor to relate to the project like impact statement, story, and contributor in focus>\n\n## Acknowledgments and celebrations\n\n    <Shout out and wishes to celebratory news from members, recent meetings where someone talked about Turing Way, Tweets and other online mentions from people other than the team members>\n\n## Special mentions\n\n    <Shout out to the reviewers for this newsletter other than the team members>\n\n## Connect with us!\n\n- [About the project](https://www.turing.ac.uk/research/research-projects/turing-way-handbook-reproducible-data-science)\n- [_The Turing Way_ book](https://book.the-turing-way.org)\n- [GitHub repository](https://github.com/the-turing-way/the-turing-way)\n- [Slack channel](https://join.slack.com/t/theturingway/shared_invite/zt-2v7euwuo7-BYstHdKuTNd1ce0puDtBxA)\n- [Public Gitter channel](https://gitter.im/the-turing-way/the-turing-way)\n- [YouTube Videos](https://www.youtube.com/channel/UCPDxZv5BMzAw0mPobCbMNuA)\n\nYou are welcome to contribute content for the next newsletter by\nemailing [Malvika Sharan](mailto:msharan@turing.ac.uk).\n\n*Did you miss the last newsletters?*\n*Check them out [here](https://buttondown.com/turingway/archive).*\n```\n"
  },
  {
    "path": "book/website/community-handbook/newsletters.md",
    "content": "(ch-newsletters)=\n# _The Turing Way_ Monthly Newsletters\n\n_The Turing Way_ team releases newsletters every month to share the latest updates with the community and beyond.\nThese newsletters include event announcements, updates from the project, highlights from the community, useful resources for new and existing contributors, promotion of any ongoing efforts, impact stories of long-standing members and shoutouts to relevant online activities.\n\nWhile we send our newsletters by email to our subscribed members, we simultaneously publish and archive them [online](https://news.the-turing-way.org) so that anyone outside the community can also learn about the project.\n\nThe main purpose and motivations for publishing these newsletters are the following:\n1. Reflect on the team's and community's project goals and any important milestones achieved in the last month\n2. Highlight and celebrate ongoing work and notable efforts of the community members and document them\n3. Share information about any upcoming events and opportunities for our members\n4. Maintain ongoing connections with the subscribed members\n\nAs of March 2025, newsletters are drafted by *The Turing Way* Research Community Manager with contributions from the project team and the community.\nCurrently, Anne Lee Steele drafts the newsletters including updates from the project delivery team and news items contributed by the community members.\nThroughout 2025, we will be decentralising newsletter writing and sending to the Community Management Working Group, a volunteer-managed group within the community for regular updates.\n\nIn this chapter, we share the process we have established in _The Turing Way_ for collecting news items, drafting the newsletter, documenting any additional updates shared by community members and publishing them through Buttondown.\n"
  },
  {
    "path": "book/website/community-handbook/onboarding-offboarding/offboarding-core-team.md",
    "content": "(ch-core-team-offboarding-checklist)=\n# Core Team Offboarding Checklist\n\n🌙 **We are sad to see you leave *The Turing Way* Core Team!** 🌙\n\n```{admonition} Note\n:class: tip\nThis document was prepared and shared from 2022-2023 for 10-15 community members who were identified to have a leadership role within the community, either transitioning out or stepping out of that role. At the time, this group was called the \"Core Team\" of _The Turing Way_, used as umbrella term for all community members who have taken on a maintenance role within the community.\n\nThis onboarding checklist is no longer in active use, it has been added to the Community Handbook for archival purposes. \n```\n\n## Accounts and Permissions\n- [ ] Remove from #ttw-core-team channel on Slack\n- [ ] Change [Github repository](https://github.com/the-turing-way/the-turing-way) permissions as needed\n- [ ] Add to appropriate section of [Governance Roles document](https://github.com/the-turing-way/the-turing-way/blob/main/GOVERNANCE_ROLES.md) \n- [ ] (If applicable) Participate in [Enrichment Exit Process](https://mathison.turing.ac.uk/page/3021?SearchId=0) for the Alan Turing Institute\n- [ ] (If applicable) Remove from HackMD team for The Turing Way\n- [ ] (If applicable) Give Accounts/Password Access on Keybase\n- [ ] (If applicable) Remove from the [Core Google Drive](https://drive.google.com/drive/u/0/folders/1bdjA-fBotMi9CnjDqu84d5hPZWwjgi-x)\n    - [ ] Remove email from [promotion pack](https://drive.google.com/drive/u/1/folders/1mzGmbJkPnP5q1goQesxDc_E5zAPL0eTF) folder\n    - [ ] Remove email from [conference talks/workshop applications](https://drive.google.com/drive/u/0/folders/1eNHq9sXq6Z8Q5Ep0MzNS0GsB3FKgTi3E) folder\n- [ ] (If applicable) Remove from [Core Team Google group](https://groups.google.com/u/1/g/core-team-2022) (currently dormant)\n- [ ] (If applicable) Remove from Canva team\n- [ ] (If applicable) Remove from Penpot team\n- [ ] (If applicable) Remove the Turing Way folder from Keybase group\n\n## Personal information\n- [ ] Move information on the [Team slides](https://docs.google.com/presentation/d/1PeQ_gg5tOJVhOA4aSnVumsowD-bfRFEroWfGsxxaGCw/edit#slide=id.g1aee8e18598_0_0) to 'Alumni' section\n- [ ] (If applicable) remove the [project page](https://www.turing.ac.uk/research/research-projects/turing-way) on Alan Turing website\n- [ ] (If applicable) remove yourself to [TPS/Whitaker Lab slide deck](https://docs.google.com/presentation/d/1g-plncmi00FK97QuYDfqq7oPzUmL0xkHm1hy4X81IX8/edit#slide=id.gf5e62e1b31_1_0)\n\n## Events & Calendars\n- [ ] Remove from the Community Calendars\n    - [ ] The Turing Way Community (public-facing)\n    - [ ] The Turing Way Core Team (internal)\n- [ ] Remove from calendar invites for The Turing Way core team\n    - [ ] Coworking Calls\n    - [ ] Collaboration Cafes\n    - [ ] Fireside Chat\n    - [ ] Community Calls\n\n## Documenting your Experiences\n\nWe understand that wrapping up chapters and projects with _The Turing Way_ may take some time! \n\nIf you need support completing your tasks, please reach out to the Research Community Manager or Research Project Manager to help support you through the process. \n\nThey can schedule an offboarding call with you in order to help document your work with _The Turing Way_ community. \n\nRemember, everyone has expertise to share – and documentation will help us to ensure that others can learn from your experiences too.\n\nWe ask that you please update your [Record of Contributions](https://the-turing-way.netlify.app/afterword/contributors-record.html) to document your experiences with contributing to _The Turing Way_.\n\n## Celebrating your Contributions\n\nThank you so much for all your contributions to *The Turing Way*. We really appreciate you sharing your time and expertise with us in this community!\n\nThe Research Community Manager or Research Project Manager will reach out to discuss how to celebrate you in a way you prefer. \n\nWe are hoping to develop a \"emiritus contributor programme\" or other means of keeping you involved in our community moving forward.\n\nRemember, you can always re-engage with us if you are interested in re-joining the project. You are always welcome!\n"
  },
  {
    "path": "book/website/community-handbook/onboarding-offboarding/onboarding-core-team.md",
    "content": "(ch-core-team-onboarding-checklist)=\n# Core Team Onboarding Checklist\n\n**☀️ Welcome to *The Turing Way* Core Team!☀️**\n\n```{admonition} Note\n:class: tip\nThis document was prepared and shared from 2022-2023 for 10-15 community members who were identified to have a leadership role within the community. At the time, this group was called the \"Core Team\" of _The Turing Way_, used as umbrella term for all community members who have taken on an maintenance role within the community.\n\nThis may have included the following:\n- Chairs or co-chairs of working groups within the community\n- Organisers of events such as Book Dashes\n- Staff members of the Alan Turing Institute leading on different initiatives\n\nThis onboarding checklist is no longer in active use, it has been added to the Community Handbook for archival purposes. \n```\n\n## Accounts and Permissions\n- [ ] Add to #ttw-core-team channel on Slack\n- [ ] Add to [TTW Github repository](https://github.com/alan-turing-institute/the-turing-way) with \"Maintainer\" permissions (change as needed for role)\n- [ ] Add to [Governance Roles document](https://github.com/the-turing-way/the-turing-way/blob/main/GOVERNANCE_ROLES.md)\n- [ ] Share [zenodo link for The Turing Way community](https://zenodo.org/communities/the-turing-way/?page=1&size=20) \n- [ ] (If applicable) Read [Onboarding guidebook and Information for New Starters](https://mathison.turing.ac.uk/Interact/Pages/Section/ContentListing.aspx?subsection=3363) at the Alan Turing Institute\n- [ ] (If applicable) Add to HackMD team for The Turing Way\n- [ ] (If applicable) Give Accounts/Password Access on Keybase\n- [ ] (If applicable) Add directly to [The Turing Way Core Google Drive](https://drive.google.com/drive/u/0/folders/1bdjA-fBotMi9CnjDqu84d5hPZWwjgi-x)\n    - [ ] Share [promotion pack](https://drive.google.com/drive/u/1/folders/1mzGmbJkPnP5q1goQesxDc_E5zAPL0eTF) folder\n    - [ ] Share [conference talks/workshop applications](https://drive.google.com/drive/u/0/folders/1eNHq9sXq6Z8Q5Ep0MzNS0GsB3FKgTi3E) folder\n- [ ] (If applicable) Add to [Core Team Google group](https://groups.google.com/u/1/g/core-team-2022) (currently dormant)\n- [ ] (If applicable) Add to Canva team\n- [ ] (If applicable) Add to Penpot team\n- [ ] (If applicable) Add to Keybase group\n\n## About yourself\n- [ ] Add your information to [TTW Team slides](https://docs.google.com/presentation/d/1PeQ_gg5tOJVhOA4aSnVumsowD-bfRFEroWfGsxxaGCw/edit#slide=id.g1aee8e18598_0_0)\n- [ ] (If applicable) add yourself to [TTW project page](https://www.turing.ac.uk/research/research-projects/turing-way) on Alan Turing website\n- [ ] (If applicable) add yourself to [TPS/Whitaker Lab slide deck](https://docs.google.com/presentation/d/1g-plncmi00FK97QuYDfqq7oPzUmL0xkHm1hy4X81IX8/edit#slide=id.gf5e62e1b31_1_0)\n- [ ] Introduce yourself on the Turing Way slack (in #introductions)\n\n## Events & Calendars\n\n- [ ] Give links to TTW Community Calendars\n    - [ ] The Turing Way Community (public-facing)\n    - [ ] The Turing Way Core Team (internal)\n- [ ] Add to calendar invites for The Turing Way core team\n    - [ ] Coworking Calls\n    - [ ] Collaboration Cafes\n    - [ ] Fireside Chat\n    - [ ] Community Calls\n\n## Communication Channels + Platforms\n- [ ] Share links\n    - [ ] [Slack](https://theturingway.slack.com/)\n    - [ ] [Twitter](https://twitter.com/turingway)\n    - [ ] [Mastodon](https://fosstodon.org/turingway)\n    - [ ] [Newsletter](https://buttondown.email/turingway/)\n    - [ ] [Linkedin](https://www.linkedin.com/company/the-turing-way/)\n- [ ] Useful Links/Information Hub\n    - [ ] [Core Team note of notes](https://hackmd.io/@turingway/ttw-team-note-of-notes)\n\n\n## Useful links\n- [The Turing Way Core Google Drive](https://drive.google.com/drive/u/0/folders/1bdjA-fBotMi9CnjDqu84d5hPZWwjgi-x)\n- [Community Handbook](https://the-turing-way.netlify.app/community-handbook/community-handbook.html)\n- [TTW Guide to Using Slack](https://hackmd.io/@turingway/ttw-slack-intro)\n- [TTW Github repository guide](https://docs.google.com/spreadsheets/d/19IfeIxtWQpDglzfOY8vpq6TFhM1jEJa1OnNdAYWjzg8/edit#gid=1136871433)\n- [TTW Translation Github team](https://github.com/TWTranslation)\n"
  },
  {
    "path": "book/website/community-handbook/onboarding-offboarding/onboarding-general-calls.md",
    "content": "(ch-general-onboarding)=\n# General Onboarding Calls\n\n**Welcome to The Turing Way!**\n\nWe're so glad to have you here! On this page, you can learn more about our Onboarding Calls.\n\n## About the Onboarding Call\n\nHistorically, onboarding in _The Turing Way_ community has happened through 1:1 connections, between the Community Manager or Community Leaders and prospective community members of the project. As the project has grown, so have the number of entry points: where folks may be interacting with different parts of project and community in .\n\nStarting in 2024, these calls are hosted every two months, where community leaders meet new members and create a space for them to connect with our community and available resources, ensuring they have the support they need to navigate and kickstart their journey with _The Turing Way_. These calls create an open space for questions, discussions, and a warm welcome into our community.\n\nDuring this hour-long call, participants learn about _The Turing Way_ project in a group setting and how to contribute to different sub-projects and working groups within the community, and may gain hands-on experience in contributing to _The Turing Way_ guides (in some cases, even making their first pull request!). \n\nThis is a space to bring your questions and interests – we're so excited to meet you!  \n\n## Agenda\n\nAs of January 2024, onboarding calls are being trialed using the following format:\n\n1. Introduction, icebreaker\n2. The Turing Way - What is it?\n3. How to get involved with The Turing Way? \n4. Do you have any questions for us? \n5. Feedback \n\n## Want to onboard other community members? \n\nPlease join the [#onboarding](https://theturingway.slack.com/archives/C06EVT7GKK3) channel on _The Turing Way_ slack! \n\nWe would love to have more community members join in welcoming others to the community."
  },
  {
    "path": "book/website/community-handbook/onboarding-offboarding.md",
    "content": "(ch-onboarding-offboarding)=\n# Onboarding and Offboarding\n\nAs a project, our goal is to provide individuals and organizations in academia, industry, government, and the public sectors the information they need to ensure that their projects are easy to reproduce and reuse. \n\nWe encourage all stakeholders in data science to utilise _The Turing Way_ to understand their roles and responsibilities for reproducibility.\n\nThese onboarding and offboarding documents are living documents – as is _The Turing Way_ itself. \n\nAs you will learn from being in this community: this is a constantly-evolving project that holds [emergence as a core value](https://hackmd.io/kVkwKSYuSLWWhLzlNSuT0g). In other words: as the project evolves – so will the team that enables its sustainability as a project.\n\nOr alternatively, whether it's changed responsibilities, a new job, shifting interests, or any other reason –– we understand that life happens, and that communities will always be shifting and evolving! While we are sad to see you go for now, we hope that you'll stay engaged with us in *The Turing Way* community! \n\nWhether you are joining"
  },
  {
    "path": "book/website/community-handbook/pathways/pathways-creation.md",
    "content": "(ch-pathways-creating)=\n# Creating Learning Pathways\n\nIn the Pathway landing page, we describe the motivation and background for developing the Pathway feature - a Python package implementation in the book.\n\nThis chapter describes the process of creating curated learning pathways designed to meet the specific needs and interests of particular user personas.\nBy making the curation process clear, we hope more community members will join in and curate specific pathways that will support the learning experiences of their colleagues and members within *The Turing Way*.\n\n## Why Create a Pathway\n\nHere are a few specific reasons why we encourage creating a pathway, providing specific user groups with a curated set of chapters:\n\n* **Targeted Learning:** Carefully curated pathways provide a focused route through which users can navigate the large number of resources, such as open science, reproducible research, and collaborative practices, without being distracted or feeling overwhelmed.\n* **Ensuring Practical Use:** Pathways are often built in collaboration with the target personas, ensuring relevance, shared agency and practical use of the curated resource by them.\n* **Promoting Specific Themes:** Pathways can highlight particular themes or methodologies in data science that are of specific interest to a group.\n* **Addressing Skill Needs:** By identifying the unique set of chapters for specific user groups (such as Research Software Engineers or Community Managers) or collecting different aspects of a broader topic (such as data management or software citation), we can directly address skills required for specific personas.\n* **Onboarding New Members or Community Groups:** Well-defined pathways can serve as effective onboarding tools, guiding newcomers through essential concepts and practices relevant to their context.\n* **Reducing Time Burden:** Individuals with time constraints may find it difficult to navigate through resources that are not immediately relevant. By providing specific collections, we can reduce the time and effort needed to identify desired chapters.\n\n## How to Curate Chapters for Your Pathway\n\nCollaboration with target user groups is essential for creating a successful pathway.\nThis can involve various community events, such as regular short-format [Collaboration Cafés](#ch-community-calls-collabcafe), intensive long-format [Book Dashes](#ch-bookdash), or custom workshops tailored to specific groups or topics.\nIrrespective of the format, the core steps for curating pathways generally remain the same.\n\nWith this principle in mind, below we offer a step-by-step process for curating a specific pathway.\nNote that these steps do not provide the event design or organisation of such meetings, which are extensively covered in our [](#cl).\nInstead, we offer five overarching considerations, informed by our experiences curating pathways for practical application by diverse groups.\n\n### 1. Engaging Your Community in the Needs Assessment Process\n\n#### Facilitated Discussion\n\nBegin by engaging your target user group in a dialogue to understand their needs.\nThis group should include not only potential learners but also experienced members responsible for developing data science skills within their community.\nThis combination helps to mitigate expert awareness bias and ensures that the perspectives of those who know what learners don't know are also considered.\n\nIn a facilitated discussion or brainstorming session, encourage participants to share the skills they believe their colleagues need.\nAt this initial stage, it's not necessary to review the book or identify existing chapters.\n\n#### Encourage a Wide Range of Ideas\n\nPromote participation from diverse members within the group, representing various teams and areas of expertise.\nIncorporating small breakout discussions as part of a larger group event can foster a broader range of ideas.\n\nThis initial idea-gathering can also be done through surveys, ideally after an introductory session explaining the purpose and potential uses of learning pathways.\nThe primary goal is to involve the community in identifying their learning objectives, current skill levels, and the challenges they encounter in their work.\n\nEven if enabling a synchronous meeting, allow additional time for participants to contribute to improving the notes asynchronously after the discussion.\n\n#### Documenting Ideas\n\nEnsure that all generated ideas are captured in a written format.\nShared notes, sticky notes, whiteboards, or even GitHub issues can be valuable tools at this stage.\nCreate a comprehensive list of all the data science skills, topics, and challenges that the community members identify as important.\nAvoid dismissing any ideas at this point, even if they don't immediately seem to fit within typical data science skills.\n\n### 2. Synthesise Notes and Map them to the Existing Chapters\n\nOnce you've gathered ideas from the community, whether through real-time discussions or other methods, the next step is to consolidate and cluster related topics.\nLook for recurring themes and overarching skills that emerge from the collected input.\n\n#### Explore Existing Content in *The Turing Way*\n\nNow, map these identified topics and skills to the existing chapters and sections within *The Turing Way*. \nDetermine which content directly addresses the community's needs or provides the necessary foundational understanding.\n\nTo do this, use the search feature within *The Turing Way* book to look up relevant keywords.\nAdditionally, you can search for any ongoing discussions on these topics by exploring the issues and Pull Requests on the book's GitHub repository.\n\n#### Curate Chapters for Your Intended Pathway\n\nBased on your mapping, you can begin compiling links to the chapters that directly address the needs identified in the initial steps.\nAt this stage, it is recommended to be selective.\nA well-designed pathway focuses on the most relevant content for the target persona, avoiding extraneous information that could lead to cognitive overload. Aim for a maximum of around 15 chapters to maintain focus.\n\nIf you find that there are too many important ideas and topics to include concisely, revisit your user group and seek their feedback on prioritising the most crucial chapters.\nIf all the suggested chapters truly are essential, consider offering different entry points by organising the content into multiple, distinct pathways.\n\n### 3. Integrate and Showcase Your Pathway\n\nFollow the standard *The Turing Way* contribution guidelines to submit your pathway idea via a *The Turing Way* GitHub issue.\nWithin the issue, share any relevant resources and the list of curated chapters.\nThis allows original contributors and the broader community members to provide feedback.\n\nIn addition to this, draft a concise 1-2 sentence description outlining the target users for this pathway.\n\n#### Updating the `profiles.yml` File\n\nOnce your pathway idea is ready for integration, add the proposed persona name and its details to the `profiles.yml` file.\nThis file is located in the `book/website` directory of *The Turing Way* GitHub repository.\nYou can find detailed technical instructions for this process in the Infrastructure chapter within the Community Handbook.\n\nAfter updating the YAML file, create a Pull Request following the standard contribution guidelines for review and approval.\n\nOnce the pathway is reviewed and approved, and the Pull Request is merged, it will appear on the welcome page of the book and will also be listed under the 'Pathways' section before the Foreword.\nEach pathway is displayed in its own dedicated page, providing a direct link to access and showcase the curated set of chapters.\n\n### 4. Sharing and Maintaining Your Pathway\n\nCurating chapters in a pathway is just one step towards increasing awareness of effective data science practices.\nIt is crucial to have plans in place to actively promote its use within your community.\n\nCarefully consider strategies for ensuring access and adoption of these curated resources and the corresponding practices.\nThis might include sharing the pathway through community channels, facilitating discussion sessions, designing training workshops, and actively referencing the curated resources in other materials used by community members.\n\n#### Maintenance and Review\n\nWhile the underlying pathway infrastructure is maintained by the Infrastructure Working Group, the upkeep of specific pathways is the responsibility of the representatives and groups involved in their development.\nCultivate a culture of continuous improvement by encouraging community members to suggest updates and contribute new content to keep the pathway current and valuable.\n\nIt is highly recommended to periodically review the pathway to ensure its ongoing relevance and accuracy.\nIn dedicated community spaces, actively involve and support members in identifying areas for improvement, proposing new chapters, and updating outdated content based on the evolving needs of the community.\n\n### 5. Identifying Gaps and Community Involvement\n\nAs you map the community's suggested topics and skills with the existing chapters in *The Turing Way*, you will likely identify gaps where specific guidance or dedicated chapters are currently missing.\nThis presents an excellent route for your community to further engage with and contribute to *The Turing Way*.\n\n#### Create a List of Missing Content\n\nWithin the original GitHub issue or a new one, please compile a list of the topics and themes that your community has identified as important but are not yet documented within *The Turing Way*.\nKeeping an issue or other shared resource allows community members to easily identify, review and add their own suggestions.\n\n#### Encourage and Facilitate Community Contribution\n\nThis list of missing resources is itself a valuable tool for engaging your community members with _The Turing Way_.\nIt empowers them to transition from being readers or users to active contributors and sharers of their expertise.\n\nReach out to members who express interest in specific topics and support them in collaborating with others within *The Turing Way* community to develop new chapters or expand existing ones.\n\nThose who wish to contribute can be connected with the relevant groups within *The Turing Way* community.\nCommunity meetings and events, such as [Collaboration Cafés](#ch-community-calls-collabcafe), [Book Dashes](#ch-bookdash), and locally organised contribution sessions, can provide an effective way to boost your community's involvement in creating the resources they need.\n\nIn the next subchapters, we provide case studies and examples from different communities and groups that created context-specific personas.\n"
  },
  {
    "path": "book/website/community-handbook/pathways/pathways-example.md",
    "content": "(ch-pathways-example)=\n# Examples of Developing Pathways\n\nThis subchapter provides examples, each demonstrating distinct approaches to curating learning pathways in the data science domain.\nThese examples emphasise the importance of community engagement and the strategic leveraging of resources in developing pathways for learning and referencing.\n\n(ch-pathways-example-dswb)=\n## Example 1: Data Science Without Borders (DSWB) - Community-Driven Curation\n\nThe [DSWB pathway](#pw-data-science-without-borders), developed for an international network in Africa, prioritised inclusivity and direct relevance to diverse project requirements.\n\n### Methodology:\n\nThe curation process was facilitated by Malvika Sharan and Precious Onyewuchi, technical partners in DSWB. They applied an iterative and collaborative process as described below:\n\n- Community Brainstorming and Needs Identification: DSWB community members reviewed _The Turing Way_ book to identify chapters most relevant to their ongoing work.\nThis was facilitated through coworking sessions and working group meetings, fostering a shared understanding of needs.\n- Initial Chapter Selection and GitHub Integration: A preliminary list of potentially valuable chapters was compiled and documented on a dedicated GitHub page for transparent review and feedback.\n- Community Review and Prioritisation: The curated list was then shared back with the DSWB community for a second evaluation.\nMembers specifically commented on each chapter, indicating whether it should be retained or removed based on its immediate applicability to current projects.\nChapters deemed potentially useful in the future but not immediately required were removed by consensus, with the possibility of later reintegration, to ensure the pathway remained focused.\n- Feedback Integration and Finalisation: All feedback and suggestions received on GitHub were carefully considered.\nFuture content recommendations were noted. The finalised DSWB pathway was then submitted as a pull request to merge into the main _Turing Way_ book, solidifying community ownership and integration.\n\n### Outcomes and Insights:\n\nThe DSWB pathway curation process yielded several key insights:\n\n* Community as Experts: Empowering the community to identify their own learning needs resulted in a highly relevant and targeted pathway.\n* Iterative Feedback: Multiple rounds of review and feedback ensured the final content directly addressed the community's requirements.\n* Focus on what is needed: Prioritising currently needed content significantly enhanced the pathway's utility and prevented information overload.\n* Transparent Process: Utilising GitHub facilitated collaborative review and fostered a strong sense of ownership within the community.\n\n(ch-pathways-example-citation)=\n## Example 2: Software Citation - Thematic Workshop for Focused Content Development\n\nCuration of the [Software Citation pathway](#pw-software-citation) employed a workshop-based methodology to address a specific thematic challenge.\n\n### Methodology:\n\nIn contrast to the broad, community-driven DSWB approach, the development of this pathway occurred during a dedicated workshop as part of the Research Software Funders Forum.\nThe initiative's proposal was developed collaboratively by experts and stakeholders, and the workshop attendees were invited to discuss solutions to the scattered knowledge base, leading to inconsistent guidance on research software sharing.\n\nResearchers, publishers, and funders identified a critical challenge: existing guidance on research software sharing was fragmented across numerous websites, lacking a unified and clear set of instructions for different stakeholders.\nThis created confusion and hindered the adoption of best practices in software citation and preservation.\n\nWhile a long-term solution involved establishing a central, community-driven website (proposed as Cite.Software), an intermediate solution was co-developed: the Software Citation Pathway in _The Turing Way_.\nKey stakeholders, including Chris Erdmann (ScilifeLab Sweden), Malvika Sharan (_The Turing Way_), and Carlos Martinez (The Netherlands eScience Centre), facilitated the identification of best practices and curated relevant chapters from _The Turing Way_.\nGaps were identified and documented on GitHub issues for follow-up.\n\n### Outcomes and Insights:\n\nThe workshop-based approach for the Software Citation pathway demonstrated the effectiveness of:\n\n- Targeted Thematic Focus: Concentrating on a specific challenge allowed for in-depth discussion and the development of a highly focused solution.\n- Convening Practitioners: Bringing together key individuals and organisations ensured diverse perspectives and strong buy-in.\n- Leveraging Existing Resources: Building upon the content of _The Turing Way_ and FAIR software recommendations provided a robust foundation.\n- Collaborative Development: The workshop format actively fostered collaboration and the co-creation of the proposed solution.\n\n## Different Ways to Engage Different Groups\n\nBoth the DSWB and Software Citation pathways offer invaluable strategies for creating effective learning resources.\nThe DSWB pathway provides a good example for community-led initiatives in identifying and addressing diverse learning needs through an iterative and inclusive process. \n\nThe Software Citation pathway highlights the efficacy of focused workshops in tackling specific challenges by engaging key stakeholders and strategically leveraging existing knowledge.\n\nThese examples highlight the role of community involvement and targeted engagement in curating learning pathways.\nBy empowering communities to define their needs and actively contribute to content development, and by strategically convening stakeholders to address specific thematic areas, we can create more relevant, engaging, and ultimately more effective learning experiences for the data science community.\nThe lessons learned from these initiatives can be applied to future pathway development efforts, fostering a more engaged and empowered data science community.\n"
  },
  {
    "path": "book/website/community-handbook/pathways.md",
    "content": "(ch-pathways)=\n# Pathways Feature in *The Turing Way*\n\n## Introduction\n\nSince its inception in 2019, *The Turing Way* has experienced significant growth, with a diverse community of contributors creating a range of chapters covering various aspects of data science practices.\n\nThis expansion, although necessary for enhancing the usability of *The Turing Way* for diverse user groups, has introduced a challenge for both the new and returning users of the book: *how can users efficiently locate the information most relevant to their specific needs and skill levels?*\nTo address this, the 'Pathways' feature was developed and implemented within *The Turing Way*, which is briefly described in this chapter.\n\n### Background\n\n*The Turing Way* is an ever-evolving book, written by hundreds of contributors, used by thousands of individuals monthly, and cited in numerous projects across diverse sectors.\nDespite its significant impact and broad adoption, the sheer volume of information within *The Turing Way* poses a navigational challenge.\nThis can overwhelm users, making it difficult to find relevant content and understand the full spectrum of good data science practices it advocates.\nThis user experience risks discouraging community members from effectively using *The Turing Way* and adopting the good practices we champion.\n\nTo tackle this issue, we've introduced the 'Pathways' feature.\nDrawing on the concepts of [Personas and Pathways](#pd-persona), this is implemented as a [MyST plugin](https://github.com/the-turing-way/myst-curation), designed to improve content discovery (pathways) by preventing users (personas) from being overwhelmed with information that may not be immediately relevant.\n\nThis MyST plugin replaces a Python package developed within *The Turing Way* to integrate with the JupyterBook ecosystem, and make the reuse of this feature easier for others.\n\n```{figure} ../../figures/open-development-path.jpg\n---\nheight: 400px\nname: open-development-path\nalt: >\n  Here we have a group of people from different areas who are talking about topics of their interests.\n  A good way to show how pathways can help not just the people from the group it is prepared for, but others who are interested in the field.\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\nThis [package](https://github.com/the-turing-way/myst-curation) is now maintained by members of the Infrastructure Working Group, who also collaborate with the Jupyter Book team and contribute upstream.\n\n## Enhancing Navigation of *The Turing Way* Resources\n\nThe Pathways feature was conceived to enhance the usability of *The Turing Way* by establishing user-specific entry points with curated sets of chapters tailored to particular personas or specific themes, referred to as 'profiles'.\nThe primary motivation behind this addition to *The Turing Way*'s infrastructure was to simplify navigation, enabling users to quickly access content relevant to their roles and interests.\n\nBy offering curated content drawn from the book's extensive resources, Pathways in *The Turing Way* provide clear 'ways' for users to begin their journey with the book quickly and in a more intuitive and efficient manner.\nFor instance, a user identifying as an [early-career researcher](#pathway-early-career-researchers) or a [research software engineer](#pathway-research-software-engineers) can start using *The Turing Way* by directly engaging with these curated chapter sets.\nThey can also easily share resources on specific themes, such as [software citation](#pathway-software-citation) or [leadership skills](#pathway-project-leaders) with their colleagues.\nThese kinds of engagement eventually lead to users identifying gaps in the materials, and contribute back by developing needed resources in *The Turing Way*.\n\nBy lowering the entry barrier and facilitating easy engagement, Pathways helps individuals improve their skills in their desired areas and foster curiosity to explore additional resources within the book.\n\n### Pathway Files and Resources\n\nFor readers, Pathways can be found in a [dedicated section](#pw) immediately after the welcome page.\n\nFor contributors, the `curation` directives can be edited.\nThese are written in the {term}`Markdown` files in the Pathways section.\nFor example, [the Data Stewards pathway](https://github.com/the-turing-way/the-turing-way/blob/main/book/website/pathways/pathways-data-stewards.md)\nThe [myst-curation demo site](https://the-turing-way.github.io/myst-curation/) also has examples of how to use the directive.\n\n### Transitioning Python Package to MyST Plugin\n\nThe MyST plugin replaces a Python package implementation of the Pathway feature originally developed to address the community's need to make resources browsable.\nWith the book's migration to MyST and JupyterBook2, we wanted to create a new MyST-native pathways implementation taking advantage of the [MyST abstract syntax tree](xref:myst-spec/#myst-abstract-syntax-tree).\nIn the long term this approach has a number of advantages, including,\n\n- Fewer lines of code\n- A simpler process to build the book with pathways\n- A more generic package, which other MyST or JupyterBook projects may want to use\n\nThe Python package was developed in two stages through separate funding and team involvement:\n\n* **Stage 1 - Prototype Development**: A team of developers collaborated with *The Turing Way* team between 2021 and 2022 to explore various solutions for improving content discoverability within *The Turing Way*.\n  To maintain the book's lightweight nature and minimise the maintenance burden, a Python package was developed and implemented on a test version of the book.\n  This stage received support through internal funding and collaboration with the Research Engineering Group at The Alan Turing Institute ([read proposal](https://github.com/the-turing-way/project-management/blob/main/proposals/2021-07-ux-funding-turing.md)).\n* **Stage 2 - User Testing and Implementation**: This stage focused on gathering and integrating user feedback on the prototype and incorporating the Python package into *The Turing Way*'s main GitHub repository.\n  This stage was supported by volunteer members and *The Turing Way* through Google Summer of Code in 2023 (read [proposal and report](https://github.com/the-turing-way/pathways/)).\n\nThe development process, driven by active user engagement, feedback, and an open-source approach, has resulted in a valuable addition to *The Turing Way*, further supporting its mission of making data science accessible to all.\n"
  },
  {
    "path": "book/website/community-handbook/presenting.md",
    "content": "(ch-presenting)=\n# Presenting About _The Turing Way_\nTalks are a great way to engage new communities, teach people about open and reproducible practices, and expand the reach of _The Turing Way_ by introducing the book and inviting new contributors. We encourage any Turing Way contributor to present on behalf of _The Turing Way_, and we ask that you use the guidelines detailed below to shape your talk and ensure consistency with _The Turing Way_ style. \n\n```{figure} ../../figures/giving-a-talk.*\n---\nheight: 500px\nname: giving-a-talk\nalt: The image shows a female speaker with long dark hair standing in front of a large wall mounted screen giving a talk about the Turing Way. There are several audience members watching her. There is also an image of a head scarf wearing person sitting at their desk in front of a laptop running an online Turing Way workshop.\n---\nGiving a talk or workshop about _The Turing Way_. Illustration by Scriberia for _The Turing Way_ community, used under a CC-BY 4.0 licence. DOI: https://doi.org/10.5281/zenodo.3332807.\n```\n\n## Planning a talk\nWhether you are submitting an abstract to a conference or you have been invited to speak, a great thing to do is to engage _The Turing Way_ community for support and to publicize the event. Even if the talk is not open to all, you can work with other community members to refine your slides and give a practice talk. If you'd like, please post the details in Slack in the `#community` channel.\n\n## Preparing slides\nPlease create a GitHub issue using the [\"Give a talk\" issue template](https://github.com/the-turing-way/the-turing-way/issues/new?assignees=&labels=talks-and-workshops%2Cnewsletter&template=give_a_talk.yml&title=%5BTALK%5D+%3Ctitle%3E), which provides links to the resources you will need as well as a checklist for preparing your talk. You will find a range of presentation templates, as well as past presentations, in the [Promotion Pack](https://drive.google.com/drive/folders/1mzGmbJkPnP5q1goQesxDc_E5zAPL0eTF?usp=sharing) folder on Google Drive. Feel free to download the templates and use the slides as a guide for style and content. You can also see past talks on _The Turing Way's_ [community page on Zenodo](https://zenodo.org/communities/the-turing-way/?page=1&size=20).\n\n## Giving a talk\nWe ask that you include certain acknowledgments in your talk to make sure contributors are credited. You'll find all the info you need in the presentation templates as well as the GitHub issue checklist.\n\n## After your talk\nKeep spreading the word! Please archive your slides in two formats: their original (editable) format and as a PDF. If you don't know how to convert PowerPoint or Google slides to PDF, see these [instructions](https://www.wikihow.com/Convert-Powerpoint-to-PDF); following these instructions helps preserve accessibility features for people using screen readers. You can archive your slides on [Zenodo](https://zenodo.org/communities/the-turing-way/), and don't forget to tag \"the-turing-way\" under Communities.\n\nPlease make sure that you credit all of the contributors and presenters of your presentation as authors in the Zenodo upload form. If possible, link to any previous talks where you have used additional slides outside of the provided _The Turing Way_ presentation templates - this can be done in the description part of the upload form.\n"
  },
  {
    "path": "book/website/community-handbook/style/consistency/consistency-formatting.md",
    "content": "(ch-consistency-formatting)=\n# Formatting\n\nFormatting refers to how _The Turing Way_ book is written and directly affects the book's appearance and presentation.\n\n_The Turing Way_ is hosted online as a Jupyter Book and uses the formatting recommendations as described in their [documentation](https://jupyterbook.org/intro.html).\nProper formatting ensures that _The Turing Way_ is readable, accessible, and resembles a modular piece of work.\n\n\n(ch-consistency-formatting-hr)=\n## Hard Requirements\n\nThe hard requirements in the consistency checklist ensure that _The Turing Way_ prioritises accessibility, collaboration, readability and ease of use.\nThe checks that deal with the _The Turing Way's_ formatting include:\n\n(ch-consistency-formatting-hr-markdown)=\n### Check 1:  Use Markdown for creating your content\n\n_The Turing Way_ should be written in {term}`Markdown`, in particular [MyST Markdown](xref:myst-guide) where possible, so that the Jupyter Book renders as intended.\n\n#### Markdown x HTML\n\nParts of earlier chapters in _The Turing Way_ were written in `HTML`, making some of their content hard to read.\n\nFor example, the following figure depicts a table that was written in `HTML`.\n\n```{figure} ../../../../figures/html-to-markdown.*\n---\nname: html-to-markdown\nalt: A screenshot of a poorly formatted table written in HTML. The table is squished together and does not have column or row borders. This makes it hard for a reader to decipher its meaning.\n---\nContent written in HTML may not render properly.\n```\n\nWhen reformatted to {term}`Markdown`, the table became cleaner and easier to read:\n\n```{figure} ../../../../figures/html-to-markdown2.*\n---\nname: html-to-markdown2\nalt: A screenshot of a table converted to {term}`Markdown` from HTML. The table becomes easier to read and understand when converted to Markdown.\n---\nConverting HTML to {term}`Markdown` makes The Turing Way book easier to read.\n```\n```{note} A PR that addresses this check can be found [here](https://github.com/the-turing-way/the-turing-way/pull/1460).\n```\n\nChapter content written in `HTML` are usually enclosed in tags which begin and end with angle brackets `<>`.\n[W3Schools](https://www.w3schools.com/html/html_elements.asp) is an excellent resource for understanding what these tags mean, and {term}`Markdown` reference guides, such as [this cheatsheet](https://www.markdownguide.org/cheat-sheet/), can help translate `HTML` formatting to Markdown.\nThere are also helpful tools on the web, such as [Turndown](https://domchristie.github.io/turndown/) and [CloudConvert](https://cloudconvert.com/html-to-md), that convert `HTML` to {term}`Markdown` with a single click.\n\nPlease note that if `HTML` is the only option for you to format your text the way you desire, you can use it only if the content in the online book can still be read and understood (use the Netlify preview in your PR to test).\nFor example, [superscripts and subscripts](https://support.squarespace.com/hc/en-us/articles/206543587-Markdown-cheat-sheet#toc-superscript-and-subscript) can be written in `HTML` because they always appear as intended.\n\n#### Demo\n::: {iframe} https://www.youtube.com/embed/tv0HlVgxDdI\n:width: 100%\n:::\n\n#### Writing Checklists\n\nWhen writing a new chapter for _The Turing Way_, you might include a Checklist subchapter that itemises key action points you want readers to take based on the chapter content.\nWe recommend that you format your Checklist subchapters as unordered lists (checklist items denoted by `[ ]` do not render correctly):\n\n```\n# Checklist\n- Item One\n- Item Two\n- Item Three\n\n```\n\n(ch-consistency-formatting-hr-headers)=\n### Check 2: Use headers in sequential order.\n\nNon-consecutive headers refer to an increase in header levels of more than one.\nFor example:\n\n```\n# Heading\n### Another Heading\n```\n\nSuch an increase of two header levels results in warnings when building _The Turing Way_ locally.\nIdeally, all {term}`Markdown` files should start with a level 1 heading and increase sequentially as appropriate:\n\n```\n# Heading\n## Another Heading\n```\n\nSeveral files in _The Turing Way_ book do not follow this convention.\nA list of such files can be found in [this issue](https://github.com/the-turing-way/the-turing-way/issues/1321), and [this PR](https://github.com/the-turing-way/the-turing-way/pull/1451) is a great example of how to fix a file with non-consecutive headers.\n\n#### Demo\n\n::: {iframe} https://www.youtube.com/embed/qq9QCrykdbw\n:width: 100%\n:::\n\n(ch-consistency-formatting-hr-labels)=\n### Check 3: Add labels to chapters, subchapters, sections, and images to enable cross-referencing.\n\nOften, a chapter might refer to content from another chapter to explain concepts or expand on points.\nCross-referencing facilitates this by ensuring that the referred content is easy to find with a simple click.\nThis helps make _The Turing Way_ more navigable and accessible.\n\n{ref}`Cross-referencing <ch-style-crossref>` is discussed in detail in the {ref}`ch-style`. The subchapter explains what labels are, provides a naming convention for labels in _The Turing Way_, and gives several useful examples for how cross-referencing should be done.\n\n#### Demo\n\n::: {iframe} https://www.youtube.com/embed/ikcjxjklLVg\n:width: 100%\n:::\n\n(ch-consistency-formatting-hr-images)=\n### Check 4: Use `MyST` for image formatting\n\nSome figures and images in _The Turing Way_ are embedded using {term}`Markdown` syntax.\nWhile this works, it does not allow the images to adapt to the screen size of the device the book is read from.\n\nMarkedly Structured Text (`MyST`) is a flavour of {term}`Markdown` that addresses this and enables responsive images in _The Turing Way_.\n\nIt also allows the use of captions and alternative text (ALT text), which are the invisible image descriptions that are read aloud to readers of _The Turing Way_ who use a screen reader.\nIf no ALT text is provided with an image, these users will be unable to understand the purpose of the image.\n\nWhen writing ALT text, remember to:\n- **Be descriptive** - Adequately describe the image using its content and context for guidance.\nIn doing so, there is no need to \"announce\" an image in your description (for example, using \"illustration of\" or \"picture of\") since screen readers will already do this.\n- **Keep it as short as possible** - Although a long description may be necessary for some images, it is better to keep them as short as possible.\nThis ensures that the descriptions are easy to understand.\n\nPlease note that images included in _The Turing Way_ book should be less than 1MB.\nThis allows the book to load faster, especially for readers who may have slow internet connections.\n\nPlease refer to the {ref}`style guide <ch-style-figures>` for examples on formatting images using `MyST` and adding ALT text to them.\nWhen including images in your contributions, it may be better to avoid the height parameter as the wrong value could make your image appear distorted on mobile devices.\nYou should always check how your image looks in the Netlify preview of the book when you make a PR.\n\n#### Demo\n\n::: {iframe} https://www.youtube.com/embed/upBiKLR_A5E\n:width: 100%\n:::\n\n(ch-consistency-formatting-sr)=\n## Soft Requirements\n\nSoft requirements help improve the overall look and feel of _The Turing Way_.\nWhen effected, these checks may go unnoticed, but they also contribute to making _The Turing Way_ a polished piece of work.\nSoft requirements that deal with _The Turing Way's_ formatting include:\n\n(ch-consistency-formatting-sr-one)=\n### Check 1: Ensure that the names of chapters/subchapters are short and map exactly to how they are titled in the `myst.yml`\n\nSome chapters and subchapters in _The Turing Way_ do not match their corresponding references in the book-wide table of contents that appears on the left of the webpage.\nThis may be confusing for users, especially when the chapter/subchapter's reference in the table of contents significantly varies from the chapter/subchapter's name.\n\n```{figure} ../../../../figures/mismatched-title-toc.*\n---\nname: mismatched-title-toc\nalt: A subchapter whose title differs from its reference in the table of contents. The title of the subchapter is 'Using Spreadsheets for Research Data', however in the table of contents, it is referred as 'Data Organisation in Spreadsheets'.\n---\nThe title of this subchapter is 'Using Spreadsheets for Research Data', however the table of content refers to the same file as 'Data Organisation in Spreadsheets'.\n```\n\nIn ensuring that _The Turing Way's_ content passes this check, one recommendation to follow is to keep the titles short.\nWhen writing a new chapter, ensure that its title is short and has the same name in the table of contents.\nSimilarly, when reviewing existing chapters, if its title and reference in the table of contents differ, make the shorter of the two the chapter's title, and update the `myst.yml` if necessary.\n\n```{note}\nThe `myst.yml` is the file where the book-wide table of contents for _The Turing Way_ lives.\n```\n\nNonetheless, remember that the final title should adequately tell readers what to expect from a chapter or subchapter.\n\n#### Demo\n\n::: {iframe} https://www.youtube.com/embed/HxcdqKJbCE4\n:width: 100%\n:::\n\n(ch-consistency-formatting-sr-two)=\n### Check 2: Ensure proper title-casing for headers\n\nThe titles of some chapters in _The Turing Way_ do not use title-casing.\n[Title-casing](https://en.wikipedia.org/wiki/Title_case) is a capitalisation style used to format the titles and headings of published works.\nBeing a citeable reference for individuals seeking to carry out reproducible data science, titles and headings in _The Turing Way_ should be title-cased.\n\nAlthough _The Turing Way_ does not follow a specific title capitalisation style, some general, non-exhaustive rules to consider include:\n- Capitalise principal or important words\n- Lowercase articles, conjunctions, and prepositions (except when these are stressed)\n- Capitalise the first and last words\n\nThere are helpful tools, such as [CapitalizeMyTitle](https://capitalizemytitle.com/) and [Title Case Converter](https://titlecaseconverter.com/), that can be used to title-case headers when writing your content.\nFurthermore, headers in _The Turing Way_ can be run through these tools to ensure they follow title-casing conventions.\nThey can then be replaced within chapters and in the `myst.yml` as appropriate.\n\nFor example, In {ref}` the image <mismatched-title-toc>` above, **Using spreadsheets for research data** should be title-cased to **Using Spreadsheets for Research Data**.\n\nCertain headers may not need to be title-cased depending on the context in which they are used.\nFor example, because some of the headers in this chapter make up a checklist - they do not need to be title-cased.\n\n#### Demo\n\n::: {iframe} https://www.youtube.com/embed/ET_LI5dwP9M\n:width: 100%\n:::\n"
  },
  {
    "path": "book/website/community-handbook/style/consistency/consistency-language.md",
    "content": "(ch-consistency-language)=\n# Language\n\nLanguage is concerned with the way concepts and ideas in _The Turing Way_ are expressed.\nA consistent language ensures that _The Turing Way_ is clear and understandable.\n\n(ch-consistency-language-hr)=\n## Hard Requirements\n\nThe hard checks that deal with _The Turing Way's_ language include:\n\n(ch-consistency-language-hr-grammar)=\n### Check 1: Ensure correct grammar and a consistent tone across the book\n\nCorrect grammar and consistent tone would help readers of all backgrounds, knowledge, and skill levels to better understand _The Turing Way_'s content.\n\nAside from being distracting, incorrect grammar might take away what a piece of text is trying to communicate.\n\nTools such as [Grammarly](https://grammarly.com), [Ginger Grammar](https://gingersoftware.com/grammarcheck), and [Reverso Speller](https://reverso.net/spell-checker/english-spelling-grammar/) can help catch grammatical errors present in a piece of text.\nThese tools can be used to assess grammar in new contributions and existing content of _The Turing Way_.\nFurthermore, when raising PRs for new content, invite reviewers to check for grammar as well.\nThis could help minimize the number of grammatical errors that make it to the final version of _The Turing Way_.\n\nWith respect to tone, ensure that chapters adhere to a formal style of writing and that sentences are easy to digest.\nOne rule of thumb to consider is that if a sentence needs to be read more than once to be understood, then it likely needs to be rephrased.\n\n#### Demo\n\n::: {iframe} https://www.youtube.com/embed/Prv23kGekVY\n:width: 100%\n:::\n\n(ch-consistency-language-hr-language)=\n### Check 2: Ensure chapters use a consistent language\n\n```{note} Language, in this context, refers to the American and British variants of the English language.\n```\n\nWith contributors from around the world, _The Turing Way_ does not restrict the language used to write chapters.\nThis makes it easier for contributors to bring in their perspectives as they write content for _The Turing Way_.\nRather, the recommendation is that if a chapter is written in one style (for example, British English), then it should remain consistent throughout.\nThis makes _The Turing Way_ less distracting and easier to read.\n\n(ch-consistency-language-hr-abbreviations)=\n### Check 3: Ensure Latin abbreviations are not used in writing chapters\n\nWhen writing content for _The Turing Way_, the use of Latin abbreviations is discouraged.\nThis is because screen readers may read them aloud in a manner that is confusing to those who rely on such devices.\n\nPlease refer to the [style guide](#ch-style-writing-markdown-latin) for recommendations on how to avoid common Latin abbreviations in your writing.\n\nTo enforce this consistency, contributions that contain Latin abbreviations will fail the _The Turing Way_ repository's continuous integration workflow.\n"
  },
  {
    "path": "book/website/community-handbook/style/consistency/consistency-structure.md",
    "content": "(ch-consistency-structure)=\n# Structure\n\nStructure refers to how _The Turing Way_ is organised.\nA good structural framework ensures that _The Turing Way's_ content is presented in an orderly manner.\n\n(ch-consistency-structure-hr)=\n## Hard Requirements\n\nThe hard checks that deal with _The Turing Way's_ structure include:\n\n(ch-consistency-structure-hr-emptyfiles)=\n### Check 1: Do not add empty files in the `myst.yml`\n\nThe `myst.yml` file is where _The Turing Way's_ table of contents (ToC) lives.\nSome files referenced in the ToC are empty, and their inclusion means that readers can navigate to an empty (sub)chapter while reading _The Turing Way_.\nThis negatively impacts the reader's experience as they go through the book.\n\n```{figure} ../../../../figures/empty-toc-file.*\n---\nname: empty-toc-file\nalt: An empty file that was included in the Turing Way's Table of Contents. Readers can still navigate to empty files when they are included in the table of contents.\n---\nEmpty files included in _The Turing Way's_ Table of Contents can still be accessed by readers.\n```\n\nA general suggestion is to remove references to such files from the ToC and raise an issue in _The Turing Way_ Github [repo](https://github.com/the-turing-way/the-turing-way) for content to be written for those files.\nWhen the content is written, the files can then be added to the ToC.\n\nFor example, [this issue](https://github.com/the-turing-way/the-turing-way/issues/1391) curates a list of empty and incomplete files currently in _The Turing Way_, and\n[this PR](https://github.com/the-turing-way/the-turing-way/pull/1448) writes content for the `Data Licences` subchapter shown in the {ref}`image <empty-toc-file>`.\n\n(ch-consistency-structure-hr-structure)=\n### Check 2: Ensure chapters follow a consistent structure\n\n_The Turing Way_ is made up of five guides that contain several chapters and subchapters.\nHowever, these chapters do not follow a uniform structure, taking away from the reader's experience.\n\n```{figure} ../../../../figures/recommended-chapter-structure.*\n---\nname: recommended-chapter-structure\nalt: The recommended structure for chapters in The Turing Way. Chapters should have a landing page with a sections for prerequisites, summary, and why the chapter is useful. Chapters should also have a checklist and a resources subchapter in addition to the rest of the chapter content.\n---\nRecommended structure for chapters in The Turing Way.\n```\n\n- **Landing page:**\n    - The chapter's landing page should include information about any prerequisites required to understand the chapter, a summary of the chapter's content, and an explanation of why the chapter is useful.\n- **Subchapters:**\n    - A chapter can contain any number of subchapters or none at all. However, please note the next requirement about the checklist and resources subchapters.\n- **Checklist subchapter:**\n    - The checklist subchapter itemizes action points for the reader to take based on the concepts introduced in the chapter.\n- **Resources subchapter:**\n    - The resources subchapter points the reader to other sources where they can learn more about the concepts discussed in the chapter, as well as related topics to explore.\n\n```{attention} Please note that making chapters follow this structure may require splitting some of the existing content into new files.\nReferences to these files should be updated in the table of contents in the `myst.yml` file.\n```\n\nRefer to the [chapter template](https://github.com/the-turing-way/the-turing-way/tree/main/book/templates/chapter-template) to structure new chapter contributions, and use it to assess current chapters in _The Turing Way_.\nFor chapters that do not fit this structure, please raise a Pull Request.\n\n(ch-consistency-structure-hr-toc)=\n### Check 3: Do not add a 'table of content' in chapters or subchapters.\n\nSome chapters in _The Turing Way_ were written with a hand-crafted table of contents.\nHowever, Jupyter Book auto-generates a permanent table of contents that can be found on the left side of _The Turing Way_ book, and a dynamic, page-specific table of content located at the top-right of each page.\nThis makes a manually written table of contents unnecessary, and it may negatively impact a reader's experience with _The Turing Way_.\n\n```{figure} ../../../../figures/many-table-of-contents.*\n---\nname: many-table-of-contents\nalt: A subchapter in The Turing Way with three table of contents. Two that are generated by Jupyter Book and one made by the chapter author.\n---\nThe manually written table of contents is unnecessary as Jupyter Book auto-generates two separate table of contents.\n```\n\n#### Demo\n\n::: {iframe} https://www.youtube.com/embed/Prv23kGekVY\n:width: 100%\n:::\n\n\n(ch-consistency-structure-hr-citing)=\n### Ensure external sources are properly cited and referenced\n\nAs described in the {ref}`style guide<ch-style-citing>`, _The Turing Way_'s book-wide references are stored in a BibTeX file called `references.bib`.\nWhen writing new content, ensure that information culled from external sources are cited using the BibTeX format and added to the `references.bib` file as appropriate.\n\nThe {ref}`style guide<ch-style-citing>` demonstrates how to add a new reference to the centralised BibTeX file, and shows how this reference can be included in your writing.\n\n(ch-consistency-structure-soft-req)=\n## Soft Requirements\n\nSoft requirements that deal with _The Turing Way's_ structure include:\n\n(ch-consistency-structure-sr-summary)=\n### Check 1: Ensure each chapter has a good summary in its landing page\n\nA chapter with a good summary gives the reader an overview of the content that follows.\nIdeally, summaries should communicate the main idea of the chapter and identify any supporting detail, but be brief and precise.\nSummaries should also adequately cross-reference the chapter's subchapters, for the benefit of readers who may want to quickly explore the topics the summary introduces.\nChapters in _The Turing Way_ that contain summaries that do not fit these criteria may need to be reworded or rewritten.\n\n(ch-consistency-structure-sr-modular)=\n### Check 2: Split long chapters into smaller subchapters so they are modular\n\nLong chapters may be difficult for some readers to go through.\nFurthermore, very long content can be intimidating for other readers who may only be interested in the main ideas the chapter talks about.\nTherefore, to make  _The Turing Way_ easier to read, long chapters should be appropriately modularised.\n\nWhen keeping chapters modular, ensure that its subchapters only talk about one aspect of the overall topic.\nFor example, if a chapter on Machine Learning was to be written for _The Turing Way_, such a chapter should contain at least three subchapters that each focus on Supervised Learning, Unsupervised Learning, and Reinforcement Learning.\n\n(ch-consistency-structure-sr-redirects)=\n### Check 3: Add redirects when removing, renaming, or moving pages\n\nTo avoid breaking links that others may have made to content in the book if you move, remove or rename a page please specify a redirect to a suitable new location in the book.\n\nThis is applicable to any change which results in a change to a URL, such as moving or renaming a subchapter.\nRe-arranging, renaming, and in particular deleting things should be discussed as a part of any issue, or pull request proposing them.\nWhen thinking about re-organising any content, consider that it might also be suitable to include it in one of the [pathways](#ch-infrastructure-pathways) which provide curated subsets of the book's content related to particular themes and roles.\n\nFor details of how to specify a redirect please the the [Redirects](#ch-infrastructure-redirects) page.\n\n"
  },
  {
    "path": "book/website/community-handbook/style/style-blocks.md",
    "content": "(ch-style-blocks)=\n# Special Content Blocks\n\nWhen writing a new chapter or revising an existing one, you may wish to add notes that do not fit in with the rest of the chapter's narrative but may be useful to the readers and help them understand the chapter better.\n\n(ch-style-blocks-admonitions)=\n## Admonitions\n\nJupyter Book allows the use of special content blocks, called admonitions or call-outs, to highlight a piece of text that needs to stand out from the rest the content on a page.\nThis visually separates the block of text from the rest of the page, and ensures that it easily captures the reader's attention.\n\nThere are a number of built-in, named call-outs.\nEach of these have different styling suitable to their purpose.\nThese are,\n\n- note\n- important\n- hint\n- seealso\n- tip\n- attention\n- caution\n- warning\n- danger\n- error\n\nTo add a call-out to your page, use the named directive.\nFor example, to create a note,\n\n````\n```{note}\nThis is a sample note!\n```\n````\n\nwhich renders as follows,\n\n```{note}\nThis is a sample note!\n```\n\nIf you wanted to warn the reader about something, you may make a warning block using the following directive,\n\n````\n```{warning}\nThis is a stern warning!\n```\n````\n\nNotice this call-out has a different title, icon, and colour to the note above,\n\n```{warning}\nThis is a stern warning!\n```\n\nYou can modify an admonitions title, and make the block dropdown like this,\n\n````\n```{hint} A call-out hint!\n:class: dropdown\nYou can make a call-out dropdown by adding the dropdown class!\n```\n````\n\nwhich renders as,\n\n```{hint} A call-out hint!\n:class: dropdown\nYou can make a call-out dropdown by adding the dropdown class!\n```\n\nYou can read more about call-outs in the [MyST Markdown documentation](https://mystmd.org/guide/admonitions).\n\n(ch-style-blocks-tables)=\n## Tables\n\nYou can create tables using the `table` directive.\nThe tables themselves are written using [GitHub Flavoured Markdown](https://github.github.com/gfm/#tables-extension-).\nUsing the table directive lets you add a label so you can cross-reference the table.\n\nFor example,\n\n````\n```{table} My table\n:label: example-table\n:align: center\n| Name       | Job                  |\n| ---        | ---                  |\n| Sam Spade  | Private investigator |\n| Harry Lime | Smuggler             |\n```\n````\n\nwhich renders as,\n\n```{table} My table\n:label: example-table\n:align: center\n| Name       | Job                  |\n| ---        | ---                  |\n| Sam Spade  | Private investigator |\n| Harry Lime | Smuggler             |\n```\n\nand can be references with `[](#example-table)` [](#example-table).\n\nYou can read about other ways to write tables in the [MyST Markdown documentation](xref:myst-guide/tables).\n\n(ch-style-blocks-code)=\n## Code and literal text\n\nYou can write blocks of literal text using three backticks.\nFor example,\n\n````\n```\nhello\n```\n````\n\nrenders as,\n\n```\nhello\n```\n\nYou can ensure that any code (or {term}`Markdown`) chunks you have in the guide have the code syntax highlighted by mentioning the language in question.\nAs an example, if you want to have some R code, when you open the chunk with three backticks you can add the language name immediately after it,\n\n````\n```R\nx <- c(1:21)\n```\n````\n\nrenders as,\n\n```R\nx <- c(1:21)\n```\n"
  },
  {
    "path": "book/website/community-handbook/style/style-citing.md",
    "content": "(ch-style-citing)=\n# Citing and Referencing\n\nIn [MyST Markdown](xref:myst-guide) you can make citations in two ways, using DOIs or the bibliography.\nIf you want to cite an article with a DOI, you can use a [DOI link](https://mystmd.org/guide/citations#doi-links).\nWe maintain a centralised [BibTeX](http://www.bibtex.org/) bibliography file containing references.\nThe bibliography file is located in the book repository, [`./book/website/references.bib`][turingbib].\n\n## DOI citations\n\nYou can reference a document by its DOI simply by linking to the DOI url.\nFor example, `[_The Turing Way_](https://doi.org/10.5281/zenodo.15213042)` renders as [_The Turing Way_](https://doi.org/10.5281/zenodo.15213042).\nNote that this _only_ works for the `doi.org` url and not, for example, a `zenodo.org` url.\n\nYou can also let MyST create a citation string using the DOI string and the prefix `doi:`.\nFor example, `[](doi:10.5281/zenodo.15213042)` renders as [](doi:10.5281/zenodo.15213042).\n\nYou can read more about DOI links in the [MyST Markdown documentation](xref:myst-guide#doi-links).\n\n(ch-style-citing-bibliography)\n## Bibliography\n\n### BibTeX file basics\n\nBibTeX files are a way to format lists of references in a structured way.\nBasic elements of an entry include a reference type, a unique citation key, and a series of key-value pairs that describe the reference (for example, author or title).\n\nThere are a number of keywords for different references types in BibTeX.\nLuckily, there are tools to help format references into BibTeX syntax.\nIf you know the DOI for your reference, you can use [doi2bib](https://doi2bib.org/) to help populate a good enough BibTeX entry.\nFor example, [here](https://doi2bib.org/bib/https://doi.org/10.5281/zenodo.3233853) is a good enough BibTeX entry for The Turing Way handbook itself.\nAnother good tool is [Google Scholar](https://scholar.google.com/), where you search for a reference, click on the large double quotes `\"` or activate the pop-up menu labeled \"Cite,\" and then click on \"BibTeX\" near the bottom.\n\nExamples of listing a BibTeX-formatted reference are shown below.\n\n### Adding a new reference in `references.bib`\n\nYou can edit reference file locally using a method from the following:\n\n- Edit [`references.bib`][turingbib] directly using a text editor\n- Edit [`references.bib`][turingbib] directly using a managing program such as [JabRef](http://www.jabref.org/) (Linux, Windows, macOS) or [BibDesk](https://bibdesk.sourceforge.io/) (macOS)\n\nWe use a standard BibTeX format to add a new entry.\nFor example, there is an entry in the [`references.bib`][turingbib] file as:\n\n```\n@article{baker2016reproducibility,\n    author={Baker, Monya},\n  \ttitle={Reproducibility crisis?},\n  \tjournal={Nature},\n  \tvolume={533},\n  \tnumber={26},\n  \tpages={353--66},\n  \tyear={2016}\n}\n```\n\n### Citation key style-guide\n\nWe recommend using the following structure for citation keys:\n\n```\nAuthorYYYYword\n```\n\nWhere:\n\n1. `Author` is the surname of the first author (`Baker` above)\n2. `YYYY` is the year (`2016` above)\n3. `word` is the first meaningful word in the title (`reproducibility` above). Note, this is subjective―choose a name that makes it easy to remember the reference when you see the citation key.\n\n### Adding a new reference in the text\n\nTo cite an item in the bibliography, use the citation key (from [`references.bib`][turingbib]) with an `@` prefix.\nFor example, `@baker2016reproducibility` renders as @baker2016reproducibility.\n\nYou can cite multiple items at once by separating them with semi-colons and enclosing them in square brackets.\nFor example, `[@baker2016reproducibility; @Markowetz2015]` renders as [@baker2016reproducibility; @Markowetz2015].\n\nYou can read more about the markdown citation syntax in the [MyST Markdown documentation](xref:myst-guide/citations#markdown-citations).\n\n### Sphinx-style Citation Roles\n\nMyST also support the older style of [citation role](xref:myst-guide/citations#citation-roles) used in Jupyter Book v1.\nThese are not preferred for new citations, but you may see existing citation in this style in the book.\n\n[turingbib]: https://github.com/the-turing-way/the-turing-way/blob/main/book/website/references.bib\n"
  },
  {
    "path": "book/website/community-handbook/style/style-consistency.md",
    "content": "(ch-consistency)=\n# Maintaining Consistency\n\n_The Turing Way_ is an open-source project that empowers contributors around the world to leverage their skills, knowledge, and expertise to build and expand its content.\n_The Turing Way_ guides are continually evolving, with multiple chapters co-developed by individuals from varied backgrounds - who are all passionate about sharing knowledge around data science and research.\nTo sustain and support this vibrant community, _The Turing Way_ book should remain consistent and accessible as it evolves.\nThe {ref}`ch-style` chapter already provides guidelines for maintaining a consistent style across the book. However, not all chapters follow these suggestions since they're often written asynchronously by different authors.\nReviewing consistency across _The Turing Way_ alone is reasonably challenging. This points towards a need to encourage and support our contributors to maintain consistency throughout the chapters in _The Turing Way_ guides.\nTherefore, this chapter will outline a step-by-step consistency checklist that will guide our contributors.\nEach step will emphasize a consistency check to look out for as they design and develop chapters in _The Turing Way_ or bring consistency to existing chapters.\n\n(ch-consistency-requirements)=\n## Hard vs Soft Requirements\n\nItems in the consistency checklist are categorised into hard and soft requirements.\nHard requirements are essential consistency checks that a chapter must pass so that _The Turing Way_ builds without errors.\nMoreover, they make the chapter readable and accessible to everyone.\n\nSoft requirements, on the other hand, are nice-to-have consistency checks that a chapter should pass.\nThese checks greatly enhance the overall look and feel of the book, but can be safely ignored if they cannot be integrated into your contribution.\nYou can always return to review your past contributions and enhance their content.\n\nAn overview of these requirements is itemised {ref}`below <ch-consistency-requirements-checklist>`.\nFor easy description, these consistency checks are classified by format, structure, and language. The subchapters explain these in more detail and describe how they can be achieved.\n\n```{important} Please note that these requirements are not exhaustive or definitive, and neither are their classifications rigid.\nMoreover, no items are inherently more important than the other.\n\nIf you identify more consistency issues that need to be addressed, join the conversation [here](https://github.com/the-turing-way/the-turing-way/issues/1174).\n\n```\n\n```{figure} ../../../figures/theturingway-consistency.*\n---\nheight: 400px\nname: theturingway-consistency\nalt: >\n  Illustration by Scriberia for The Turing Way, showing a staircase with the bottom step at the bottom left-hand corner of the illustration and the top of the staircase at the top right-hand corner of the illustration. Holding up the staircase are three pillars: formatting, structure and language. These are the 3 key ideas of the pathway to maintaining consistency for The Turing Way. Furthermore, there are 3 people on the staircase; one person is standing between two new contributors and guiding them up the stairs. Finally, in the top left-hand corner there is a phrase reading \"GUIDING TOWARDS TURING WAY CONSISTENCY\".\n---\nPathway to maintaining consistency. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n(ch-consistency-requirements-checklist)=\n### Consistency Checklist\n\n#### Formatting\n\nREQUIREMENT | CHECK | EXAMPLE\n----------- | ----- | -------\nHard | Use {term}`Markdown` for creating your content (see this [WordPress cheatsheet](https://wordpress.com/support/markdown-quick-reference/)).\nHard | Use the headers in sequential order. For example, starting the top level with h1 tag `#`, second-level header with h2 tag `##` and so on. |\nHard | Add labels to chapters, subchapters and images to enable cross-referencing as described in the {ref}`style guide<ch-style-crossref>` |\nHard | Use `MyST` for image formatting as described in the {ref}`style guide<ch-style-figures>` | Use public domain images that are less than 1MB in size and cite appropriately.\nHard | If you are using a colon (`:`) in the title of your chapter/subchapter, ensure that the whole title is escaped with quotation marks (`\"`) in the `myst.yml` file. Not doing so will cause the book build to fail due to YAML errors. | `- title: \"Case Studies: Choosing an ML License\"`\nSoft | Ensure that the names of chapters/subchapters are short and map exactly to how they are titled in the `myst.yml` |\nSoft | Ensure proper title-casing for headers | Capitalise the first, last and 'important' words of every title; for example, 'Snow White and the Seven Dwarves'.\n\n\n#### Structure\n\nREQUIREMENT | CHECK\n----------- | -----\nHard | Ensure chapters follow a structure as described in the new [chapter template](https://github.com/the-turing-way/the-turing-way/tree/main/book/templates/chapter-template) |\nHard | Do not add a 'table of contents' in chapters or subchapters as it is auto-generated by the Jupyter Book |\nHard | Ensure external sources are properly referenced and included in the centralised BibTeX file as recommended in the {ref}`style guide<ch-style-citing>` |\nHard | Do not add any empty files in the `myst.yml`, instead create an issue for new chapters |\nSoft | Ensure each chapter has a good summary on its landing page along with links to its subchapters. |\nSoft | Split long chapters into smaller subchapters so they are modular. |\nSoft | If you delete, change the name of, or move a page in `myst.yml` add a [redirect](#ch-infrastructure-redirects) |\n\n\n#### Language\n\nREQUIREMENT | CHECK |\n------------ | ----- |\nHard | Ensure chapters do not use any Latin abbreviation as discussed in the {ref}`style guide<ch-style>` |\nHard | Ensure correct grammar and a consistent tone across the book with the help of 1-2 reviewers |\nHard | Ensure chapters use a consistent language, for example, if you choose to write in British English, maintain that throughout |\n\nThese checks are further explained in the {ref}`Formatting<ch-consistency-formatting>`, {ref}`Structure<ch-consistency-structure>`, and {ref}`Language<ch-consistency-language>` subchapters.\n"
  },
  {
    "path": "book/website/community-handbook/style/style-crossref.md",
    "content": "(ch-style-crossref)=\n\n# Cross-Referencing Sections and Chapters\n\nWe recommend using targets as described in the [MyST Markdown documentation](xref:myst-guide/cross-references#targets-and-labels-for-referencing).\nThese look like `(my-label)=`, where `my-label` is the label of the target.\nIt is a flexible system which allows you to label many elements of a document including files, headings, lists, figures and even paragraphs.\n\nYou can use labels to create a reference to your target in any part of the book.\nThis is very helpful because you can make references without worrying about the relative or absolute paths of the file.\nAlso, if the element which you are referencing moves, your cross-reference will still work as long as the label is unchanged.\n\nIn this document, we have provided examples to describe how you can use labels for different chapters or part of chapters within the book.\nWe have also defined a naming convention for labels for _The Turing Way_ to ensure that the locations of these labels in the book are identifiable by their name.\n\n## Labels and references\n\nTo add a label for a section or a chapter/subchapter, use a syntax of the following pattern before the element you wish to label:\n\n```\n(my-label-name)=\n# The thing that I want to label\n```\n\nThere are a number of ways to reference a label.\nThese are described in the [Myst Markdown documentation](xref:myst-guide#link-references).\nWe prefer the short syntax, which will automatically generate the link text.\nThese cross references look like `[](#ch-style-crossref)`, which renders as [](#ch-style-crossref).\nYou can change the link text by writing in the first set of square brackets.\nFor example, `[My custom cross-reference](#ch-style-crossref)` renders as [My custom cross-reference](#ch-style-crossref).\nOther styles can be used if you want to customise the link text or use another style.\n\nYou will also see references using the older roles like ``{ref}`my-label` `` in the book.\nCross-references using this style will still work but are not preferred.\n\n## _The Turing Way_ naming convention for labels\n\nWe recommend using the following naming standard for labels, which will allow different authors and contributors of _The Turing Way_ to intuitively identify the locations of the files where these labels have been created.\n\nThe following naming convention for the labels for different chapters:\n\n```\n(sectioninitials-filename)=\n```\n\nHere, the first placeholder `sectioninitials` should be replaced by the initials for different sections in the book and the second placeholder `filename` should be replaced by the name of file where the label is being created.\n\nFor the different Guides of the book, we will use the following `sectioninitials`:\n\n- Reproducible Research: `rr`\n- Project Design: `pd`\n- Collaboration: `cl`\n- Communication: `cm`\n- Ethical Research: `er`\n- Community Handbook: `ch`\n\nFor example, in the guide `Reproducible Research`, we have a chapter called `Overview`.\nWe have created a label for that chapter called `rr-overview` by adding the label on the top of the header by using the following directive\n\n```\n(rr-overview)=\n# Overview\n```\n\nSimilarly, for different subchapters we recommend extending the label name with another placeholder for the subchapter's name.\nFor example, `rr-overview-resources` is a label in the guide \"Reproducible Research\" (rr) for the subchapter \"Resources\" for the \"Overview\" chapter (overview-resources).\nThis label can be created by using the following directive in the corresponding file:\n\n```\n(rr-overview-resources)=\n# Resources\n```\n\nIn the same manner, for different sections in a subchapter we recommend extending the label name with another placeholder.\nThis can be chosen by the authors, which should be a short yet sensible name for the section where the label is being created.\nFor example, `rr-overview-resources-addmaterial` is a label in the guide \"Reproducible Research\" (rr) for the subchapter \"Resources\" for the \"Overview\" chapter (overview-resources) for the section for \"Additional Materials\" (addmaterial).\nThis label can be created in the corresponding file for the suggested section name using the following directive:\n\n```\n(rr-overview-resources-addmaterial)=\n## Additional Material\n```\n"
  },
  {
    "path": "book/website/community-handbook/style/style-custom-roles-and-directives.md",
    "content": "(ch-style-roles-and-directives)=\n# Custom Roles and Directives\n\nMyST [roles](xref:myst-spec/overview#roles) and [directives](xref:myst-spec/overview#directives) extend the behaviour of {term}`Markdown`.\nThey can be used to add features that are not part of [CommonMark](xref:myst-spec/commonmark), or to automate common or complex structures with reusable commands.\nThe MyST guide has documentation for the built in [roles](xref:myst-guide/roles) and [directives](xref:myst-guide/directives)\n\nWe can write our own roles and directives to help improve the books consistency and make writing easier.\n\n## Directives\n\n(ch-style-roles-profile)=\n### Profile\n\nThe profile directive is used to generate profiles for [](#contributors-record).\nThe argument is the name of the person being profiled.\nThere are a number of options to add information to a profile, all of these are optional.\n\nIt is best to use a YAML block to write the options as this allows you to write multi-line blocks for the biography.\n\nHere is an example profile,\n\n```Markdown\n:::{profile} Your Name\n---\nroles: >\n    semi-colon separated list;\n    of your roles;\n    in the community\ngithub: JimMadge # <GitHub id without leading @>\norcid: 0000-0001-6044-164X # <orcid>\nmastodon: JimMadge@fosstodon.org # <Mastodon id without leading @, like person@mastodon.social>\ntwitter: # <Twitter id without leading @>\nwebsite: # <website url>\nbio: |\n    A short Biography about yourself.\n    You can write a new sentence of each line.\n\n    Leaving a blank line will start a new paragraph.\n    You can use MyST *Markdown* _formatting_ here.\nhighlights: |\n    A few highlights about your experiences in _The Turing Way_\nmore: |\n    Some further information about yourself\nquote: |\n    A personal quote\n---\n:::\n```\n\nWhich renders like,\n\n:::{profile} Your Name\n---\nroles: >\n    semi-colon separated list;\n    of your roles;\n    in the community\ngithub: JimMadge # <GitHub id without leading @>\norcid: 0000-0001-6044-164X # <orcid>\nmastodon: JimMadge@fosstodon.org # <Mastodon id without leading @, like person@mastodon.social>\ntwitter: # <Twitter id without leading @>\nwebsite: # <website url>\nbio: |\n    A short Biography about yourself.\n    You can write a new sentence of each line.\n\n    Leaving a blank line will start a new paragraph.\n    You can use MyST *Markdown* _formatting_ here.\nhighlights: |\n    A few highlights about your experiences in _The Turing Way_\nmore: |\n    Some further information about yourself\nquote: |\n    A personal quote\n---\n:::\n\nThis profile can be referenced using the label `profile-your-name`.\nLike, `[my profile](#profile-your-name)` [my profile](#profile-your-name).\n\n## Roles\n\n(ch-style-roles-github-user)=\n### GitHub User\n\nThe GitHub User role produces a link to a GitHub user profile.\nThis helps ensure links to GitHub profiles are consistent across the book and avoids duplicating the user name in text and in the URL.\n\nThe role takes one argument, which is the name of the profile.\nFor example, `` {githubuser}`the-turing-way` `` renders as {githubuser}`the-turing-way`.\n"
  },
  {
    "path": "book/website/community-handbook/style/style-figures.md",
    "content": "(ch-style-figures)=\n# Using figures in _The Turing Way_\n\nWe encourage you to use images in _The Turing Way_ book chapters to help readers understand the concepts discussed in the chapter better.\nThis section of the style guide will explain how to use [MyST Markdown](xref:myst-guide) to add them to the book with appropriate {ref}`alt text<ch-style-figures-alttext>` and {ref}`captions<ch-style-figures-caption>`.\nThis is sometimes tricky, refer to the {ref}`ch-style-figures-advanced` section for troubleshooting.\n\nWe are very passionate about ensuring that the creators of the original image files (including you!) are {ref}`acknowledged appropriately<ch-style-figures-licence>`.\nPlease do not use images that are not licenced for reuse.\n\nIn this sub-chapter we have used the term **figure** to refer to an illustration that conveys information in the context of _The Turing Way_ chapters.\nThe term **image** is used to refer to the file object itself.\n\n(ch-style-figures-licence)=\n## Open licence\n\nPlease ensure that you attribute the image files fairly and avoid files that are either restricted from reuse or lack reproduction permissions.\n\nThe following recommendations will help you to check that you're using the images according to their licence permissions:\n\n* You can source images in the public domain ([CC0 licence](https://creativecommons.org/share-your-work/public-domain/cc0)) or images shared under an appropriate permissive license.\n  Images that are available under CC-BY 4.0 permissions are very easily interoperable with _The Turing Way_ as this is the same licence as the rest of the content for the book.\n* If you are using your own images, they will be made available under a [Creative Commons Attribution 4.0 International (CC BY 4.0)](https://creativecommons.org/licenses/by/4.0/deed.ast) licence as with the rest of the book.\n* If an image (for example that you have found on the internet) is not available under an open licence please contact the original author of the image and seek permission to reproduce their image.\n  Make sure to ask them **how they would like to be credited** in the caption for the figure.\n\nIn general, make sure to always cite the image properly as directed by the image owners.\n\"Image from the internet\" is not enough.\n\n(ch-style-figures-image)=\n## Image location, type, size and file name\n\nEvery image file used in this book should be located in the directory `book/website/figures` of our [GitHub Repository](https://github.com/the-turing-way/the-turing-way/tree/main/book/figures).\nIf you use a new image file, please add the file in the `figures` directory by either uploading via GitHub, or adding locally and pushing the change online when using git.\n\nPlease upload `.jpg`, `.png`, or `.svg` files that are under 1MB to allow them to load faster in the online book.\nIf your file is larger than 1MB, please use a local image editing tool, or online tool like [IMG2GO](https://www.img2go.com/compress-image) to compress your file.\n\nTo name your image file, please use all-lowercase and separate words with hyphens (-).\n\n(ch-style-figures-alttext)=\n## Alternative text\n\nAlternative text or alt text are used for describing the appearance and function of an image on an HTML page for users who cannot see it. \nAlt text is often used by visually impaired people who use assistive technology such as screen readers.\nAdding alt texts to figures is one of the first principles of web accessibility as it enables the screen reader software to read an alt text to its users helping them understand/explain the content.\n\nIf an image link breaks, alt texts are still functional and read as intended by the assistive technology.\n\nFor more, visit the {ref}`Alt text section<ch-accessibility-alttext>`\n\n**Please note that a height of 500px works very well with _The Turing Way_ book, but this is only a suggestion.**\n\n(ch-style-figures-caption)=\n## Caption\n\nCaptions appear below the figure.\nThey should be short and concise and include a reference to the source where they are taken from.\nIn particular it is important to describe the licence under which the image is re-used.\n\nFor example, a caption might say:\n\n> Making your first pull request on GitHub.\n> _The Turing Way_ project illustration by Scriberia.\n> Used under a CC-BY 4.0 licence.\n> DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n\nThe syntax for this image is as follows, and the way it appears in the book is below the code snippet.\n\n````\n```{figure} ../../../figures/first-pull-request.*\n---\nheight: 400px\nlabel: first-pull-request\nalt: >\n  Cartoon-like sketch of two persons sitting across from each other working on their laptops.\n  A straight arrow on the top indicates the main branch of the repository that they are working on,\n  a pull request is shown by a branch coming out of the main arrow labelled as Clone,\n  followed by a Pull Request with the changes that the first person made in the branch,\n  and the final step labelled as Approved that indicates approval of the changes by the second person.\n  This arrow then merges back to the main arrow/repository.\n---\nMaking your first pull request on GitHub.\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n````\n\n```{figure} ../../../figures/first-pull-request.*\n---\nheight: 400px\nlabel: first-pull-request\nalt: >\n  Cartoon-like sketch of two persons sitting across from each other working on their laptops.\n  A straight arrow on the top indicates the main branch of the repository that they are working on,\n  a pull request is shown by a branch coming out of the main arrow labelled as Clone,\n  followed by a Pull Request with the changes that the first person made in the branch,\n  and the final step labelled as Approved that indicates approval of the changes by the second person.\n  This arrow then merges back to the main arrow/repository.\n---\nMaking your first pull request on GitHub.\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\nPlease make sure that the link to the source is the {term}`digital object identifier <Digital Object Identifier>` not the Zenodo record.\nAlso ensure that you have created a link to the source using {term}`Markdown` link formatting: `[text](url)`.\n\nFigure information with the block delimited by `---` makes use of [yaml](https://yaml.org/spec/1.2.2/) syntax.\nSome characters (such as ':') have special meaning in YAML and using they may create unexpected results.\nThis comes up quite often in longer blocks of text, such as the alt text tag.\nUsing the syntax demonstrated above, `alt: >`, means you can have multi-line outputs and only need to \nescape `|` and `>` to get those literal characters in the final output.\nYou escape a character by prepending it with a backslash for example, `\\|` and `\\>`.\nfor more on multi-line strings in yaml see: [Demystifying YAML Multiline Strings: An In-Depth Guide](https://thelinuxcode.com/yaml-multiline-strings/).\n\n(ch-style-figures-cross-referencing)=\n## Cross-Referencing Figures in Other Chapters\n\nAfter a figure is added in a chapter, it can be referenced using its label.\nFor example, we can reference the figure above like `[](#first-pull-request)`, which renders as [](#first-pull-request).\n\n(ch-style-figures-advanced)=\n## Advanced features and \"gotchas\"\n\nFor more advanced parameters, please visit the [MyST Markdown documentation](xref:myst-guide/figures).\nThat page includes information on how to scale and align the figures.\n\nWe've noticed a couple of \"gotchas\" from contributors to _The Turing Way_ and we'll try to keep this section of the guide up to date for anyone else learning the MyST syntax for figures.\n\n* If things do not work, looking at the **deploy log** (visible at the beginning of your PR) might well give you hints about what the issues are.\n* Figure paths are case-sensitive, make sure the name of the file is all lowercase.\n* `label:` (or `name:`) is for including in reference links, it cannot have spaces.\n* The path to the figure will depend on the position of the .md file in the repo (one or two folders away from `website` will give `../` or `../../` respectively).\n* You can choose to include the file extension with your path, or you can use the format `path/filename.*` to allow Jupyter Book to decide which file to use in the case that multiple filetypes with the same name exist. Jupyter Book will [choose the one most appropriate to the intended output](https://jupyterbook.org/en/stable/content/figures.html#supported-image-formats). This is useful as it means that filetypes can be changed without breaking the pages that use those files.\n* You cannot have line breaks in the alt text, but you can have it in the caption.\n* Both `:` and `\"` have syntactic meaning for Sphinx.\n  That means it is important that you do not use these characters in your alt text.\n"
  },
  {
    "path": "book/website/community-handbook/style/style-glossary.md",
    "content": "(ch-style-glossary)=\n# Glossary\n\n_The Turing Way_ has a {ref}`aw-glossary` file located in the Afterword of the book, which comprises of definitions of different terms in alphabetical order.\nThis file can be updated with the definitions of new terms, which can then be linked to any chapter in the book where this term occurs.\n\nTo add an entry for a new term, please jump to the right alphabetical section of the {ref}`aw-glossary` file and use the following syntax:\n\n```\nNew Term-1\n  A short sentence defining the term. This sentence is indented below the term.\n```\n\nFor example, [terms starting with 'A'](https://book.the-turing-way.org/afterword/afterword.html#a) are written in the same text-block as shown below:\n```\n\n## A\n\n```{glossary}\n\nAcceptance Testing\n A level of the software testing process where a system is tested for acceptability. The purpose of this test is to evaluate the system's compliance with the project requirements and assess whether it is acceptable for the purpose.\n\nAdd\n Command used to add files to the staging area. Allows the user to specify which files or directories to include in the next commit.\n\nAuthors\n  Authors in this context are the contributors to _The Turing Way_ project who have made a substantial contribution to the project such as writing a subchapter, facilitating community interactions, maintaining project’s infrastructure and supporting the participation of others through mentored-contributions. All authors are named co-authors on the book as a whole.\n\n```\n\nTo reference terms in your glossary, use the syntax ```[{term}`def<Term>`]```.\n\nFor example, to link the term 'Authors' to its definition in the glossary file, please use the syntax ```[{term}`def<Authors>`]``` next to where this term appears, which should render online like this: \"*Authors [{term}`def<Authors>`] has been referenced here.*\"\n"
  },
  {
    "path": "book/website/community-handbook/style/style-videos.md",
    "content": "(ch-style-videos)=\n# Videos\n\n## Hosted videos\n\nIf your video is hosted on a platform like YouTube or Vimeo you can use the [`iframe` directive](https://mystmd.org/guide/figures#youtube-videos) to embed it.\nFor example,\n\n````\n::: {iframe} https://www.youtube.com/embed/MdOS6tPq8fc\n:width: 100%\n:align: center\n:label: example-video\nHow to build a Jupyter Book!\n:::\n````\n\nrenders as,\n\n::: {iframe} https://www.youtube.com/embed/MdOS6tPq8fc\n:width: 100%\n:align: center\n:label: example-video\nHow to build a Jupyter Book!\n:::\n\nand can be referenced with `[](#example-video)`, which when rendered will appear as: [](#example-video).\n\nFor youtube, the link formatting you need to use is `https://www.youtube.com/embed/` followed by the code at the end of the video URL (`MdOS6tPq8fc` for the above video example).\n"
  },
  {
    "path": "book/website/community-handbook/style/style-writing-markdown.md",
    "content": "(ch-style-writing-markdown)=\n# Writing markdown\n\n## Write each sentence in a new line (line breaks)\n\nPlease write all sentences on separate lines.\nHaving each sentence on a new line will make no difference to how the text is displayed, there will still be paragraphs, but it will mean that any pull requests will be easier to check; the changes will be on a single line instead of somewhere in a paragraph.\nConsider the example below.\n\n ```markdown\nToday you are you, that is truer than true. There is no one alive who is youer than you. - Dr Seuss\n```\n\nA pull request on this correcting it to have a ‘.’ after Dr would show as a change to the whole paragraph.\nContrast this with the next example which will be displayed online in the exact same way, but would see a change to a single line.\n\n ```markdown\nToday you are you, that is truer than true.\nThere is no one alive who is youer than you.\n- Dr Seuss\n```\n\n### A note on bullet points\n\nIf you want to add multiple sentences inside a bullet point, we recommend indenting the sentences following the initial sentence with two spaces.\nConsider the example below.\n\n```markdown\nDr Seuss said:\n- Today was good. Today was fun. Tomorrow is another one.\n- The more that you read, the more things you will know. The more that you learn, the more places you'll go.\n```\n\nSimilarly to the example in the section above, we should change this to have the sentences on separate lines:\n\n```markdown\nDr Seuss said:\n- Today was good.\n  Today was fun.\n  Tomorrow is another one.\n- The more that you read, the more things you will know.\n  The more that you learn, the more places you'll go.\n```\n\nThis will render the same as the example with all sentences in one bullet point line, but will make it easier to see changes in pull requests.\n\n## Opinions are welcome, but …\n\n_The Turing Way_ book is intended to be only *lightly* opinionated.\nWhilst more opinionated content is allowed, such content should be clearly marked.\nThe best way to do this is by displaying it in a quote box.\nThis can be done by either prefixing every line with the greater than symbol `>`.\nNote, that the formatting will be retained, so we can split each sentence to a new line as recommended before.\n\n```markdown\n> I will not eat them in a house,\n> i will not eat them with a mouse,\n> i will not eat them in a box i will not eat them with a fox,\n> i will not eat them here of there i will not eat them anywhere,\n> I do not like green eggs and ham i do not like them sam i am\n```\n\n(ch-style-writing-markdown-latin)=\n## Avoid latin abbreviation\n\nPlease do not use Latin abbreviations.\nSee the [Gov.uk recommendations](https://www.gov.uk/guidance/style-guide/a-to-z-of-gov-uk-style#eg-etc-and-ie) for details.\n\nSome of these abbreviations are:\n\n```{figure} ../../../figures/latin-abbreviation.*\n---\nheight: 400px\nname: latin-abbreviation\nalt: an image with a list of 3 latin abbreviations\n---\nA list of latin abbreviations for *exempli gratia* (for example), *et-cetera* (so on), and *id est* (that is).\nScreenshot of part of the [list of Common Latin Abbreviations for APA Style](https://blog.apastyle.org/files/apa-latin-abbreviations-table-2.pdf).\nWe use a screenshot instead of plain text to comply with continuous integration tests (see below).\n```\n\nInstead of the first abbreviation in the table for *exempli gratia*, which can sometimes read aloud as ‘egg’ by screen reading software, please use ‘for example’ or ‘such as’ or ‘like’ or ‘including’ - whichever works best in the specific context.\n\nInstead of the second abbreviation in the table for *et-cetera* to indicate open ended list, please start the list with words like ‘for example’ or ‘such as’ or ‘like’ or ‘including’.\n\nInstead of third abbreviation in the table for *id est* that is often used to clarify a sentence, try (re)writing sentences to avoid the need to use it.\nIf that is not possible, use an alternative such as ‘meaning’ or ‘that is’.\n\nAny chapter containing a Latin abbreviation will fail the continuous integration (CI) workflow of the _The Turing Way_ GitHub repository from passing successfully, which is tested by this [Python script](https://github.com/the-turing-way/the-turing-way/blob/main/tests/no-bad-latin.py).\n\n## Tips\n\n### Indentation\n\nIndent the content following each item of a numbered list.\nIf the content is unindented, the list numbering will be reset.\n\nFor instance, please avoid:\n1. First list item\n```markdown\nThis content belongs to the first list item.\n```\n2. Second list item\n\nInstead, the following is recommended:\n1. First list item\n   ```markdown\n   This content belongs to the first list item.\n   ```\n2. Second list item\n\n### External links\n\nWrite external links using \"https://\" instead of \"www\". This ensures they are correctly recognised as hyperlinks.\n"
  },
  {
    "path": "book/website/community-handbook/style.md",
    "content": "(ch-style)=\n# Style Guide\n\nTo ensure that the book can be read easily by everyone, including screen readers and non-native English speakers, we have compiled a set of guidelines to keep a consistent style across all chapters of the book.\n\nWe follow the [GOV.UK guidance](https://www.gov.uk/guidance/content-design/writing-for-gov-uk) to improve accessibility of the resources in _The Turing Way_.\n"
  },
  {
    "path": "book/website/community-handbook/templates/template-bookdash-feedback.md",
    "content": "(ch-template-bookdash-feedback)=\n# HackMD template for feedback\n\n*This template can be used for anonymous feedback by the participants on HackMD at the end of the book dash events.\nThe access permission can be set so that the notes can be read by everyone and edited by anyone.*\n\n```\n\n# Turing Way Book <Month Year>: Pluses and Deltas - <Location>\n\n:heavy_plus_sign:Pluses\n---\n\nPlease add something you liked about the Book Dash. We might use these to advertise the Turing Way project and in impact reports for our funders. If you do not want your comment to be added to the GitHub repository (and therefore be made public) please add the 🤫 at the beginning of the line.\n\n-\n-\n\n:arrow_up_small:Deltas\n---\n\nPlease add something that you would change about the Book Dash. We've never run one before and so all of your comments will be really valuable. If you do not want your comment to be added to the GitHub repository (and therefore be made public) please add the 🤫 at the beginning of the line.\n\n-\n-\n```\n"
  },
  {
    "path": "book/website/community-handbook/templates/template-bookdash-github.md",
    "content": "(ch-template-bookdash-github)=\n# Book Dash GitHub Session\n\n*This template can be shared via a HackMD page to facilitate a pre-event GitHub session for the Book Dash participants. The access permission can be set so that the notes can be read by everyone and edited by signed-in users.*\n\n```\n# Book Dash, DD Month YYYY - GitHub Session\n\n###### tags: `bookdash YYYY` `month` `event`\n\n==If you are new to HackMD, please see this short guide: [https://hackmd.io/\\@turingway/hackmd-guide](https://hackmd.io/\\@turingway/hackmd-guide)==\n\n:::info\n- **Date:** DD Month <--- Update this\n- **Time:** 16:00 - 17:00 London time ([in your time zone](https://arewemeetingyet.com/London/YYYY-MM-DD/16:00)) <--- Update this\n- **Hosts:** (Add name) <--- Update this\n- Join Zoom Meeting: (Add link) <--- Update this\n:::\n\n**Before this meeting:**\n\n- Check the [Friendly GitHub Intro](https://kirstiejane.github.io/friendly-github-intro/)\n\n**At this call**\nwe will give you an optional 1 hour GitHub tutorial:\n\n- Creating a new repository\n- Creating a README file\n- Writing in Markdown\n- Submit changes (to _The Turing Way_) via Pull Request (PR)\n- demo: Review PR, Create issue\n\n## Sign up below by adding your name\n\nName / Institute or affiliation / What specific aspect of GitHub do you find challenging?\n* \n* \n* \n\n🗣️ Welcome!\n\n- Reminder: [Code of conduct & community participation guidelines](https://book.the-turing-way.org/community-handbook/coc.html)\n- If you experience or witness unacceptable behaviour, or have any other concerns, please report it by contacting the organisers - Malvika and Kirstie. ([theturingway@gmail.com](mailto:theturingway@gmail.com)).\n\n### Roll call\n\n- Name / Icebreaker question: Share something from nature that has awed you or brought you peace recently - perhaps a flower, a view, a photo, a scent, a potted plant, a bird that flew past... \n* \n* \n*  \n\n🗣️ Introduction to GitHub\n\n- Training materials: https://malvikasharan.github.io/developing_collaborative_document/\n- Slides: [Friendly GitHub Intro](https://docs.google.com/presentation/d/1_bmRZcLwQrUkVTAMvq7W_x4ML_aphSwVEnkLrDy-Fd4/edit?usp=sharing)\n- Cheatsheet: https://guides.github.com/pdfs/markdown-cheatsheet-online.pdf\n\n**Breakout room task:** \n- \n- \n- \n\n**Resources** :\n\n- Useful GitHub resources\n  - [GitHub for Collaboration (from Mozilla)](https://mozilla.github.io/open-leadership-training-series/articles/github-for-collaboration/)\n  - [Understanding the GitHub workflow](https://guides.github.com/introduction/flow/)\n  - [A Friendly Github Intro Workshop (from Danielle Robinson)](https://daniellecrobinson.github.io/friendly-github-intro/)\n  - [GitHub help](https://help.github.com/)\n  - [Oh Shit, Git!?!](http://ohshitgit.com/)\n  - [Try Git](https://try.github.io/)\n  - [Git book](https://git-scm.com/book/en/v2)\n  - [GitHub glossary](https://github.com/joeyklee/friendly-github-intro/blob/master/glossary.md)\n  - [Writing on Github](https://help.github.com/categories/writing-on-github/)\n  - [Markdown Cheatsheet](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet)\n  - [Git workflow](https://www.atlassian.com/git/tutorials/comparing-workflows)\n \n**Questions / Comments?**\n  - \n  -\n\n**Feedback**\n\nWhat worked? What did not work? What additional support would you need before or during the Book Dash?\n\n-\n-\n```\n"
  },
  {
    "path": "book/website/community-handbook/templates/template-bookdash-index.md",
    "content": "(ch-template-bookdash-index)=\n# Book Dash Main Shared Document\n\n*This template can be shared via a HackMD page to provide all information centrally for the Book Dash participants.\nThe access permission can be set so that the notes can be read by everyone and edited by signed-in users.*\n\n```\n# Book Dash, DD - DD Month YYYY - Index\n\n###### tags: `bookdash 2021` `may` `event`\n\n==If you are new to HackMD, please see this short guide: https://hackmd.io/\\@turingway/hackmd-guide==\n\n[TOC]\n\n:information_source: Pre-event drop-in call, DD Month YYYY\n---\n\n* Session notes: https://hackmd.io/\\@turingway/bookdash-may2021-drop-in <--- update this\n* Sessions:\n    * Session 1: 09:00 - 10:00 London time - [see in your time zone](https://arewemeetingyet.com/London/YYYY-MM-DD/HH:MM)\n    * Session 2: 17:00 - 18:00 London time - [see in your time zone](https://arewemeetingyet.com/London/YYYY-MM-DD/HH:MM)\n- **This call has concluded**\n\n:hammer_and_wrench: GitHub Introduction Session, DD Month YYYY\n---\n\n### For contributors who are new to GitHub - *Open to Public*\n\nOn DD Month YYYY, we will host a one-hour GitHub Introduction Session, from 16:00 - 17:00 London time to walk you through the different steps to make contributions on GitHub.\n\n* Agenda: https://hackmd.io/\\@turingway/bookdash-may2021-github <--- update this\n* Time: 16:00 - 17:00 London time - [see in your time zone](https://arewemeetingyet.com/London/YYYY-MM-DD/HH:MM)\n* Zoom Link: (add link) <--- update this\n\n#### Introductory Materials\n\nIf you can't attend the GitHub Introduction Sessions, please check the following materials:\n\n- [GitHub for collaboration](https://malvikasharan.github.io/developing_collaborative_document/)\n- [Associated presentation](https://docs.google.com/presentation/d/e/2PACX-1vR-Qu4kYulSMGnnAHH9-OonNiLkaJrsolEecEkt0VD5_3PmKWePmiSQwxK3QHoq5gNsL-MJKowmgsAx/pub?start=false&loop=false&delayms=3000)\n- [Video with demo](https://www.youtube.com/watch?v=QRUvQgKbVZQ)\n\n:lower_left_paintbrush: Illustrations by Scriberia Artist\n---\n\n- We will have an artist - Sophie Ong - at the event who you would be able to interact with to help develop illustration relevant to your contribution to The Turing Way\n  - (add dates)  <--- update this\n  - Please use this hackmd to check to see if other projects have booked to work with the artist:\n- Info to work with the artist at this hackmd: https://hackmd.io/\\@turingway/bookdash-may2021-scriberia  <--- update this\n- See reusable images from previous book dash events: [Zenodo link](https://zenodo.org/record/3332807)\n\n:spiral_note_pad: Book Dash Main Events, DD Month YYYY <--- update this\n---\n\n* Intro to The Turing Way & the Book Dash: [Intro slides](ttps://tinyurl.com/bookdash-may21)  <--- update this\n* Shared notes and agenda (basic schedule for each day are given below):\n    * **Day 1, 17 May**: https://hackmd.io/\\@turingway/bookdash-may2021-day1  <--- update this\n    * **Day 2, 18 May**: https://hackmd.io/\\@turingway/bookdash-may2021-day2  <--- update this\n    * **Day 3, 19 May**: https://hackmd.io/\\@turingway/bookdash-may2021-day3  <--- update this\n    * **Day 4, 20 May**: https://hackmd.io/\\@turingway/bookdash-may2021-day4  <--- update this\n    * **Day 5, 21 May**: https://hackmd.io/\\@turingway/bookdash-may2021-day5  <--- update this\n* All notes will be linked here for reference after the event: https://hackmd.io/\\@turingway/bookdash-may2021  <--- update this\n\n## Schedule and Instructions for Each Day\n\n**All the time slots are provided in London time.**\n\n### Day 1:  DD Month YYYY <--- update this\n\nNotes: https://hackmd.io/\\@turingway/bookdash-may2021-day1 <--- update this\n\n#### Development & Networking Sessions <--- update this table\n\n| Time          |    Agenda | Hosts | Attendees |\n| ------------- | ----------| ------|------|\n| 08:00 - 10:30 | see notes | Talk by name | names |\n| 11:00 - 12:30 | ==Themed discussion & Networking: Visual Communication & Illustrations==± | name | names |\n| 14:00 - 16:30 | see notes | No Talk | names |\n| 17:00 - 19:30 | see notes | Talk by name  | names |\n\n±Theme: **TBA**\n\n### Day 2: DD Month YYYY <--- update this\n\nNotes: https://hackmd.io/\\@turingway/bookdash-may2021-day2 <--- update this\n\n#### Development & Networking Sessions <--- update this table\n\n| Time          |    Agenda | Hosts | Attendees |\n| ------------- | ----------| ------|------|\n| 08:00 - 10:30 | see notes | name | names |\n| 11:00 - 13:30 | see notes | name | names |\n| 14:00 - 15:30 | ==Themed discussion & Networking: Accessibility & communication==± | name | names |\n| 17:00 - 19:30 | see notes | name | names |\n\n±Theme: **TBA**\n\n### Day 3: DD Month YYYY <--- update this\n\nNotes: https://hackmd.io/\\@turingway/bookdash-may2021-day3 <--- update this\n\n#### Development & Networking Sessions <--- update this table\n\n| Time          |    Agenda | Hosts | Attendees |\n| ------------- | ----------| ------|------|\n| 08:00 - 10:30 | see notes | name | names |\n| 11:00 - 12:30 | ==\"Show & Tell\" Social Meal: Theme==± (details below) | name | names |\n| 14:00 - 16:30 | see notes | name | names |\n| 17:00 - 19:30 | see notes | name | names |\n\n± **Show & Tell Social Meal: 11:00 - 13:30**\n\nWe will use take a mid-sprint break and get to know each other through a \"show and tell\" hosted breakfast/lunch/dinner session (whichever meal is most appropriate for where you are).\n\n**Order yourself a drink/meal/groceries (budget £25)**\n\n- We hope that you will enjoy a little treat on us.\n- We will reimburse up to £25 for you to have a meal to eat with us.\n- You are welcome to take this opportunity to order your favorite meal from a local takeaway, or purchase ingredients/groceries to cook at home for this social call.\n- We can reimburse only for food or drink (no hard liquor/alcohol). Please check with Malvika if you have any question.\n\n*Show and tell activity:*\n\n- Bring along something that you can show and tell others about a favourite hobby, side project, or work project (other than The Turing Way).\n- We will informally go around the room and have a chance to hear from you, exchange thoughts and ideas beyond our Book Dash plans.\n- You are not required to speak. We will leave the topic entirely up to you to decide. We look forward to learning with you.\n\n### Day 4: DD Month YYYY <--- update this\n\nNotes: https://hackmd.io/\\@turingway/bookdash-may2021-day4 <--- update this\n\n#### Development & Networking Sessions <--- update this table\n\n| Time          |    Agenda | Hosts | Attendees |\n| ------------- | ----------| ------|------|\n| 08:00 - 10:30 | see notes | name | names |\n| 11:00 - 13:30 | see notes | name | names |\n| 14:00 - 15:30 | ==Themed discussion & Networking: Activism in Research==± | name | names |\n| 17:00 - 19:30 | see notes | name | names |\n\n±Theme: **TBA**\n\n### Day 5: DD Month YYYY <--- update this\n\n*This is a community-share out day with 2 optional development sessions. Please note that the Zoom link for today is different from the rest of the days as a few sessions are open to public.*\n\n#### Development Sessions (optional)\nNotes: https://hackmd.io/\\@turingway/bookdash-may2021-day5 <--- update this\n\n| Time          |    Agenda | Hosts | Attendees |\n| ------------- | ----------| ------|------|\n| 11:00 - 13:00 | ==Open to public==± | names | names |\n| 14:00 - 16:00 |           see notes | names | names |\n| 17:00 - 19:00 | ==Open to public==± | names | names |\n\n± **Community Share-out & Contributor Celebration - *Open to Public***\n\nThese sessions are open to public. Feel free to invite your colleagues and friends who would like to connect with The Turing Way community.\nIn this session, all the contributors including the Book Dash attendees will have a chance to share their work with everyone through short demo/presentation.\n\n*Please note that public calls will have different Zoom links than development sessions for the Book Dash attendees.*\n\n**Order yourself a drink/snack (budget £25)**\n\n- We hope that you will enjoy a little treat on us to celebrate such a productive and exciting week.\n- We will reimburse up to £25 for you to have a drink (no hard alcohol) and/or snack of your choice to eat with us. We encourage you to purchase something that you would not usually have and that will bring you joy.\n- We can reimburse only for food or drink (no hard liquor/alcohol). Please check with Malvika if you have any question.\n\n:heavy_plus_sign::arrow_up_small: Pluses and deltas - Final Feedback Document <--- update links\n---\n**IMPORTANT:** Please take a few minutes to **share your highlights** as a comment under issue [#1973](https://github.com/the-turing-way/the-turing-way/issues/1937) and **provide feedback** (pluses and delta: https://hackmd.io/\\@turingway/bookdash-may2021-feedback) from the event.\n\n_These will be extremely valuable for us to explain to our funders why this event was valuable, and to learn about your experience, what you enjoyed and how we can improve future events._\n\nAny day-to-day feedback during the event can be directly shared in the main event document.\n\n:books: _The Turing Way_ links and resources\n---\n\n### Participation guidelines\n\n- Code of Conduct: https://book.the-turing-way.org/community-handbook/coc.html\n- Contribution guideline: #ch-contributing\n\n### Communication channels\n\n- Slack Channel: [Invitation link](https://join.slack.com/t/theturingway/shared_invite/zt-2v7euwuo7-BYstHdKuTNd1ce0puDtBxA)\n    - New to Slack? [See this quick start guide](https://hackmd.io/\\@turingway/slack-guide)\n- Mailing list: https://buttondown.email/turingway/\n- X (formerly Twitter) account: https://twitter.com/turingway\n\n### Acknowledging your contributions to _The Turing Way_\n\n- Contributors Record: https://book.the-turing-way.org/afterword/contributors-record.html\n    - [See how we acknowledge our contributors](https://book.the-turing-way.org/community-handbook/acknowledgement.html)\n\n### GitHub Resources\n\n- GitHub repository: https://github.com/the-turing-way/the-turing-way\n- Online Book: https://book.the-turing-way.org/welcome\n- Impact story: https://www.turing.ac.uk/research/impact-stories/changing-culture-data-science\n    - [Short summary](https://www.turing.ac.uk/sites/default/files/inline-images/Turing%20Way%20oner_0.jpg)\n- Open issues: https://github.com/the-turing-way/the-turing-way/issues\n- Open Pull Requests: https://github.com/the-turing-way/the-turing-way/pulls\n- [Reports from the previous Book Dashes](https://github.com/the-turing-way/the-turing-way/tree/main/workshops/book-dash)\n\n## :gift: Your contribution to the project\n\n**Please read and follow our project [Contributing Guidelines](#ch-contributing)!** :sparkles:\n\nIf you find them confusing, difficult to follow or think that information needs to be added, please let us know! This will help us improve the contributing experience for everyone going forward.\n\n### Managing your contributions to the GitHub repository\n\nThe tl;dr version for easy reference during dashing:\n1. Comment on an [existing issue](https://github.com/the-turing-way/the-turing-way/issues) or open a new issue referencing your addition.\n    * The [issue template](https://github.com/the-turing-way/the-turing-way/blob/main/ISSUE_TEMPLATE.md) will automatically be rendered in the comment section of the new issue page, so all you need to do is edit the placeholder sentences.\n    * Add the ```book-dash-<location>``` label in the column on the right.\n2. [Fork](https://help.github.com/articles/fork-a-repo) the Turing Way repository to your GitHub profile.\n3. Make your changes!\n4. Submit a [pull request](https://help.github.com/articles/creating-a-pull-request).\n    * Open a pull request as early in your contributing process as possible and add the label [WIP] to the title to designate \"work in progress\".\n    * The [pull request template](https://github.com/the-turing-way/the-turing-way/blob/main/.github/PULL_REQUEST_TEMPLATE.md) will automatically be rendered in the comment section of the new pull request page, so all you need to do is edit the placeholder sentences.\n    * Add the ```book-dash-<location>``` label in the column on the right.\n    * As you continue to make changes they will automatically be included in your existing pull request.\n    * Change [WIP] to [Ready for review] in the pull request title when you are happy for your contribution to be reviewed and merged. :tada:\n\n**What types of contributions can you make?**\n\n* Reviewers for your Book Dash application have suggested a few specific topics for each of you\n* You can also collaborate with others or start slowly by checking out the list of [open issues](https://github.com/the-turing-way/the-turing-way/issues)\n* Proofread [existing chapters](https://book.the-turing-way.org) (check for typos, grammar, and links)\n* Add further information to an existing chapter\n* Suggest topics for new chapters (particularly if you can write them!)\n    * A chapter can be minimum 3 paragraphs in length - what can you write 3 paragraphs on?\n    * What skills or tools do you wish you had been taught at the start of your research career?\n* Review ```[Ready to review]``` [pull requests](https://github.com/the-turing-way/the-turing-way/pulls)\n* Contribute to discussion in ```[WIP]``` pull requests and issues\n* Incorporate case studies into the book\n* Checklists for specific skill or recommendation\n* Restructuring the chapter sections (like the Reproducibility chapter)\n* Creative, out of the box ideas!\n* Let us know if you are struggling with contributing in any way so that we can improve our Contributing Guidelines!\n\n#### :bell: GitHub Notifications\n\nClick [here](https://github.com/the-turing-way/the-turing-way/invitations) to accept your invitation to have write access to *The Turing Way* - this gives you agency to merge your own pull requests (once approved!), review other pull requests, and add labels to issues and pull requests.\n\n#### :no_bell: Turn off these notifications\n\nYou're going to start getting lots of notifications from The Turing Way GitHub repository :scream_cat:\n\nYou can control these at the https://github.com/settings/notifications page.\n\nWe recommend leaving the \"Participating\" options checked :white_check_mark: and un-checking the \"Watching\" boxes so you don't get a million different notifications.\n\nHere's a useful help page: https://help.github.com/en/articles/about-notifications\n\nOctobox is a cool tool for managing your GitHub notifications: https://octobox.io\n\n:moneybag: Support grant and subsistence cost: Reimbursement guidelines\n---\n\n**Book Dash Expenses Guidance**\n\n**What is covered?**\n\n-   Food & non-alcoholic drinks up to £50 (you can use this towards groceries to sustain your participation during the book dash)\n-   Accessibility items or costs up to £75  \n\n**Requirements**\n\n-   Expenses will be reimbursed after the Book Dash  \n-   Participants will need to provide receipts for all expenses when they submit for reimbursement\n-   All participants will need to sign and return the policy form and the expense claim form shared via an email\n-   Participants should complete the form in the original currency of the expenses (no need to convert to GBP)  \n-   Forms and receipts **must be submitted by Friday 4 June to [tps@turing.ac.uk](mailto:tps@turing.ac.uk), copying in [msharan@turing.ac.uk](mailto:msharan@turing.ac.uk)**\n"
  },
  {
    "path": "book/website/community-handbook/templates/template-bookdash-notes.md",
    "content": "(ch-template-bookdash-notes)=\n# HackMD Template for Shared Notes\n\n*This template can be used for shared note-taking and information exchange in HackMD during the book dash events.\nThe access permission can be set so that the notes can be read by everyone and edited by any signed-in users.*\n\n```\n# Book Dash, DD Month YYYY - Day 1 <-- create one for each day\n\n###### tags: `bookdash YYYY` `month` `event`\n\n==If you are new to HackMD, please see this short guide: [https://hackmd.io/\\@turingway/hackmd-guide](https://hackmd.io/\\@turingway/hackmd-guide)==\n\n:::info\n- **Location:** Online/in-person\n- **Date:** DD Month YYYY\n- **Document with all links:** (provide link to the index page) <--- update this\n:::\n\n**Development sessions**\n\nCuckoo clock: https://cuckoo.team/tw-bookdash\n\nEach day we will hold 3 development sessions and an one themed discussion/networking session where you can interact with others, continue your discussion outside development session or take a break as it's most sustainable and helpful for your participation.\n\nEach development session will follow the Pomodoro technique that we also use for our coworking calls. We will use [browser-based shared (cuckoo) clock](https://cuckoo.team/tw-bookdash) to manage our time ([Coworking chapter in The Turing Way](https://book.the-turing-way.org/community-handbook/coworking/coworking-motivation.html))\n\nAll time provided in London Time (UTC+1). Please use this link to convert in your time zone: convert time: https://arewemeetingyet.com/london/YYYY-MM-DD/hh:mm (update DD: date, hh:mm: hours:minutes)\n\n**Use the Pomodoro sessions for comfort breaks as needed**\n\n[TOC]\n\n## Introduction to the event\n\n- Intro to Turing Way book dash day :books:\n- GitHub resources and managing your contributions\n- An onboarding breakout room for new members and people who need refresher in GitHub\n- Feel free to propose breakout rooms if you have already identified your groups (topic, language, discussions)\n- Please use this HackMD as extensively as needed\n\n## Groupings for breakout rooms based on the topics of interest:\n\n> Feel free to move between the breakout rooms! \n\n**Room 1 (Reproducibility):** (add name)\n**Room 2 (Ethics):** (add name)\n**Room 3 (Communication):** (add name)\n**Room 4 (Project Design):** (add name)\n**Room 5 (Infrastructure):** (add name)\n**Room 6 (Individual Room)**\n\n:one: Day 1: DD Month YYYY\n---\n\n### :wave: Sign up\n\n*Please add your name to this list, but remember that this is a public document, so use a pseudonym if you'd prefer, or just feel free to leave your name off.*\n\n*Name (pronouns - optional) / Institute / X, GitHub / icebreaker: What song/music/artist/album puts you in a good mood!* :musical_score: \n\n* \n* \n* \n* \n\n### :books: Turing Way and Book Dash\n\n* Intro to The Turing Way & the Book Dash: (Link to intro slides) <---\n* Predash drop-in calls: (Link to the shared notes) <---\n* Project repository on GitHub: https://github.com/the-turing-way/the-turing-way\n* Book is hosted online at: https://book.the-turing-way.org\n* Join Slack channel: An email will be sent to you\n* Join the [mailing list to receive newsletter](https://buttondown.com/turingway)\n* Follow on X: [\\@turingway](https://twitter.com/turingway)\n\n### :busts_in_silhouette::speech_balloon: Planning your contributions: breakout (10 minutes)\n\n*In groups of 3 explore and discuss about what you'd like to see in this book, or how you can contribute.* :sparkles: :space_invader: :rocket: :star2:\n\nYou can use your SMART goals to guide your discussions <-- provide link to the onboarding call's notes\n\n*List what you are working on below! Include your GitHub username, one sentence description and links to relevant issues and pull requests.*\n\n### :dart: Your goals for the book dash <--- used for only day-1\n\n_Share your ideas for contributions and collaboration during the book dash_\n\n*Name: goals/plans/ideas*\n* \n* \n* \n* \n* \n\n\n### Names are added as per your registration form\n\n* Check here if you not sure which session you planned to join (you can change sessions too!): (provide link to the index page) <--- update this\n* Zoom will stay open during the breaks for networking\n\n#### Development session (time block 1)\n\n| Time          |               Suggested agenda |\n| ------------- | ------------------------------:|\n| 07:45 - 08:00 |  Zoom room opens, coffee chats |\n| 08:00 - 08:15 |            Kick-off, check-ins |\n| 08:15 - 09:05 |        Onboarding and resource - preparing for the Book Dash |\n| 09:05 - 09:15 |               Quick report out |\n| 09:15 - 09:50 |       Second Pomodoro :tomato: |\n| 09:50 - 10:00 |               Quick report out |\n| 10:00 - 10:30 |    Troubleshoot, mentored-work |\n\n*Notes from Development session (time block 1)*\n\n**Goal-setting**\n* \n* \n* \n* \n* \n\n*Report Out*\n\n* \n* \n* \n* \n\n#### Themed Discussion and networking Session (time block 2) <-- this block may change the order for different days\n\n==11:00 - 13:30: Themed Discussion and Networking==: Visual communication and illustrations\n\n| Time          |                 Suggested agenda |\n| ------------- | --------------------------------:|\n| 11:00 - 11:30 |       Introduction, coffee chats |\n| 11:30 - 12:20 | Discussion+breakout: Visualisations in the Turing Way |\n| 12:20 - 12:30 |             Wrap-up, coffee chat |\n\n*Themes for discussion session is to be confirmed*\n\n *Notes and reflection from discussion and networking session*\n\n**Prompts for reflections and discussions**\n* \n*\n\n**Notes**\n*\n*\n\n#### Development session (time block 3)\n\n| Time          |            Suggested agenda |\n| ------------- | ---------------------------:|\n| 14:00 - 14:15 |         Kick-off, check-ins |\n| 14:15 - 15:05 |    Onboarding and  resource - no talk |\n| 15:05 - 15:15 |            Quick report out |\n| 15:15 - 15:50 |    Second Pomodoro :tomato: |\n| 15:50 - 16:00 |            Quick report out |\n| 16:00 - 16:30 | Troubleshoot, mentored-work | \n\n*Notes from Development session (time block 3)*\n\n**Goal-setting**\n* \n* \n* \n* \n* \n\n*Report Out*\n\n* \n* \n* \n* \n#### Development session (time block 4)\n\n| Time          |               Suggested agenda |\n| ------------- | ------------------------------:|\n| 17:00 - 17:15 |            Kick-off, check-ins |\n| 17:15 - 18:05 |       Onboarding and  resource - preparing for the Book Dash |\n| 18:00 - 18:45 |       Second Pomodoro :tomato: |\n| 18:45 - 18:55 |               Quick report out |\n| 19:00 - 19:30 |    Troubleshoot, mentored-work | \n\n*Notes from Development session (time block 4)*\n\n**Goal-setting**\n* \n* \n* \n* \n* \n\n*Report Out*\n\n* \n* \n* \n* \n```\n"
  },
  {
    "path": "book/website/community-handbook/templates/template-bookdash-precall.md",
    "content": "(ch-template-bookdash-precall)=\n# Pre-Book Dash Onboarding Sessions\n\n```\n# Book Dash, DD Month YYYY - Pre-Book Dash Onboarding Sessions\n\n###### tags: `bookdash YYYY` `month` `event`\n\n==If you are new to HackMD, please see this short guide: [https://hackmd.io/\\@turingway/hackmd-guide](https://hackmd.io/\\@turingway/hackmd-guide)==\n\n:::info\n- **Date:** (DD Month YYYY)\n    - ==Call 1: 9:00 - 10:00 London time ([in your time zone](https://arewemeetingyet.com/London/YYYY-MM-DD/09:00))==\n    - ==Call 2: 17:00 - 18:00 London time ([in your time zone](https://arewemeetingyet.com/London/YYYY-MM-DD/17:00))==\n- **Hosts:** (Add names)\n- **Join Zoom Meeting:** (add links)\n:::\n\n**Table of content**\n\n[TOC]\n\n:sunflower: Welcome!  \n---\n\nThis call is scheduled for the invited participants of the next Book Dash event hosted by The Turing Way taking place from 17 to 21 May 2021 online.\n\nPlease note that everyone who participates in _The Turing Way_ project is expected to abide by our [Code of Conduct](https://github.com/the-turing-way/the-turing-way/blob/main/CODE_OF_CONDUCT.md).\n\nPlease see more details on [the project](https://github.com/the-turing-way/the-turing-way), [Book Dash](https://book.the-turing-way.org/community-handbook/bookdash.html) and logistics details (shared by email before the event) for the upcoming book dash below the notes.\n\n### Agenda\n\n- Introductions (get to know each other): 10 minutes\n- About the Book Dash ([logistics, accessibility support, socials](https://hackmd.io/\\@turingway/bookdash-may2021-index)): 10 minutes\n- [SMART goal setting exercise](https://www.atlassian.com/blog/productivity/how-to-write-smart-goals) in breakout (or quiet writing): 15 minutes\n- A Scriberia artist will be there!! - would you like to get some illustration? (you should [check this out(https://zenodo.org/record/3332808))\n- Report out and general discussion: 30 minutes\n- Wrap up and final words: 5 minutes\n\n:wave: Introductions and check-ins\n---\n\n### Call 1: Sign up below\n\n*Name (optional: pronouns) - \"icebreaker: your favorite collaborative project (beside the _Turing Way_ :sweat_smile:)\"* \n*\n*\n*\n*\n*\n\n### Call 2: Sign up below\n\n*Name (optional: pronouns) - \"icebreaker: your favorite collaborative project (beside the _Turing Way_ :sweat_smile:)\"* \n*\n*\n*\n*\n*\n\n:information_source: About _The Turing Way_ and the Book Dash\n---\n<!-- Other important details discussed during the meeting can be entered here. -->\n* Detailed [Presentation](https://zenodo.org/record/3615259) about the project ([video](https://www.youtube.com/watch?v=dlycvMU45ek)) <--- update this\n* See the index HackMd: https://hackmd.io/\\@turingway/bookdash-may2021-index <--- update this\n* GitHub: https://github.com/the-turing-way/the-turing-way\n    * [Introductory materials](https://hackmd.io/\\@turingway/bookdash-may2021-index#GitHub-Resources) <--- update this\n\n:dart: Goal setting exercise: Breakout\n---\n\nWe would like to help create some plans and topics they you would like to explore for your contributions in _The Turing Way_. \n- Please note that this goal setting can relate to the suggestions made the reviewers based on your application (see your acceptance email). \n- We will be delighted to work with you to make sure that you are excited about your contribution to the Book Dash event. \n- These topics can be something that is either missing in the existing chapters or need to be updated in the project.\n- You personal motivation could also be to collaborate with others at the event to work on and support what they are working on\n- We also recognise - and celebrate the fact - that plans may change once you meet the other participants!\n\n\nSetting our personal goals will help us prepare better for your participation:\n- **S**pecific: They precisely spell out what you want to accomplish and usually answer the 5 Ws (Who? What? Where? When? Why?)\n- **M**easurable: They provide a specific indicator of success.\n- **A**ttainable: They are realistic.\n- **R**elevant: They are important and practical.\n- **T**ime-bound: They specify a deadline for when the goal will be met.\n\n*We are using [this template](https://freespiritpublishingblog.com/wp-content/uploads/2015/08/setting-smart-goals.pdf) by Danielle R. Schultz (2015).*\n\n<!--COPY IT BELOW-->\n\n> [name=Name]\n> **S**pecific: What do I want to accomplish?:\n> **M**easurable: How will I measure my success?:\n> **A**ttainable: Can I realistically achieve this goal? What steps will I take?\n    > step 1:\n    > step 2:\n    > step 3:\n> **R**elevant: Does this goal meet a specific need?: \n> **T**ime-bound: What is my target deadline? (potentially between 9 and 13 Nov): \n> Goal statement:\n\n> [name=Name]\n> **S**pecific: What do I want to accomplish?:\n> **M**easurable: How will I measure my success?:\n> **A**ttainable: Can I realistically achieve this goal? What steps will I take?\n    > step 1:\n    > step 2:\n    > step 3:\n> **R**elevant: Does this goal meet a specific need?: \n> **T**ime-bound: What is my target deadline? (potentially between 9 and 13 Nov): \n> Goal statement:\n>\n\n## Open questions: (feel free to write them below):\n*\n*\n*\n\n##  Closing:\n\n- \n\n### Wondering where to start?\n\nHere are a few suggestions for a good first contributions:\n\n- Review an existing chapter by suggesting a few changes in [the book](https://book.the-turing-way.org) and/or [repository](https://github.com/the-turing-way/the-turing-way).\n- Flag the unclear or duplicated information in the book by opening an [issue on the GitHub](https://github.com/the-turing-way/the-turing-way/issues).\n- Fix an [old issue](https://github.com/the-turing-way/the-turing-way/issues) or comment on the the [pull requests](https://github.com/the-turing-way/the-turing-way/pulls).\n- Write your personal experience of reproducible research in this [google form](https://goo.gl/forms/akFqZEIy2kxAjfZW2).\n```\n"
  },
  {
    "path": "book/website/community-handbook/templates/template-coworking-collabcafe.md",
    "content": "(ch-template-coworking-collabcafe)=\n# Collaboration Cafe Call Template\n\n*A permanent document exists in the HackMD: [https://hackmd.io/\\@KirstieJane/CollabCafe](https://hackmd.io/\\@KirstieJane/CollabCafe) that is regularly updated with the empty template for the next event.*\n\n## _The Turing Way_ online Collaboration Cafe | DATE MONTH YEAR\n\nThank you for joining the _Turing Way_'s online Collaboration Cafe!\nWe're delighted to have you here ☕️✨🎂\n\n(*We do recommend bringing your actual tea, coffee, water or your favorite beverage to this cafe! :smile:*)\n\n**What?** *The Turing Way is a **lightly opinionated guide to reproducible data science and research**. \nThis collaboration cafe aims to engage with researchers interested in learning and sharing more about this topic in an **online book**: https://book.the-turing-way.org*\n\n*Read more about it here: https://book.the-turing-way.org/community-handbook/coworking.html*\n\n**Who?** ***Everyone** interested in reproducible, ethical, and inclusive data science and research are welcome to join the full or any part of The Turing Way project, community, and/or this call.*\n\n**When?** DD Month YYYY, HH:MM BST (link for local time from https://arewemeetingyet.com)\n\n**How?** *Zoom link will be provided 10 minutes before the call*\n\n***All questions, comments and recommendations are welcome!***\n\n### Useful links\n\n* Shared notes: https://hackmd.io/\\@KirstieJane/CollabCafe\n* The Turing Way GitHub repository: https://github.com/the-turing-way/the-turing-way\n* All about [online Collaboration Cafes](https://book.the-turing-way.org/community-handbook/coworking/coworking-collabcafe.html#breakout-rooms)\n* Turing Way calendar: https://calendar.google.com/calendar?cid=dGhldHVyaW5nd2F5QGdtYWlsLmNvbQ\n* Contribution guidelines: #ch-contributing\n* Chat on Gitter: https://gitter.im/the-turing-way/the-turing-way\n* Join the mailing list: https://buttondown.email/turingway/\n* Can't join the collaboration cafe but want to work with us? Check out the co-working calls during the week: https://hackmd.io/\\@malvikasharan/TW-coworking\n\n### Code of conduct\n\n* [Take a moment to read this](https://github.com/the-turing-way/the-turing-way/blob/main/CODE_OF_CONDUCT.md)\n\n### Pomodoro timer for this session\nhttps://cuckoo.team/collabcafe\n\n### Sign up below\n\n*Name [A fun Icebreaker] + an emoji to represent it ([emoji cheatsheet](https://github.com/ikatyang/emoji-cheat-sheet/blob/master/README.md))*\n\n*(Remember that this is a public document. You can use a pseudonym if you'd prefer.)*\n\n### Conversation Starters\n\n*Advertise and promote your event, or anything exciting you're working on.* ✨\n\n*\n*\n\n### Schedule\n\nhttps://cuckoo.team/tw-collabcafe\n\n| Duration | Activity |\n| ---- | -------- |\n| Start | 👋 Welcome, code of conduct review |\n| 10 mins | Introductions and personal goal setting |\n| 20 mins | 🍅 1st Pomodoro session |\n| 5 mins | ☕️ Break |\n| 20 mins | 🍅 2nd Pomodoro session |\n| 5 mins | ☕️ Break  |\n| 20 mins | 🍅 3rd Pomodoro session |\n| 5 mins | ☕️ Break |\n| 30 mins | Open discussion: celebrations, reflections and future directions |\n| 5 mins | 👋 Close |\n\n### Timers\n\n* 20 minute timer (beach): http://amazingtimer.com/countdown_timer.php?h=0&m=20&s=0&b=26\n* 5 minute timer (cat): http://amazingtimer.com/countdown_timer.php?h=0&m=5&s=0&b=30\n* 5 minute timer (chameleon): http://amazingtimer.com/countdown_timer.php?h=0&m=5&s=0&b=40\n\n### Breakout rooms: Topic proposals\n\n*If you have an idea for a topic you'd like to discuss in a breakout room, please add it below and put your name next to it. If you like one of the topics that is already suggested, please add your name next to that one. Team work makes the dream work. For more information about breakout rooms see [the description on The Turing Way](https://book.the-turing-way.org/community-handbook/coworking/coworking-collabcafe.html#breakout-rooms#breakout-rooms).*\n\nTopic for breakout / Names\n\n*\n\n### Notes and questions\n\n*\n\n### Feedback at the end of the call\n\n*\n\n----\n\n#### Wondering where to start?\n\nHere are a few suggestions for a good first contributions:\n\n- Fix a typo in [the book](https://book.the-turing-way.org) and/or [repository](https://github.com/the-turing-way/the-turing-way).\n- Flag the unclear or duplicated information in the book by opening an [issue on the GitHub](https://github.com/the-turing-way/the-turing-way/issues).\n- Fix an [old issue](https://github.com/the-turing-way/the-turing-way/issues) or comment on the the [pull requests](https://github.com/the-turing-way/the-turing-way/pulls).\n- Write your personal experience of reproducible research in this [google form](https://goo.gl/forms/akFqZEIy2kxAjfZW2).\n"
  },
  {
    "path": "book/website/community-handbook/templates/template-fireside-chat.md",
    "content": "(ch-template-fireside-chat)=\n# Fireside Chat Template for Shared Note-taking\n\n Below we provide a template to enable shared note-taking during the event.\n We currently use [Etherpad](https://en.wikipedia.org/wiki/Etherpad) by [Software Freedom Conservancy](https://pad.sfconservancy.org), see this for example - https://pad.sfconservancy.org/p/ttw-fireside-chat-mar2022.\n \n The choice of the platform is based on the accessibility aspect of Etherpad (web-based and screen-reader app compatible).\n \n```\n# Fireside Chat - Hosted by The Turing Way and [add collaborating project] \n\n## Title\n\n*This session will be hosted by **Moderator1 and Moderator2**.*\n\n*Bring along your tea, coffee, snack and questions about The Turing Way. And, while you wait for the event to start - please read more about the chairs, speakers and the event in this document. 🌻*\n\n* **Date:** DD Month 2022\n* **Time:** HH:MM - HH:MM UTC (starting time in your time zone: [https://arewemeetingyet.com/london/2022-02-11/14:00)](https://arewemeetingyet.com/london/2022-02-11/14:00)) <--  update this\n* **Who should join?** ***Anyone*** interested in learning more about translation of technical resources in data science and research.\n* **How you can join? Eventbrite page:** [Link] <--- **Please register to receive a Zoom link.**\n  * *The Zoom's waiting room is enabled. The host of this call will let you in.*\n  * ***All questions, comments, and recommendations are welcome on this Etherpad or on Zoom chat!***\n\n\n**Fireside Chat is an informal event series that features people and projects in reproducible research.**\n\n*Thank you for joining us! We’re delighted to have you here.*\n\n\n## 🔥 Propose a topic for a Fireside Chat\n\n*Can’t join this event but want to get involved? Check out other ways of connecting with us:* [http://bit.ly/turingway](*http://bit.ly/turingway*)\n\nWe are looking for proposals for future discussions on *building cross-community collaborations, establishing context-specific support systems and working together towards global sustainability of the open infrastructure as part of this event series. \nPlease propose your suggestion below or reach out to *The Turing Way* team members by emailing theturingway@gmail.com, or directly reach out to our Community Manager Anne Lee Steele on Slack.*\n\n### 📢 Who should we feature/invite in the next session?\n\n(This could be you, someone you admire, a project that you are proud of or a group/topic that could be useful to highlight)\n* \n* \n* \n\n\n## 🗣️Welcome!\n\n[Add host's name]\n\n* **Please note that this call will be recorded**\n  * The video will be available on the YouTube channel in the next days: [https://www.youtube.com/channel/UCPDxZv5BMzAw0mPobCbMNuA](https://www.youtube.com/channel/UCPDxZv5BMzAw0mPobCbMNuA)\n  * Turn on your webcam if you don’t mind sharing your face (or off if you do!)\n* Reminder: \n    * **Code of conduct**: [https://book.the-turing-way.org/community-handbook/coc.html](https://book.the-turing-way.org/community-handbook/coc.html)\n       * If you experience or witness unacceptable behaviour, or have any other concerns, please report it by contacting the {ref}`project delivery team<fw-governance-role>`.\n       * To report an issue at the *Exploring gaps and opportunities for multilingual data science* event involving one of the organisers, please email one of the members individually (msharan@turing.ac.uk, kwhitaker@turing.ac.uk)\n* We have enabled the **closed caption (live transcription),** please click on 'cc' at the bottom of your Zoom screen\n\n\n## 👋 Icebreaker\n\n*(Getting to know each other and this Etherpad for collaborative notes)*\n\n**Name / City you are joining from / Social media (if you'd like to connect with others) / Icebreaker question?**\n\n*  \n* \n* \n\n## ⁉ Open Q \\& A  \n* \n* \n* \n\n## 📝 Notes, comments and references by attendees\n* \n* \n* \n\n### Useful links\n\n* *Couldn’t join this event but want to get involved? Check out other ways of connecting with us: *[http://bit.ly/turingway](*http://bit.ly/turingway*)\n* Shared notes for collaboration cafes: [https://hackmd.io/\\@turingway/collaboration-cafe](https://hackmd.io/\\@turingway/collaboration-cafe)\n* Weekly coworking calls: [https://hackmd.io/\\@turingway/coworking-call](https://hackmd.io/\\@turingway/coworking-call)\n* The Turing Way GitHub repository: [https://github.com/the-turing-way/the-turing-way](https://github.com/the-turing-way/the-turing-way)\n* All about online Collaboration Cafes\n* Turing Way calendar: [https://calendar.google.com/calendar?cid=dGhldHVyaW5nd2F5QGdtYWlsLmNvbQ](https://calendar.google.com/calendar?cid=dGhldHVyaW5nd2F5QGdtYWlsLmNvbQ)\n* Contribution guidelines: [#ch-contributing](#ch-contributing)\n* Join us on Slack: [https://tinyurl.com/jointuringwayslack](https://join.slack.com/t/theturingway/shared_invite/zt-2v7euwuo7-BYstHdKuTNd1ce0puDtBxA)\n* Join the mailing list: [https://buttondown.email/turingway/](https://buttondown.email/turingway/)\n\n## Feedback\n\n**What worked?** \n* \n* \n* \n\n**What didn’t work?**\n* \n* \n* \n\n**What would you change?**\n* \n* \n* \n\n**What surprised you?**\n* \n* \n* \n\nLicense: CC BY 4.0, *The Turing Way*, 2021\n\nTimer: [https://cuckoo.team/tw-fireside](https://cuckoo.team/tw-fireside)\n```\n"
  },
  {
    "path": "book/website/community-handbook/templates/template-new-chapter-announcement",
    "content": "### Announcements for new chapter publications\n\nThis markdown template in HackMD provides information and examples to make announcements for new chapters in _The Turing Way handbook_, to be shared in our Slack, the newsletter, and social channels.\n\n* [Template for New chapter](https://hackmd.io/KPSQxvWoTp2CSy5Vz4rYqw)\n\n"
  },
  {
    "path": "book/website/community-handbook/templates/template-newsletter-draft.md",
    "content": "(ch-template-newsletter-draft)=\n# Template for drafting _The Turing Way_ Newsletters\n\n```\nDate: DD Month YYYY\n\n# title\n\nHello Turing Way friends!\n\nThis month ...\n\nShout out ...\n\nEvents ...\n\nFind more details on these topics below 👇\n\n\n## Community meetings\n\n    <About events like Collaboration Café, book dash, other meetings>\n\n## News from the community\n\n    <Any news from the team, community members, and new chapters>\n\n## Relevant resources\n\n    <Any useful resources like relevant publication, training items, and materials from collaborators>\n\n## Tips & Tricks for new contributors\n\n    <Any material that helps the new contributor to relate to the project like impact statement, story, and contributor in focus>\n\n## Acknowledgments and celebrations\n\n    <Shout out and wishes to celebratory news from members, recent meetings where someone talked about Turing Way, Tweets and other online mentions from people other than the team members>\n\n## Special mentions\n\n    <Shout out to the reviewers for this newsletter other than the team members>\n\n## Connect with us!\n\n- [About the project](https://www.turing.ac.uk/research/research-projects/turing-way-handbook-reproducible-data-science)\n- [_The Turing Way_ book](https://book.the-turing-way.org)\n- [GitHub repository](https://github.com/the-turing-way/the-turing-way)\n- [Slack channel](https://join.slack.com/t/theturingway/shared_invite/zt-2v7euwuo7-BYstHdKuTNd1ce0puDtBxA)\n- [Public Gitter channel](https://gitter.im/the-turing-way/the-turing-way)\n- [YouTube Videos](https://www.youtube.com/channel/UCPDxZv5BMzAw0mPobCbMNuA)\n- [X (formerly Twitter) Channel](https://twitter.com/turingway)\n\nYou are welcome to contribute content for the next newsletter by\nemailing [Malvika Sharan](mailto:msharan@turing.ac.uk).\n\n*Did you miss the last newsletters?*\n*Check them out [here](https://buttondown.com/turingway/archive).*\n```\n"
  },
  {
    "path": "book/website/community-handbook/templates.md",
    "content": "(ch-templates)=\n# Template Collection\n\nThis section contains templates for _Turing Way_ events.\n\n```{figure} ../../figures/templates.*\n---\nheight: 200px\nname: templates\nalt: An illustration of a persona, probably an architect making a sketch\n---\nIllustration of a process of sketching. [Royalty free image from Many Pixels](https://www.manypixels.co/gallery/)\n```\n"
  },
  {
    "path": "book/website/community-handbook/translation/translation-getting-started.md",
    "content": "(ch-translation-localisation-journey)=\n# Embark on Your Localisation Journey\n\n\n## Overview of the translation workflow\n\nBy translation workflow, we do not refer only to the phases that contributors should follow during the translation process.\nInstead, we refer to a set of aspects that can lead to a successful and sustainable translation project.\n\n\nOur current Translation Management System is Crowdin.\nAll translations are stored in a fork of _The Turing Way_ repository inside [TWTranslation](https://github.com/TWTranslation), a GitHub Organisation account.\nThis fork is updated regularly to fetch new content and Crowdin adds it automatically and starts an automatic translation based on machine translation and translation memory. \nThe automatic translations need review and approval before being accepted.\n\nPeople in the team complete and review these automatic translations, according to the translation guidelines of each team.\nNew translated and approved files are sent back automatically to the translation fork and will generate a PR to be added to the repository as shown in the figure below.\n\nMost of this process is done automatically, translators do not need to interact with GitHub in any way.\n\n```{figure} ../../../figures/workflow-crowdin.*\n---\nname: create-account-crowdin\nwidth: 80%\nalt: The workflow used in Crowdin.\n---\nThe Translation workflow, which is located on a fork of _The Turing Way_ repository inside the [TWTranslation](https://github.com/TWTranslation) GitHub Organisation account.\n```\n\n## Multideployment of Localised Versions\n\nCurrently, there is no deployment for the book in different languages due to difficulties with Netlify multi-deployment. The Turing Way will be migrating to a different deployment platform to support multi-deployment of the book. The localisation working group has created [a log](https://hackmd.io/0ohbT9_rQJCBWDkC20mzgA?both) that contains challenges and updates in their work to streamline the multi-deployment. This log can be accessed on HackMD and is continually updated.\n\n## Join the Translation Team in Crowdin\n\n- **Create an account in our Crowdin project** through [this link](https://accounts.crowdin.com/register?domain=turingway&continue=%2Fturing-way).\n\n```{figure} ../../../figures/create-account-crowdin.*\n---\nname: create-account-crowdin_\nwidth: 90%\nalt: Sign up in Crowdin or log in before you start the translation. You can also log in using your GitHub or Google account.\n---\n```\n\nYou can either create an account in Crowdin by filling the requested details or through sign up using your GitHub, Facebook, X (formerly Twitter), GitLab or Google account.\n\n```{warning}\n_The Turing Way_ is using [Crowdin Enterprise](https://crowdin.com/enterprise), which is not connected to [crowdin.com](https://crowdin.com/) and needs a separate account.\nIf you have an account in [crowdin.com](https://crowdin.com/), you will still need to sign up again in [Crowdin Enterprise](https://crowdin.com/enterprise) using [this link](https://accounts.crowdin.com/register?domain=turingway&continue=%2Fturing-way).  \n```\n\n\n- **Read the landing page of _The Turing Way_** and README to understand the vision and mission of _The Turing Way_ Book.\n\n```{figure} ../../../figures/README.gif\n---\nname: explore-readme-crowdin\nwidth: 90%\nalt: Crowdsourcing page in Crowdin which has three tabs, one showing the languages, the 2nd one showing the names of the managers and the third one showing the README file.\n---\n```\n\n- **Review the Translation Guidelines.**\n  - What should *not* be translated for consistency and structural integrity.\n  - They are essential to harmonise and standardise translations.\n  Make sure you read them before you start translating for the first time.\n  If you are starting a new language, please make sure you create a repository in the GitHub organisation with your language guidelines. \n  Feel free to comment on these guidelines and suggest new terms anytime. This can be done in the corresponding repositories or in _The Turing Way_ issues.\n\n- **Choose the language you want to contribute to.** We have currently 4 languages with active contributors, which are Spanish, Arabic, Portuguese and Chinese.   \n\n```{admonition} Add A New Language\n:class: tip\nIf your language is not in the list, please feel free to contact one of the managers and ask for a new language through Crowdin or Slack.\n```\n\n```{figure} ../../../figures/add-language-crowdin.gif\n---\nname: add-language\nwidth: 90%\nalt: You can add a new language by contacting one of the managers.\n---\n```\n\n- **Start Translating chapters from the translation priorities list.**\n  - Each language has a Translation Priorities list, which you can find in the README file. \n  Choose one of the high priority files.\n  - You can view the translation priorities list in the task tab in Crowdin, they are also marked with a red arrow. The same list is copied below:\n    - **Urgent** (Welcome, afterword)\n    - **Priority +++** (Overview of the guide of reproducible research, open research)\n    - **Priority ++** (Research data Management, Research Compendia, Licensing)\n    - **Priority +** (Version Control, Overview of Project Design, Creating Project Repositories)\n    - **Intermediate** (Overview of the Guide for Communication, Making Research Objects Citable, Communications in Open Source Projects, Getting Started With GitHub, Research Infrastructure Roles, Introduction to Research Ethics)\n\n    - In order to navigate to the tasks tab inside Crowdin, you need to click in \"Go to the Console\" at the top right and navigate back to _The Turing Way_ project which will direct you to a similar interface but with additional tabs on the left.\n    One of these is the task tab.\n    In the Tasks, we assign tasks to get files translated or proofread by the community or set the due dates and receive notifications about the changes and updates in tasks.\n\n```{figure} ../../../figures/tasks-crowdin.gif\n---\nname: tasks-crowdin\nwidth: 90%\nalt: You can add a new task to Crowdin by clicking on the console at the top and then navigating to the task tab at the side.\n---\n```\n\n- Once you decide which file you will work on, you can type its name in the search bar and click on it. \n  This will direct you to the Crowdin Editor, you will learn more about it in the next chapter.\n\n```{admonition} Top Tip\n:class: tip\nThe arrow icons next to the high priority files are always pointing up and coloured red!  \n```\n\n```{figure} ../../../figures/choose-file-crowdin.gif\n---\nname: choose-file-crowdin\nwidth: 90%\nalt: Use the search box to look into the file that you would like to start translating.\n---\n```  \n\nYou are now all set up to start translating _The Turing Way_. \nIn the next chapter, you will learn how to take advantage of the Crowdin editor to translate strings, proofread or add comments.\n"
  },
  {
    "path": "book/website/community-handbook/translation/translation-hello-crowdin.md",
    "content": "(ch-translation-gateway-crowdsourced-localisation)=\n\n# Your Gateway to Crowdsourced Localisation\n\nThe [Crowdin](https://crowdin.com/) editor is your friend.\nYou can use it to change translation language, proofread, add comments for contributors, contact the managers, vote on translations, view suggestions for translation from Translation Memory or find Machine Translation from Google, Crowdin, DeepL, and others.\n\nOnce you click on any file, you will be directed to the comfortable mode in the Crowdin crowdsourcing editor. \nThere are different modes and editors inside Crowdin but we will only go through comfortable mode and proofreader mode in the Crowdin crowdsourcing editor.\nYou can find more information about the Crowdin Editor from the [documentation here](https://support.crowdin.com/enterprise/getting-started-for-translators/).\n\nThe comfortable mode is divided into four sections:\n1. **Left Sidebar:** It contains all strings in the file that you will translate.\n2. **Middle-top area:** The main working area where you edit/upvote the translations.\n3. **Middle-bottom area:** This section contains suggestions from Translation Memory, Machine Translation (MT) suggestions, and translations by other project participants\n4. **Right sidebar:** You can use it to add comments, report issues, and see the existing Glossary available for the strings.\n\n\n```{figure} ../../../figures/crowdin-editor.*\n---\nname: crowdin-editor\nwidth: 90%\nalt: The crowdin editor with four sections labelled from number 1-4.\n---\n```  \n\nAs shown in the image above, the Middle-top area (3) is the main working area with the source string on the top, and the section where you can type in translations below. \nCrowdin will show you suggestions for translation carried out using three different engines (Google Translate, Crowdin Translate, DeepL), which will show you several possible translations that you can further edit.\n\n```{admonition} Add Translation Engine\n:class: tip\nIf your language of interest works better with different engines (for example, Microsoft Translator, Yandex.Translate, Amazon Translate), please request it and we will do our best to integrate it.  \n```\nStrings may have the following statuses:\n\n- ![icons](../../../figures/icons/untranslated_icon.png) - Untranslated\n- ![icons](../../../figures/icons/partially_translated_icon.png) - Partially translated (in this case, some of the plural forms are not translated)\n- ![icons](../../../figures/icons/translated_icon.png) - Translated\n- ![icons](../../../figures/icons/partially_approved_icon.png) - Partially approved (in this case, some plural forms are not approved)\n- ![icons](../../../figures/icons/approved_icon.png) - Approved\n- ![icons](../../../figures/icons/hidden_icon.png) - Hidden (visible only for project managers and proofreaders)\n\nAn active string is highlighted with the yellow color but you can turn on/off color highlight of strings by clicking on ![icons](../../../figures/icons/preview_filter.png) and show translation preview using ![icons](../../../figures/icons/eye.png).\n\nCrowdin editor won't only show you suggestions of a translation made by the translation engine but also suggestions from translation in different projects that shared their Translation Memory (TM) with _The Turing Way_ and will be detected if the string is has a similarity above 70%.\nThis avoids duplication of effort.\nIf you would like to re-use our Translation Memory (TM) in your own open-source projects, feel free to contact our Translation and Localisation leads.  \n\n```{figure} ../../../figures/translation-memory.*\n---\nname: Translation_Memory\nwidth: 90%\nalt: Translation_Memory suggesting a translation for a project which was carried out in Transifex.\n---\n```  \n\n```{important}\nWe can re-use Translation Memory (TM) from projects translated inside and outside Crowdin (for example, TransLocalize, Crowdin, Transifex) or even that were translated manually from Google docs.\n\nGet in touch if you want to share the Translation Memory (TM) of a previously translated project.\n```\n\n## Adding terms to the glossary\n\nIn order to translate the project's terminology properly and consistently, we keep them in a Glossary.\nIn the Glossary, you can create, store, and manage all the project terminology in one place. \nThe use of glossaries in each language team is optional, but heavily recommended. Each project automatically generates its own Glossary when it's created, and it can be filled with content by each project team. \n\n```{figure} ../../../figures/Glossary.*\n---\nname: Glossary_\nwidth: 90%\nalt: Glossary in Crowdin which is table showing the terms in multiple languages.\n---\nView of the full Glossary of the different languages. \nOnly Crowdin contributors with manager role can access this view.\n```  \n\n\nTo add terms to the Glossary you need to double-select a term, and then select the option \"create term\". \nA new window will appear showing both the English and [language] explanations for that term. \nIf the term is new in that language, you'll need to specify the equivalent word in your language for that English term.\n\n```{figure} ../../../figures/adding-glossary.*\n---\nname: Adding-glossary\nwidth: 90%\nalt: The Crowdin editor shows the glossary term underlined and you can also add new one by highlighting the term and clicking on add term. A new window will be prompt where you can fill its details.\n---\nWorkflow for adding new terms while translating.\n```\n\nFor a file that needs to be translated, you can search which words from it are present in the Glossary by selecting the \"Terms\" icon on the Crowdin editor.\n\nThe terms that were added to the project Glossary will be underlined in the source string.\nYou can check additional explanations added to the term for an accurate translation.\n\n\n```{admonition} Tip\n:class: tip\nYou can upload a glossary or share glossaries across different projects. To do so, contact a contributor with Crowdin manager role.\n```\n\n## Proofreading\n\nProofreading mode will show you the original string, the current translation and some options proposed by Crowdin.\nWhen a string matches past translations, these past translations will appear among the options.\n\n```{warning}\nThe translated files won't be exported to GitHub unless they have been completely translated and proofread.\n\n**Do not translate:**\n- Python book tags `(#welcome)=`\n- Relative file paths\n- Fields `name:` and `alt:` in images\n\n**Check for modifications in:**\n- References\n- Tag and variable order `{ref}<0>text</0>` should have the same structure\n```\n\n```{figure} ../../../figures/proofreading.gif\n---\nname: proofreading.gif\nwidth: 90%\nalt: The proofreading mode in Crowdin editor where you can click in the tick to approve the translation.\n---\n```  \n\nWhen you are proofreading, pay extra attention to punctuation. \nYou can either choose one of these or edit directly in each string's field. \nWhen you reach a satisfactory translation, select Save.\n\n\n## Adding Comments\n\nYou can discuss the meaning of the source string or report issues regarding the source strings in the comment tab (**Right sidebar**). \nYou can also use `@` and the username to direct your message to a specific person. \nYou can point out if the current translation is wrong or if the translation lacks contextual information.\nThe issues are reported to the project managers to correct mistakes or add context and resolve the issues.\n\nThe terms that were added to the project glossary will be underlined in the source string. \nYou can check additional explanations added to the term to help with accurate translation.\nA project manager can also give you permission to add terms to the project glossary.\n\n# Embracing Global Accessibility through Localisation and Crowdsourcing\n\nThe process of translating _The Turing Way_ into multiple languages through crowdsourcing has been a remarkable endeavor, showcasing the power of collaboration and inclusivity within the open-source community.\nThrough the collective efforts of volunteers and contributors worldwide, the project has successfully bridged language barriers and expanded its reach to diverse communities.\n\n```{important}\nThe translation process is an excellent opportunity not only to bring _The Turing Way_ to your language, but also to review and improve its content and make it more accessible and localisable for everyone. \n- If you run into alt text (which should be translated) that is incomplete, too short, or doesn't correspond to the content it's referring to, please create an Issue so we can address it.\n- Some sections of the _The Turing Way_ may be written in a way that makes it difficult for language teams to translate them.\nFor example, translation teams working with languages with gender marks may find it challenging to translate particular contents in a inclusive manner.\nThere can also be references to very specific contexts in some countries, or certain \"internal jokes\" that get (literally) lost in translation.\nYou can help make the handbook more localisable by submitting an Issue that describes the problem, or even better, a Pull Request that modifies the original text to make it more translatable.\n```\n\nCrowdsourcing has played a pivotal role in this translation endeavor, harnessing the collective intelligence and linguistic skills of individuals passionate about open science and reproducible research. \nBy tapping into the wisdom of the crowd, _The Turing Way_ has been able to leverage the knowledge and expertise of a global network, ensuring accurate and contextually relevant translations.\n\nThe benefits of localising and translating _The Turing Way_ are far-reaching.\nIt not only makes this invaluable resource more accessible to non-English-speaking communities but also fosters a sense of inclusivity, enabling researchers from various cultural backgrounds to engage with best practices and principles in research reproducibility.\n\nThe translation of _The Turing Way_ into different languages through crowdsourcing is a testament to the power of collective action and the commitment to open science principles. \nThrough the dedication and collaboration of individuals around the world, _The Turing Way_ continues to evolve and thrive as a comprehensive and inclusive resource for the research community, transcending language barriers and fostering a culture of reproducibility on a global scale.\n"
  },
  {
    "path": "book/website/community-handbook/translation/translation-localisation.md",
    "content": "(ch-translation-localisation)=\n\n# Translation of Open Source Projects\n## Localisation Platforms and Translation\n\n\nLocalisation (l10n) and internationalisation (i18n) are important aspects in the design of any open-source project.\nInternationalisation allows open-source projects to support and satisfy the needs of multiple regions and languages, thus enabling localisation, which is the adaptation to meet the language and cultural context of a specific target locale.\nThe World Wide Web Consortium ([W3C](https://www.w3.org/)) defines internationalisation (i18n) as:\n> \"The design and development of a product, application or document content that enables easy localisation for target audiences that vary in culture, region, or language\"\n\n\nLocalisation involves more than just translation, which only transforms text.\nLocalisation addresses other factors such as text length and cultural references.\nA **Translation Management System (TMS)** manages the localisation process from the beginning of a translation process until the finished product.\nTMS are widely used in Open source projects because they offer many advantages such as workflow automation, transparency, and fast project delivery.\n\n```{figure} ../../../figures/translation-management-systems.*\n---\nheight: 500px\nname: Translation_\nalt: This illustration shows the features of a Translation Management System. It contains Translation Memory, Machine Translation, glossary, QA checks, integration with GitHub, and some community features that facilitate collaboration.\n---\n_The Turing Way_ project illustration by Scriberia.\nUsed under a CC-BY 4.0 licence.\nDOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807)\n```\n\n## Examples for Localisation Platforms\n\nMany open source projects such as [GitLab](https://crowdin.com/project/gitlab-ee), [FreeCAD](https://crowdin.com/project/freecad), [electron](https://crowdin.com/project/electron), [PostgreSQL](https://crowdin.com/project/postgresql), [OBS Studio](https://crowdin.com/project/obs-studio) are localised using various Translation Management Systems (TMS).\n\n- [Transifex](https://www.transifex.com/)\n- [Crowdin](https://crowdin.com/?gclid=CjwKCAiAvriMBhAuEiwA8Cs5ldEGwrOeDJtdY2kneF6vBXx8hYiXD1oJPcWB1SO0VBSTuz60AaDYUhoCj_8QAvD_BwE)\n- [Lokalise](https://lokalise.com/)\n- [Pontoon](https://pontoon.mozilla.org/)\n- [Weblate](https://weblate.org/en/)\n\n### Features of Localisation Platforms\n\n\nLocalisation platforms integrate different tools and formats for assisting the translation process.\nThe translation process can be assisted by machine translation.\nDifferent languages may work better with a specific machine translation engine. For example, Spanish works very well with [DeepL](https://www.deepl.com/) as a translation tool but other languages (for example, Arabic) don't. \nDeepL recommends a series of synonyms when you click on the translated text.\nThis can be useful, especially with long texts.\nFor [Transifex](https://www.transifex.com/), a popular TMS used by several Open Source projects, the automated process is performed outside the platform.\nIn contrast, [Crowdin](https://crowdin.com/?gclid=CjwKCAiAvriMBhAuEiwA8Cs5ldEGwrOeDJtdY2kneF6vBXx8hYiXD1oJPcWB1SO0VBSTuz60AaDYUhoCj_8QAvD_BwE) is integrated with well-known machine translation providers, including Google, Microsoft, DeepL, and Yandex.\n\n\n- **Translation Memory**\n\nTranslation Memory can be described as a database of sentences or texts and their translations that can be automatically reused in and outside the project.\nTranslation Memory can be very powerful in ensuring consistent and high-quality translations across different projects.\n\n- **Glossary**\n\nA glossary is a collection of the key terms that are used in the project to ensure consistency.\nThe glossary helps in creating, storing, and managing all the project terminology in one place.\n\n\n- **Machine Translation**\n\nMachine Translation can speed up the translation process.\nIt provides translation suggestions from automatic translation services like Google Translate and AutoML Translation, Microsoft Translate, and more.\n\n- **Integration with GitHub**\n\nContinuous integration is vital for automation in open sources projects. Many localisation platforms offer integration with GitHub, which synchronises source and translation files between your GitHub repository and translation project.\n\n- **Screenshots for the context**\n\nScreenshots provide context to the text for translation.\nTMS offer the opportunity of attaching screenshots to each of the phrases to provide a visual context to translators\n\n- **QA checks**\n\nMany TMS support QA checks.\nThese can include spelling and/or grammatical errors, inconsistent placeholders, and unbalanced brackets.\nThese QA checks make the translation process smoother for translators.\n\nIn the next chapter, you will be introduced to  the translation and localisation team and how we organise our workflows.\n"
  },
  {
    "path": "book/website/community-handbook/translation/translation-workflow.md",
    "content": "(ch-translation-welcome)=\n# Welcome to the Translation and Localisation Team of _The Turing Way_!\n\nWe are members of _The Turing Way_ community with different motivations to localise the content to different languages.\nFeel free to join the `#translation` channel in [_The Turing Way_ slack](https://theturingway.slack.com).\nYou will also have to create a Crowdin account but more on that {ref}`in the next section<ch-translation-localisation-journey>`\n\nYou can find these activities in [_The Turing Way_ calendar](https://calendar.google.com/calendar?cid=dGhldHVyaW5nd2F5QGdtYWlsLmNvbQ).\nPlease note that these calls are in English but we are happy to facilitate other co-working calls in different languages.\nThe deployment of these translated versions is work in progress, and some parts of this workflow may change in the future. Feel free to contact anyone on the `#translation` channel of the _The Turing Way_ Slack if you have any ideas and feedback to help our work.\n\n## Structure of the Meetings\n### Co-working Calls & Onboarding Calls\n- **Frequency**: Once every month\n- **Chair**: Selected from leads\n- **Membership**: Open to anyone interested in localisation\n- **Objectives**:\n  - A facilitator assists with onboarding in the breakout room.\n  - It is an 'Ask Me Anything' call for any questions.\n  - The main room is dedicated to working on milestones for the localisation work.\n  - Tasks are prepared in advance (in Crowdin Kanban) to support new members.\n### Community Meeting\n- **Frequency**: This is integrated into the _The Turing Way_ Collaboration Café. \n- **Chair**: Selected from leads\n- **Membership**: Open to anyone interested in localisation.\n- **Objectives**: A forum to discuss deliverables/outputs (for example: toolkits, glossary, blog posts), consult the community, and seek feedback.\n### Localisaton Lead Team Meeting\n- **Frequency**: Bi-monthly\n- **Membership**: Exclusive to localisation leads.\n- **Objectives**: To review milestones and decisions related to localisation.\n### Language Leads Meeting\n- **Frequency**: Every four months\n- **Membership**: Language leads plus localisation leads.\n- **Objectives**: To evaluate the work of each language, discuss potential plans, questions, or support needs.\n### Language Localisation Sprints\n- **Frequency**: This is organised by each language lead.\n- **Chair**: Language lead.\n- **Membership**: All language contributors.\n- **Objectives**: Language leads, with support from localisation leads, organise localisation sprints. These can occur during a Book Dash or independently.\n\n## Asynchronous translation\n\nEveryone interested in participating in a translation effort should be able to work asynchronously, so don't worry if you cannot join the fortnightly calls. More info can be found in the next chapter about {ref}`our localisation workflow<ch-translation-localisation-journey>`.\n\n## Join or create a language team\n\nBefore starting a translation project, check out the existing languages being translated.\nIs the language that interests you in the localisation platform? If it isn't, reach out to the team to create a new translation team.\nYou can see the list of language teams and their managers in the project's [Readme](https://turingway.crowdin.com/turing-way#readme/)\nIf the language team already exists reach out to the team so you can join them.\n\nWhen starting a new language translation, there are several aspects to consider in terms of the workflow and translation guidelines.\nThe decisions at this stage include deciding what terms not to translate, deciding on the translation of some terms, and the governance of the team, to determine who is responsible for each section.\n\n### Define translation guidelines\n\nIt is key to set translation guidelines for each language.\nThese guidelines are essential to harmonise and standardise translations.\nThey will guide newcomers on how to translate and review translations and may be useful for future teams translating other projects.\nThese language-specific guidelines should include the use of inclusive language.\n\nFor example, the book [Teaching Tech Together](https://teachtogether.tech/) was collaboratively translated to Spanish.\nThe team defined their guidelines to account for regional differences and avoid gendered and other non-inclusive expressions.\nThey describe the whole process (in Spanish) [here](https://teachtogether.tech/es/index.html#s:traduccion) and an adaptation of their guidelines to English can be found [here](https://github.com/gvwilson/teachtogether.tech#translations).\n\nDocument the translation guidelines for your selected language to be discussed and updated by the rest of the team.\nEvery team has a repository with these guidelines in the GitHub organisation. \nCheck examples for\n[Portuguese](https://github.com/TWTranslation/Portuguese_specific_translation_guidelines), [Arabic](https://github.com/TWTranslation/Arabic-specific-Translation-rules), and [Turkish](https://github.com/TWTranslation/Turkish-specific-Translation-rules).\nWe have also set up a public page for _The Turing Way_ in [Crowdin](https://turingway.crowdin.com/turing-way) with a README file summarising some of the translation guidelines. \nMake sure you read these guidelines before you start translating for the first time.\n\n\n### Create and update a glossary\n\nWe strongly suggest setting a glossary through the localisation platform.\nYou can read more about project glossaries in {ref}`Adding terms to the glossary<ch-translation-gateway-crowdsourced-localisation>`.\nThe Carpentries [Glosario](https://glosario.carpentries.org/) and the [Localization Lab glossary](https://www.localizationlab.org/glossaries) are two good examples of such glossaries.\n\n### Share the translation memory of the project\n\nIn order to facilitate and speed up the translation of a new language, we recommend sharing translation memory with other projects so similar strings can be translated automatically.\n_The Turing Way_ project is linked with the translation memory of a previous version translated in Transifex and another translation for [Open Life Science](https://openlifesci.org/) materials in OLS.\n\nTranslation consistency is crucial and can be made easier when the TMS is used.\nAs soon as you started translating your project, machine learning algorithms engage, and the system shows previous translations for the source words and how often they were used in the project[^1]. \nFor example, in Crowdin, you can hover over the source words underlined with the light dashed line to see the previous translations formed by the translation consistency feature. \nYou can also search earlier translations for specific source words using the Search TM tab.\n\n```{figure} ../../../figures/translation-consistency-previous-translations-editor.*\n---\nname: translation_consistency_previous_translations_editor\nwidth: 90%\nalt: Checking consistency in Crowdin by hovering over the source words underlined and a list of previous translations formed by the translation consistency feature will show.\n---\n```\n\n\n### Team governance\n\nWe have teams for each language, so that no one works alone.\nEach team can decide roles for their project members.\nIn the translation platform, these roles can translate into having different permissions. \nRoles in Crowdin include manager, translator, and proofreader.\n- **Manager** – has similar rights as a project owner except for the ability to manage some of the owner's Resources (for instance, configuring MT engines, advanced workflows, and more) and delete projects.\n- **Proofreader** – can translate and approve strings.\nUnlike the manager, the Proofreader doesn't have access to project settings.\n- **Translator** – can translate strings and vote for translations added by other members.\n\n\n```{figure} ../../../figures/translation-memory-animation.*\n---\nname: translation-memory\nwidth: 90%\nalt: An illustration showing how translation memory can speed up the crowdsourcing of new projects.\n---\nIllustration of translation as a way to reach global accessibility. _The Turing Way_ project illustration by Scriberia.\nUsed under a CC-BY 4.0 licence.\nDOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807)\n```  \n\nIn each co-working or external session, prioritise those chapters that are outdated or close to completion. \nCheck out our {ref}`guidelines<ch-translation-localisation-journey>` for a list of the priorities.\n\n### Decision making\n- If any big changes in the infrastructure of the whole workflow have to be made, they can be documented  and the rest of the team should have reasonable time to see the proposal and approve it. What \"big\" change means, and what \"reasonable\" time means are up to each one--based on common sense, no need to wait forever for a tiny change--, but tagging the relevant team members to prompt a revision/an opinion can be a good practice to have quick feedback and make decisions quicker. \n- Not everybody in the team lead should have to participate to decide on something, maybe only one +1 is enough. If the first person reviewing does not agree or the change needs more discussion, they can call a third member to give an opinion and discuss the change. 3/4 people should be enough to make a decision.\n- Team lead meetings every 1-2 months in the same slot of the translation co-working call. \n\n\n# Translation is a continuous process\n\nAs _The Turing Way_ content grows, the translated content does too. \nWe strongly encourage monitoring the new content and updating the translation fork regularly.\nWhile updates of the translated content might change according to the availability of resources, it is good practice to:\n\n* Set periodical reviews to improve translations\n* Update translation guidelines and glossaries\n\nIf you have any recommendations for improving the translation guidelines or setting up language-specific rules, contact {ref}`the translation and localisation team<fw-governance-roles>`.\nWe are very eager to improve the workflow and make _The Turing Way_ a global project accessible to the wider community.\n\n\nIn the next chapter, you'll be introduced to  Crowdin and how we use it to translate _The Turing Way_.\n[^1]: This image and description are borrowed directly from [Crowdin docs](https://support.crowdin.com/translation-consistency/).\n"
  },
  {
    "path": "book/website/community-handbook/translation.md",
    "content": "(ch-translation)=\n# Translating _The Turing Way_\n\n(ch-translation-prerequisites)=\n## Prerequisites\n\n- There are no prerequisites for this chapter and no knowledge in GitHub or programming is assumed.\n\n(ch-translation-summary)=\n## Summary\n\nThis chapter covers the motivation for translating _The Turing Way_ to other languages, some technical aspects about localisation and internationalisation, and the workflows to start a new language translation or contributing to existing ones.\n\n```{figure} ../../figures/translation.*\n---\nheight: 500px\nname: Translation\nalt: This illustration shows how global accessibility is reached through translation. A diverse team of three people are writing their contribution in each of the pieces of a puzzle. The pieces complete parallel arrows around the Globe. The arrows are labeled \"Constantly updated\" because this process is continuous.\n---\nIllustration of translation as a way to reach global accessibility. _The Turing Way_ project illustration by Scriberia.\nUsed under a CC-BY 4.0 licence.\nDOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807)\n```\n\n(ch-translation-motivation)=\n## Motivation\n\nTranslation is **a key step for internationalisation of _The Turing Way_** and any efforts in this regard are really welcome.\nHaving translated versions of _The Turing Way_ can open the channels for communicating between communities of practice around the world.\nTranslation is part of community building!\n\nPotential translators are members of _The Turing Way_ community who would like to use the materials for teaching and communication and new members that are not yet part of _The Turing Way_ community but can contribute.\n\n```{admonition} Remember\n:class: tip\nYou do not need to be fluent in English to contribute to the translations, you only need to speak your own language.\n```\n\nThe workflows for translation can become confusing at some times and many translation efforts go unfinished for many reasons.\nOur aim is to provide clear documentation so any potential contributor is able to participate.\nAny new member of the community should be able to step in, enter in touch with other members of the translation teams for their languages, and start helping to use the documentation.\n\nIn the next few pages, you will learn how open source projects are translated using translation management systems (TMS), how we organise our translation and localisation efforts inside _The Turing Way_, and how you can get started in translating _The Turing Way_ using [Crowdin](https://crowdin.com/).\n"
  },
  {
    "path": "book/website/ethical-research/activism/activism-case-study-google.md",
    "content": "(er-activism-case-study-google)=\n# Case study: Google Workers & Project Maven\n\nTech workers have historically had low levels of unionisation for a variety of different reasons, including comparatively high pay and status, roles that are often short-term, and a concentration in countries where union levels are low overall (for example, the US).  \n\nWorkers in tech are also sometimes ambivalent about their employer's products and services. \nThis is because the products and services are developed with limited consideration of their impacts on systemic inequalities and injustices.\nHowever, more and more people who work in the industry are speaking up and demanding that companies and organisations consider the ethics and impact of the work they do and who they do that work with. \n\nGoogle is one example of a large tech company where workers have spoken up on several different issues including internal company policy and external contracts. \n\n(er-activism-case-study-google-advocacy)=\n## Advocacy & Workplace Activism by Google Workers \n### Project Maven - 2018\nOne project which faced resistance via workplace activism was Google's Project Maven, a contract with the US Pentagon to use AI to develop more effective drone guidance.\nGoogle employees across the globe who opposed this project spoke up in internal meetings, signed petitions, made memes, and shared personal statements about why they disagreed with the contract.\nSome employees even resigned.\nEventually, the leadership at Google agreed not to seek further contracts with the US Pentagon and also agreed to adopt [\"Ethical AI Principles\"](https://blog.google/technology/ai/ai-principles/) including not using its technology for weapons or surveillance.\n[Source, accessed 8 December 2020](https://jacobinmag.com/2018/06/google-project-maven-military-tech-workers)\n\n### Walkout for Real Change - 2018 \nIn response to allegations of million dollar exit packages for executives accused of sexual harassment against workers, workers at Google offices across the globe walked out demanding: \n* Ending of private arbitration in sexual harassment cases \n* Publication of a transparency report on instances of sexual harassment\n* Further disclosures of salaries and compensation\n* An employee representative on the company board\n* A chief diversity officer who could speak directly to the board\n\nGoogle agreed to end the use of private arbitration in sexual harassment cases, but did not agree to the rest of the demands. \n\n[Source, NYT, accessed 18 May 2021](https://www.nytimes.com/2018/11/01/technology/google-walkout-sexual-harassment.html)\n\n### No Police Contracts - 2020\nIn the wake of protests at the killing of George Floyd in May 2020, over 1,100 Alphabet workers signed a petition demanding that the company stop selling technology to police departments and end existing contracts with police departments with a history of racial discrimination. \nThe company insisted that the contracts were in line with its AI Principles. \n\n[Source, CNBC, accessed 18 May 2021](https://www.cnbc.com/2020/06/22/google-employees-petition-company-to-cancel-police-contracts.html)\n\n(er-activism-case-study-google-union)=\n## Alphabet Worker's Union\n\nThe work that went into speaking out against different issues at Google has now transformed into a new union, specifically for people employed at Google or one of the other companies owned by Alphabet.\nThe union was launched in January 2021 and has over 800 members as of May 2021. \nImportantly, all workers at Alphabet companies, whether they are cleaners or tech workers, on fixed-term contracts or in permanent employment, are eligible to join the union.\nThis broad membership makes it much easier for the workers to organise together and fight for better conditions for everyone in the workplace, rather than segregating people based on the type of work they do. \nIt also reinforces that everyone in the workplace is important and has a part to play in the union, regardless of what their day-to-day role looks like. \n\nThe Alphabet Union is supported by a larger union, [Communications Workers of America](https://cwa-union.org/), who are also [campaigning to help workers in other tech and digital companies to organise in unions](https://cwa-union.org/news/releases/cwa-launches-new-initiative-in-support-of-organizing-tech-and-game-workers). \n\n## Further Resources \n\n* [Alphabet Worker's Union](https://alphabetworkersunion.org/)\n* [Communication Worker's Union - a UK-based union with a dedicated tech branch](https://cwu.org) \n* [Miller C and Coldicutt R, ‘People, Power and Technology: The Tech Workers’ View’ (doteveryone 2019)](https://doteveryone.org.uk/report/workersview/)\n"
  },
  {
    "path": "book/website/ethical-research/activism/activism-env-impact.md",
    "content": "(er-activism-env-impact)=\r\n# The Environmental Impact of Digital Research\r\n\r\nAs multiple reports from the United Nations (such as [IPCC | Climate Change 2023: Synthesis Report](https://www.ipcc.ch/report/ar6/syr/) and [WMO | Global Annual to Decadal Climate Update](https://public.wmo.int/en/our-mandate/climate/global-annual-decadal-climate-update)) have shown, the global climate crisis impacts all of us. From this, reducing carbon emissions has emerged as a means of addressing the climate crisis. For those of us that do computing as part of our day-to-day work, it can form a significant part of our environmental impact, both for us personally and for our organisation(s). In particular, if you or your group does intensive computing, making use of high-performance computers or cloud resources, for example to train intricate models or run complex simulations, the carbon footprint can be sizable.\r\n\r\n\r\n\r\nFor this reason, it is important to consider the environmental impact of the computational work you and your colleagues and collaborators do, including having awareness of the possible scale of it in relation to other activities you undertake as part of day-to-day life. With this awareness, it follows that we should all aim to reduce our carbon footprint for our work activities.\r\n\r\nThis guide helps data and computational scientists to better understand the environmental impacts of their work and projects, as well as providing suggestions for reducing the impact of it.\r\n\r\nThe topic is not new, it has for example been discussed during [CW23](https://software.ac.uk/blog/2023-08-15-tracking-environmental-impact-research-computing).\r\n\r\n(er-activism-env-impact-understanding)=\r\n## Understanding the problem\r\n\r\nMost of us are aware of the general context of our planet being subject to climate change that results largely from human influence, and how this poses a great threat to our society. However, in case you are not, and indeed to emphasise this crucial background, we’ll summarise this background.\r\n\r\n(er-activism-env-impact-climate-change-sumarised)=\r\n### Climate change summarised\r\n\r\nHuman activities, notably the burning of fossil fuels like oil, gas or coal, to generate electricity and to power cars (amongst many other tasks) release greenhouse gases into the atmosphere. These gases, such as carbon dioxide, trap heat in the atmosphere, which in turn raises the temperature of the surface of the Earth. While not linear, over time, [the global average temperature rises](http://climate.nasa.gov/vital-signs/global-temperature/).\r\n\r\n\r\n(er-activism-env-impact-rise-in-temperature)=\r\n### Rise in global temperatures illustrated\r\n\r\nThe rise in this global average temperature is strikingly illustrated by the ‘Warming Stripes’ (‘#ShowYourStripes’) project, a minimalist-style data visualisation created by Ed Hawkins. Average Earth surface temperatures are indicated as stripes in blue hues, representing cooler temperatures, through to red hues, representing warmer ones, where each stripe covers a single year.\r\n\r\nThe general trend shows a progression, over the past few centuries or so, from there being more blue on the left (towards the past) to more red on the right (towards the present). In short, the surface of our planet is, overall and year-on-year, warming!\r\n\r\n\r\n```{figure} ../../../figures/global_warming_stripes.*\r\n---\r\nheight: 500px\r\nname: Global warming stripes, by Ed Hawkins.\r\nalt: Global warming stripes, by Ed Hawkins.\r\n---\r\nGlobal warming stripes, by Ed Hawkins.\r\n```\r\n\r\nThis more verbose figure makes it more explicit what the global warming stripes represent. You can find these and more figures on the [canonical warming stripes page](https://showyourstripes.info/s/globe).\r\n\r\n\r\n\r\n```{figure} ../../../figures/GLOBE---1850-2022-MO-barslabel.*\r\n---\r\nheight: 500px\r\nname: Bars with Scale, by Ed Hawkins.\r\nalt: Bars with Scale, by Ed Hawkins.\r\n---\r\nBars with Scale, by Ed Hawkins.\r\n```\r\n\r\n(er-activism-env-impact-awareness-raising)=\r\n## Awareness raising\r\n\r\nBelow we share some thought-provoking questions about the Environmental Impact of Digital Research.\r\n\r\n- Where in the world did your last computer end up? An estimated 50 million tons of electronic waste are discarded each year. This is equivalent to throwing out 1000 laptops every single second. Less than 20% of e-waste is formally recycled, with 80% either ending up in landfill on developing countries, exposing vulnerable populations and their environment to health and pollution impacts (ref: https://www3.weforum.org/docs/WEF_A_New_Circular_Vision_for_Electronics.pdf).\r\n\r\n- How much unused or inaccessible data do you have on the cloud? In 2021, on average, 35% of enterprise data is “dark,” meaning it has an unknown value, while 50% is redundant, obsolete or trivial. Only about 16% is business-critical, the study concluded. (ref: https://www.veritas.com/content/dam/Veritas/docs/reports/GA_ENT_AR_Veritas-Vulnerability-Gap-Report-Global_V1414.pdf)\r\n\r\n- How much of the world's total electricity will the technological sector use by 2025? It is predicted that by 2025, the technology sector will consume 20% of the world’s total electricity (compared to 7% in 2022). Ref: https://www.tier1.com/the-environmental-impact-of-our-data-storage/)\r\n\r\n\r\n(er-activism-env-impact-reduction-strategies)=\r\n## Strategies for reduction\r\n\r\nThere are several things that can be done to reduce the environmental impact of digital research. In this section we describe some of the possible actions grouped in two major groups, computing and data, and links to external resources that can implement them.\r\n\r\nThese actions are not listed in any order of importance, and implementing any or some of them is better than not doing anything at all.\r\n\r\n\r\nYou can also read 'Ten simple rules to make your computing more environmentally sustainable' {cite:ps}`lannelongue2021ten` and the [Digital Humanities Climate Coalition Toolkit](https://sas-dhrh.github.io/dhcc-toolkit/).\r\n\r\n\r\n(er-activism-env-impact-computing)=\r\n### Computing \r\nAs we engage in research activities, our utilization of computers and code execution significantly affects the environment. In this section, we explore approaches that can be employed to mitigate the environmental impact arising from the computational aspects of our research endeavors.\r\n\r\n(er-activism-env-impact-code-efficiency)=\r\n#### Improve code efficiency\r\n\r\nAs mentioned above, the amount of energy spent on running a computation depends on how long the particular computation runs. One way of reducing the energy spent is to optimize the code to make it run faster. \r\n\r\n\r\nSeveral studies show the energy intensity of computing tasks such as training Natural Language Processing models {cite:ps}`strubell2019nlpenergy,Schwartz2020greenai`, astrophysics simulations {cite:ps}`Portegies2020ecologicalimpact`, bioinformatics {cite:ps}`Grealey2022carbonfootprint`, and so forth. \r\n\r\nOptimizing GPU code for energy efficiency is one way to reduce energy usage {cite:ps}`Schoonhoven2022goinggreen`\r\n\r\n(er-activism-env-impact-hardware-efficiency)=\r\n#### Improve hardware efficiency\r\n\r\nIn some cases it is possible to run hardware in more energy-efficient modes. One relevant example is the ARCHER2 national high-performance computer service in the UK where three different CPU frequencies can be selected at run time. A 2022 study investigated the performance / power use trade off and discovered the power usage could often be reduced without noticeable alteration in the run time of most applications, by changing the CPU frequency to a different value from the three possibilities. As a consequence the service reduced the default CPU frequency and updated the user-facing documentation in this area (see Turner, 2022).\r\n\r\n\r\nFor the Summit supercomputer it is known that about 63.8% of the power is consumed by GPUs \r\n{cite:ps}`Stachowski2020autotuning`.\r\n\r\n(er-activism-env-impact-avoid-tasks)=\r\n#### Avoid unnecessary tasks\r\n\r\nAnother way of reducing energy usage is to avoid running task unnecessarily. Some examples include:\r\n\r\n\r\n* Running CI[[https://book.the-turing-way.org/reproducible-research/ci/ci-options.html](https://book.the-turing-way.org/reproducible-research/ci/ci-options.html)] only when it is useful. For example: do not run unit tests when changes are made in the documentation and not on the code. \r\n* If you do test-driven development, run only tests that have previously failed. In this way you do not need to test code which you already know has been tested. You can use this GH action for limiting when tests (pytest) are run: [https://github.com/marketplace/actions/pytest-last-failed](https://github.com/marketplace/actions/pytest-last-failed) \r\n* Run CI with smaller datasets.\r\n\r\n(er-activism-env-impact-schedule-low-emission)=\r\n#### Schedule tasks at low-emission time\r\n\r\nEnergy usage at different times of the day has different carbon intensity. This means that there is also an opportunity to reduce carbon emissions by running computing jobs at different times of the day. While the energy usage remains the same, the carbon intensity can be lowered in this way.\r\n\r\nThe Climate Aware Task Scheduler (CATS)[https://github.com/GreenScheduler/cats] has been built specifically with this in mind. This tool can calculate how much carbon will be emitted during the run of a specific task, look at the carbon emission forecast, and schedule the task to be run at a time when carbon intensity is low.\r\n\r\n```{figure} ../../../figures/environmental-impact.*\r\n---\r\nwidth: 574px\r\nname: environmental-impact\r\nalt: Cartoon-like sketch depicting the potential environmental impact of digital research. The illustration is mostly done in a teal blue, with a black cloud in the background, with emissions written across it. On the left, a person sits at a desk with a laptop, with a chatbot and \"COMPUTING\" text above, symbolizing digital communication. Behind the chatbot lurks three black cogwheels. In the center, \"EMISSIONS\" emerge from a factory, representing pollution. On the right, a figure throws computers into the ocean, labeled \"WASTE\", indicating electronic disposal issues.\r\n\r\n---\r\nIllustration of the potential environmental impact of digital research.\r\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.8169292](https://doi.org/10.5281/zenodo.8169292).\r\n```\r\n\r\n(er-activism-env-impact-data)=\r\n### Data\r\nThe increasing amount of digital research and the associated storage requirements have implications for the environment, and understanding the environmental impact is key for sustainable scientific research practices. One important aspect to consider is the environmental impact of digital storage:\r\n\r\n\r\n(er-activism-env-impact-data-reduction)=\r\n#### Data reduction \r\nReduction of data volumes is a straight-forward solution to minimize energy consumption in storage systems:\r\n* Compression or deduplication can help to detect and delete repeated information. \r\n* Optimized data requires less time for transfer and consumes less network bandwidth.\r\n\r\n(er-activism-env-impact-data-standardisation)=\r\n#### Standardisation\r\nStoring your data in a standardised data format can have a positive impact on the environment:\r\n\r\n* Utilize data formats that are widely accepted within your community to prevent the need for conversion by those interested in reusing your data.\r\n* Similarly, embrace standardized variable names and, if applicable to your data, employ standardized physical units.\r\n\r\nIn addition, if possible deposit your datasets in domain specific or community archives so that users are promptly informed about the availability of your data. This can also avoid duplication of effort and recomputation/acquisition of the same data.\r\n\r\n\r\n(er-activism-env-impact-data-green-centers)=\r\n#### Green Data Centers\r\nThe usage of shared computing and storage infrastructure is usually a way to reduce the impact of data storage in the environment. The reason is that most data centres invest in energy-efficient servers, storage systems, and networking equipment. This includes using hardware components with high energy efficiency ratings and employing advanced cooling techniques to reduce power consumption. In addition, the implementation of virtualization technologies allows for better usage of server resources.\r\n\r\nFinally, some data centers are shifting towards renewable energy sources (solar, wind, hydroelectric power) and reducing their dependencies on fossil fuels.\r\n\r\n\r\nThe greenest data/HPC centers are listed on the [GREEN500 list](https://www.top500.org/lists/green500/).\r\n\r\nWhenever you can choose, select data centers that are committed to reducing their carbon footprint.\r\n\r\n\r\n### Other resources\r\n#### Computation\r\n* [GreenvAlgorithms](https://www.green-algorithms.org/) \r\n* [Green Algorithms: Quantifying the Carbon Footprint of Computation](https://onlinelibrary.wiley.com/doi/10.1002/advs.202100707) \r\n* [Carbon footprint estimation for computational research](https://www.nature.com/articles/s43586-023-00202-5.epdf?sharing_token=QTc-q5_jBfbwbgHrxjAF3NRgN0jAjWel9jnR3ZoTv0M5cDtvWq4NDOHdun0YacmqG8iEJ146ZGUvxIp3izWvG3qqEI0oN4e5AgJh1ioWOFtL_b-yexmwuBL7nKWggSD22xXBBQe-_M_1jL9gC5WNNOYCZkXrOcuiKp7L_6DvyMI%3D)\r\n* [Energy and Policy Considerations for Deep Learning in NLP](https://www.aclweb.org/anthology/P19-1355) \r\n* [Green AI](http://arxiv.org/abs/1907.10597) \r\n* [On the Dangers of Stochastic Parrots: Can Language Models Be Too Big?](https://doi.org/10.1145/3442188.3445922) \r\n* [Digital Humanities Climate Coalition\r\n](https://www.cdcs.ed.ac.uk/digital-humanities-climate-coalition)\r\n* [Wren Carbon calculator](https://www.wren.co/) \r\n* [Turner (2022) Study of the impact of CPU frequency on ARCHER2](https://www.archer2.ac.uk/news/2022/12/12/CPUFreq.html). \r\n* [ARCHER2 documentation](https://docs.archer2.ac.uk/user-guide/energy/) \r\n\r\n\r\n#### Data\r\n* [Green Scientific Data Compression](https://centaur.reading.ac.uk/79584/1/tgsdcthiia18-towards_green_scientific_data_compression_through_high_level_i_o_interfaces.pd)\r\n* [Environmental Impact of Video streaming](https://research.vu.nl/ws/portalfiles/portal/214278850/Jancovic_Marek_Keilbach_Judith_2023_Streaming_Against_the_Environment._Digital_Infrastructures_Video_Compression_and_the_Environmental_Footprint_of_Video_Streaming.pdf)\r\n* [Next-generation high-temperature data centers](https://doi.org/10.1016/j.rser.2022.112991)\r\n* [Zero energy consumption data centers](https://doi.org/10.1016/j.energy.2022.125495)\r\n\r\n## Credits\r\n\r\nThis document draws on discussion from the [Software Sustainability Institute](https://www.software.ac.uk/)’s [Collaborations Workshop 2023 (CW23)](https://www.software.ac.uk/cw23), and in particular on the “Raspberry” discussion and speed blogging session on “How do you track the environmental impact of computing?”. We thank all participants of CW23 for engaging around this topic.  \r\n\r\n"
  },
  {
    "path": "book/website/ethical-research/activism/activism-robodebt.md",
    "content": "(er-activism-robodebt)=\n# Case Study: Tackling Robodebt\n\n```{figure} ../../../figures/robo-debt.*\n---\nname: robo-debt\nalt: This illustration shows a big machine that says 'you owe us'. It has a few people automating debt call, which is impacting the low-income community - there is person on wheelchair, a tired looking mother with an infant and a toddler and a distressed man standing next to her.\n---\nIllustration of automated decision-making disproportionately affecting low-income communities.\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\nThe Australian Online Compliance Initiative (OCI - dubbed the 'robodebt' debacle by media) involved a large-scale data matching project between the Federal Tax Office and the Department of Human Services.\nThe automated system sending out debt notices based on this data matching exercise was set up at scale quite quickly resulting in disproportionate impact on those with low socioeconomic status.\n\nSome of the attempts at resisting these automated debt calls, very cleverly imitated the automated architecture of the Online Compliance Initiative.\nActivist organizations collaborated with legal aid groups to set up formal appeals processes.\nGetUp! created an automated appeal template through a campaign called FraudStop where someone on welfare benefit can challenge the debt claim raised against them by entering a few details, explaining why they want to appeal, and hitting send.\nThe system compiles a formal request for review, prints it off, and sends it by post to Centrelink, the frontline social services delivery agency. It also:\n\n* Asks their local MP for assistance — as this could really speed up the process.\n* Sends a complaint to the Human Services Minister — responsible for this automated debt letter debacle.\n* Submits a Freedom of Information request for the individual's Centrelink file — so that they have all the necessary information to fight back.\n* The campaign is archived here: [link](https://fraudstop.com.au/) and here [link](https://www.getup.org.au/campaigns/income-support/chip-in-to-expand-fraudstop/)\n\n\n## Further Reading\nA September 2020 report by Michele Gilman at the Data and Society Research Institute draws on existing public law frameworks to provide guidance to lawyers on how to challenge automated decision making that disproportionately harms low income communities.\n\nPOVERTYLAWGORITHMS: A Poverty Lawyer’s Guide to Fighting Automated Decision-Making Harms on Low-Income Communities\nRefers to rights from Consumer Law, Family Law, Housing, Public Benefits, Schools and Education, Workers’ Rights, Immigration Surveillance\n[link](https://datasociety.net/library/poverty-lawgorithms)\n"
  },
  {
    "path": "book/website/ethical-research/activism/activism-unionisation.md",
    "content": "(er-activism-unionisation)=\n# Unionisation\n\n```{figure} ../../../figures/unionise.*\n---\nheight: 500px\nname: unionise\nalt: A black, white, grey, blue and purple cartoon of three people, one wearing a lab coat and goggles, one in a wheelchair, and one holding a mop, standing hand-in-hand over the purple text 'UNIONISE'. They have speech bubbles above them which say 'Ethics!', 'Open Research!' and 'Working Conditions!'\n---\n\n```\n\n(er-activism-unionisation-what)=\n## What is a union?\n\nA trade union is a formalised way for workers to organise and bargain collectively at an institutional, sectoral or national level.\nA union is organised into branches which are spread geographically (for example, North London) or at an institutional level (for example, labs or departments), depending on the distribution of members and how the union works.\nMembers of unions typically pay a monthly fee, although this is sometimes waived for certain categories of members, for example, the UK union UCU allows graduate students to join for free.\n\nSome members take up additional responsibilities as \"reps\" or \"shop stewards\", helping to organise the running of branches, supporting members with workplace issues, and sometimes representing the branch at a national level.\nLarger unions often have full-time employees to support reps and workers, who are also responsible for areas such as developing union policy, press relations, and organising any large meetings for example, annual conferences.\n\nIn some, but not all countries, being a member of a trade union is a protected characteristic.\nThis means organisations are not allowed to fire people for being members (but this has not always been the case).\nUnder the General Data Protection Regulation (GDPR), the European Union considers union membership to be sensitive data and in the same category as genetic data or data on ethnicity.\n\n(er-activism-unionisation-unionactivities)=\n## What can unions do?\n\nUnions are a vehicle for their members to orgaise together and support each other in their workplace and industry.\nUnions take lots of different actions to improve working conditions for their members.\n\nThese can be at individual, workplace, or industry level.\n\nAt an individual level, unions can:\n* Offer support for individuals who have issues at work: for example, supporting individuals who have been discriminated against or bullied in their workplace, or whose duties involve unsafe practices\n* Make people aware of their rights at work, how policies affect them, and what the legal obligations of the organisation are\n\nAt a workplace level, union branch members can:\n* Negotiate with management on behalf of their members: this is called 'collective bargaining' and can be used to improve working conditions, salaries, pensions\n* Review existing policies in a workplace and advocate for changes that improve equity, remove patriarchal/societal influences, and increase support for marginalised members of the workforce\n* Raise health and safety concerns about particular work areas or duties\n* Organise members to \"work to rule\", where no overtime or duties outside those in formal job descriptions are undertaken\n* Go on strike, where no work is performed and workers instead \"picket\" their workplaces by meeting outside and encouraging others to join them\n* Organise other industrial action\n* Discuss policies and positions the members would like to adopt on particular issues\n\nAt an industry level, unions can:\n* Input into government policy through consultation responses or lobbying (for example, speaking to the press on an issue, writing articles, or submitting to formal processes such as hearings)\n* Organise strikes and industrial action across whole industries\n\n(er-activism-unionisation-industrialaction)=\n### What is industrial action?\n\nIndustrial action covers a range of different activities that unions members take together to highlight issues in their workplace or industry.\nThe most well-known of these is \"striking\" or \"work stoppages\", where members refuse to come into work and form picket lines outside their workplaces.\nHowever, there are a lot of other types of activities that fall under industrial action, including: working to rule (or working to contract), mass reporting of health and safety violations, work place occupations, banner drops, or marches.\n\n(er-activism-unionisation-unionhow)=\n## How does a union help scientists and researchers?\n\nScientists and researchers do lots of different roles, and there are specific ways that unions can help with those roles.\n\n* Advocating for open research to be actively supported and encouraged by institutions as well as taken into consideration in career progression\n* Demanding legal support in research\n* Supporting PhDs and post doctoral researchers in their relationships with PIs\n* Campaigning against casualisation of work, for example, short-term, hourly-paid teaching or research positions\n* Offering an alternative vision of academic research as a collaborative, open, iterative endeavour rather than a solo, competitive pursuit\n* Providing a forum for sharing other concerns around how scientific research is done and finding other researchers who want to tackle them\n\nScientists and researchers work in universities, research institutions, and nonprofits.\nThese are all workplaces: they have workplace policies, and unions can help create policies and monitor whether they are being enforced.\n\n(er-activism-unionisation-unionhistory)=\n### A Bit of History: The Association of Scientific Workers (United Kingdom)\n\nThis was a trade union for scientists founded in the early 20th Century, which had a leading role in founding similar unions across the globe.\n\n```{figure} ../../../figures/scientific-union-badge.*\n---\nheight: 500px\nname: scientific-union-badge\nalt: A blue enamel badge with AScW, that stands for Association of Scientific Workers printed on it on a wooden background.\n---\nAScW (stands for\nAssociation of Scientific Workers) badge. Image from the Instagram account [\\@BadgesofStruggle](https://www.instagram.com/badgesofstruggle/) *(text and image reproduced under CC-BY with permission from the account)*\n```\n> The union began its history as the National Union of Scientific Workers in 1918, as a result of the rapid and increased class and professional consciousness, as well as politicisation of scientists in the wake of the First World War.\n> In 1927 the name was changed to the AScW, and it continued as such until 1968 when it merged with the Association of Supervisory Staff, Executives and Technicians (ASSET) to form the Association of Scientific, Technical and Managerial Staffs (ASTMS) a precursor of MSF and ultimately Unite.\n> The union was established “with an explicitly socialist platform”, and several of its leading figures were both respected scientists and active socialists and Communist Party members, such as Hyman Levy and John Desmond Bernal. Several Nobel Prize winners were members.\n> The union organised scientists and technicians in government and private sector research, and became a prominent propagandist for the expansion of publicly funded R&D as well as taking political positions regarding the ethical use of science, against the global threat of fascism, and of guiding scientific research towards peaceful ends.\n> The AScW went on to found the World Federation of Scientific Workers in 1946, an organisation which during the Cold War was accused of toeing the Soviet line, and being a communist front.\n\nThe AScW communicated with members via branch bulletins as well as a national paper: The Scientific Worker [Click here to read a copy on the Wellcome Archive](https://wellcomelibrary.org/item/b19915299#?c=0&m=0&s=0&cv=0&z=-0.8157%2C-0.0826%2C2.6314%2C1.6529)\n\n(er-activism-unionisation-start)=\n## I have never been part of a union before: where do I start?\n\nStart by finding out if there is a union already in your workplace.\nIf so, there will be a person you can talk to about joining: they might be known as the union rep or steward.\nJoining the union that already represents people in your workplace increases its ability to bargain on behalf of everyone and organise the workplace.\nSome workplaces may have several different unions that represent different types of staff.\nIn these cases, you should join the one you feel best matches the type of work you do.\n\nIf there is not a union in your workplace, look into the unions that already exist in your area or country. [link to section on examples of unions](#er-activism-unionisation-unionexamples)\nYou might be able to join one that is relevant to your industry or duties: or you might be able to join a general union that represents lots of different workers.\n\nTo join a union, you might have to pay union fees or dues.\nThese are almost always sliding scale, based on how much you earn: some unions also have free membership for people in certain positions or roles.\n\n(er-activism-unionisation-unionjoin)=\n## What you can do as a union member\n\nUnions are collective projects and they are people-powered!\n\n### Be an active member\n\nOnce you are a member, you can attend meetings.\nAttending union meetings in your workplace is also a good way to find out what issues are affecting your colleagues.\nMeetings are a good place to find out what issues the union is working on and to discuss them with other members.\nAttending meetings and keeping up with union communications are good way to find out how to raise issues that you are concerned about.\nYour union may also have regional or national meetings: these are good places to find out more about union work in different areas.\n\nLike any organisations, unions have their own systems of governance and decision-making processes.\nThese are ways for you to have a say in what your union is doing.\nYou can get involved by voting for people to take on particular roles at workplace or industry level, proposing topics for debate in meetings, or contributing to ongoing debates.\nYou might also be asked to vote on specific actions that your workplace union will take, including accepting or rejecting a policy proposal made by management.\n\nYour union may ask you for input about issues: these can range from things that are specific to your job or workplace, to issues that affect your whole industry.\nThis input is valuable to help unions raise concerns and make changes.\nYour union should have a safe, confidential way for you to share your experiences and opinions (if you're not sure about the channels of communication your union is using, talk about this to the specific people who are asking for input: you can ask to use alternative channels if need be.)\n\nYour union may ask you to take specific actions: for example, to sign a petition, write to an elected official, or take part in a social media campaign.\nIn some cases, your union may decide to consider or take strike action.\nThe process for going on strike differs in different unions, and in some countries there are legal restrictions that cover what kinds of actions are protected.\n\n(er-activism-unionisation-representative)=\n### Become a representative\n\nLike any community, unions need people to take on organisational roles within the union.\nThese roles will vary depending on how big your union is, and what it is working in.\n\nSome roles might include:\n* Supporting other union members: for example, accompanying your colleagues to disciplinary meetings or meetings with management, to provide support and take notes\n* Being a union rep for a particular group of workers within your workplace: this might be a team or a department, or a group of workers doing similar roles across the workplace\n* Negotiating a particular issue, for example pay, pensions, or holiday entitlements, with management\n* Representing your workplace at larger union gatherings, for example a national meeting\n\nThe process for becoming a representative will vary depending on how your union operates.\nYou might need to stand for election, or be approved by a meeting of union members.\n\n(er-activism-unionisation-campaign)=\n### Lead a campaign\n\nIf you have issues in your workplace or industry that you feel strongly about then one way to push for change is by leading a campaign within your union (at either a branch or national level).\nCampaigns can take almost as many forms as there are issues to campaign on!\n\nAs a starting point, it's good to have a clear issue and aim(s) in mind for what you would like to achieve and a few other people who agree with what you want to change.\n\nIf you think this is what you want to do, your union will usually have resources on how to get started.\nYou can also find more practical steps in the Internal Policy Advocacy Chapter of the Ethics Book.\n\n(er-activism-unionisation-resources)=\n#### More resources\nMost unions will have examples or guides on how to join or start campaigns (for example, UNISON, a UK union has a [webpage with details](https://www.unison.org.uk/get-involved/campaign-for-change/)).\n\nOther organisations that offer training and support on how to campaign effectively include:\n\n* [The Ella Baker School of Organising](https://www.ellabakerorganising.org.uk/)\n* [The Union of Concerned Scientists](https://www.ucsusa.org/building-skills-science-network)\n\n(er-activism-unionisation-unionexamples)=\n### Examples of relevant unions\n\nWe recognise that the list below is very UK-centric and would welcome additions for other countries.\n\n#### Global\n* Tech Workers Coalition, Global (organisation focused on tech workers in industry) ([website](https://techworkerscoalition.org/))\n\n#### United Kingdom\n* **United Tech and Allied Workers (UTAW)**, United Kingdom, a branch of the Communication Workers Union, covering all workers at tech and data science companies, regardless of pay grade or employment status. \nIt is an industrial union organised by and for technology workers. ([website](https://utaw.tech/about/))\n* **Unite**, United Kingdom, the largest professional services union with over 1 million members ([website](https://unitetheunion.org/))\n* **University & Colleges Union (UCU)**, United Kingdom, covers researchers, academic staff and higher grades of professional services staff in Higher Education & Further Education institutions ([website](https://www.ucu.org.uk/))\n* **Prospect**, United Kingdom, union covering scientists & engineers ([website](https://members.prospect.org.uk/our-industries/science/index))\n* **Public and Commercial Services Union (PCS)**, United Kingdom, civil service union ([website](https://www.pcs.org.uk/about-pcs))\n* **United Voices of the World (UVW), Charity Sector Workers Branch** ([website](https://www.uvwunion.org.uk/en/sectors/charity-sector/))\n* **Independent Workers’ Union of Great Britain (IWGB), Charity Sector Workers Branch** ([website](https://iwgb.org.uk/page/iwgb-charity-workers-branch/))\n    * IWGB also has a number of branches covering cleaners, receptionists and game industry workers\n\n#### Ireland\n* **Medical Laboratory Scientists Association (MLSA), Ireland** is the sole trade union representing over 1600 Medical Scientists in Ireland ([website](https://mlsa.ie/who-we-are))\n\n#### France\n* **Confédération Française Démocratique du Travail (CFDT)** is the largest French trade union confederation by number of members. It originated as a secular branch of the Christian trade union Confédération Française des Travailleurs Chrétiens (CFTC) ([website](https://cfdt.fr/))\n* **Confédération Générale du Travail (CGT)** is the second largest French trade union by number of members. The CGT is concentrating its attention to trade-unionism in the private sector ([website](https://www.cgt.fr/))\n* **Confédération Générale du Travail-Force Ouvrière (CGT-FO)** was founded by former members of the General Confederation of Labor (CGT) who accused that federation to be influenced by the French Communist Party ([website](https://www.force-ouvriere.fr/?lang=fr))\n* **Confédération Française de l’Encadrement-Confédération Générale des Cadres (CFE-CGC)** is solely focused on organising unions for professional employees having higher education or in management or executive positions ([website](https://cfecgc.org/))\n\n#### Italy\n* **Confederazione Generale Italiana Lavoratori (CGIL)** is the largest Italian union that counts more than 5 million members ([website](http://www.cgil.it/))\n* **Confederazione Italiana Sindacato dei Lavoratori (CISL)** is based on Roman Catholic values groups linked with Christian Democracy ([website](https://www.cisl.it/))\n* **Unione Italiana Lavoratori  (UIL)** is the socialist, social democratic, (republican) and secular split from the CGIL ([website](https://www.uil.it/))\n* **Unione Sindacale Professori e Ricercatori (USPUR)** is aimed at university professors and researchers ([website](https://www.uspur.it/))\n* **Unione Degli Universitari  (UDU)** is focused on improving the university students experience and future career ([website](https://www.unionedegliuniversitari.it/))\n\n#### Spain\n* **Unión General de Trabajadores (UGT)** is a major Spanish trade union, historically affiliated with the Spanish Socialist Workers' Party (PSOE) ([website](https://www.ugt.es/))\n* **Confederación Sindical de Comisiones Obreras (CCOO)** is the second largest union in Spain and is the most successful one in labor elections ([website](https://www.ccoo.es/))\n* **Federacion de Jovenes Investigadores (FJI-Precarios)** is focused on improving the labour conditions of young researchers, defending the dignity of the research profession, and overall, improving the situation of science in Spain\n([website](http://precarios.org/Qui%C3%A9nes+somos))\n\n#### Argentina\n* **APINTA (Asociación del Personal del Instituto Nacional de Tecnología Agropecuaria, Staff Association of the National Institute of Agricultural Technology)** is the entity that groups together all workers who have an employment relationship with INTA, as well as its retirees and pensioners ([website](https://www.apinta.org/))\n* **CONADU: Federación Nacional de Docentes Universitarios (National University Teachers Federation)** Main objectives are the defense of:\nPublic, Free, Democratic, Popular, Feminist and Latin American University; salary, working conditions, training and teaching careers; access, permanence and graduation of students in Higher Education; research and the production of knowledge, science and technology; the linkage of the university with the State and society to promote national and regional development ([website](https://conadu.org.ar/))\n\n#### United States\n* **Graduate Student Unions** at multiple universities and colleges are organising ([Wikipedia page](https://en.wikipedia.org/wiki/Graduate_student_employee_unionization))\n\n#### Australia\n* **Professional Scientists Australia**, Australia (union covering industry scientists)([website](https://scientists.professionalsaustralia.org.au/))\n* [General list of Trade Unions in Australia](https://en.wikipedia.org/wiki/List_of_trade_unions_in_Australia)\n\n#### The Netherlands\n* **Federatie Nederlandse Vakbeweging (FNV)** is the largest trade union in The Netherlands with over 1 million members ([website](https://www.fnv.nl/))\n* **Algemene Onderwijsbond (AOb)** has over 83.000 members and represents teachers and researchers in all education sectors ([website](https://www.aob.nl/))\n* **Vakbond voor de wetenschap (VAWO)** was a labour union that specifically targetted scientific researchers which merged with the AOb in early 2022.\n\n(er-activism-unionisation-summary)=\n## Summary\n\nUnions offer support for researchers and scientists through many different avenues and there are a variety of ways to get involved in them.\nThe first thing to do is see which unions are active in your instution or field.\nIf your institution does not recognise a union, you can read through Whistleblowing and Internal Advocacy chapters for more ideas on how to work for change.\n"
  },
  {
    "path": "book/website/ethical-research/activism/activism-whistleblowing.md",
    "content": "(er-activismwhistleblowing)=\n# Whistleblowing\n\nA **whistleblower** is a person who reports wrongdoing within an organisation to an authority.\nThis can be internal: reporting wrongdoing to a senior person within the organisation.\nIt can also be external: reporting wrongdoing to an external agency.\n\nWhistleblowers can report different kinds of wrongdoing: this can include illegal activity, harm (or potential harm) to people inside or outside the organisation, misuse of government funds (for governmental organisations). \n\nRetaliation against whistleblowers is, unfortunately, common.\nRetaliation can include firing from the organisation, or creation of an unpleasant working environment that means the whistleblower can no longer work there. \n\nSome countries have laws to protect whistleblowers from retaliation.\nFor example, the EU [Whistleblower Protection Directive](https://www.cliffordchance.com/insights/resources/blogs/regulatory-investigations-financial-crime-insights/the-new-eu-whistleblower-protection-directive-are-the-member.html) requires EU countries to have prohibitions on retaliation, as well as to ensure that companies with more than 50 workers have confidential internal reporting channels. \n\nSome companies have policies in place to protect whistleblowers.\nThis can include third-party reporting systems. \n\n## Protecting yourself\nIf you are considering whistleblowing, make sure you are aware of what protections are - and are not - in place in your country, and in your organisation.\nYou may want to seek legal advice about what procedures you should follow and what measures you should take to protect yourself. <!--(Link to legal advice disclaimer)-->\n\n## Case study: exposing racial and gender discrimination\nIn June 2020, Ifeoma Ozoma and Aerica Shimizu Banks went public about the [racial and gender discrimination](https://www.theguardian.com/technology/2020/dec/18/pinterest-gender-discrimination-lawsuit-black-workers) that they faced while working at Pinterest. \nBoth women, who had worked in Pinterest's policy team, alleged that they had had to fight to be paid fairly, and that they had experienced retaliation for advocating for change. Ozoma also said the company failed to protect her when a colleague shared her personal information with hate sites.\nOzoma and Banks both left their jobs and received just half a year of severance pay: a few months later, a white woman who had brought a lawsuit against Pinterest for gender discrimination received a [settlement of USD 22 million](https://techcrunch.com/2020/12/15/pinterests-22-5m-settlement-highlights-techs-inequities-say-former-employees-who-alleged-discrimination/?guccounter=1&guce_referrer=aHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnLw&guce_referrer_sig=AQAAACZ34jVrpq4QDy88mJNelRDz8GP8aOLKVD8QSy5jN5q3mgSFYc2g7BGJpcT1jrJxwCEbRhbE0MbBZVE3Cgyj4qjvfhdvWPVTGdwez9zsIsFnRArQev8e2plH0SmtILq2TNGbgqFHuEtehiJxaDhz0yXsCSLFoU9Xl8avKyirjHYp).\n\nWhistleblowing by Ozoma and Banks enabled people of color at the company to come forward about their experiences.\n“I could not stand by and let a company get away with posting Black Lives Matter when they did not act like black lives mattered in the negotiations they had just concluded with us,” [Banks told the Guardian](https://www.theguardian.com/technology/2020/dec/18/pinterest-gender-discrimination-lawsuit-black-workers). \n“This was about integrity and not letting the company get away with painting themselves as this space for kindness and positivity when they had completely denigrated, abused, and retaliated against us.”\n\nIn 2021, Ozoma launched [The Tech Worker Handbook](https://techworkerhandbook.org/), a guide to physical and digital security, seeking legal support, and working with the media, for whistleblowers in tech companies. \n"
  },
  {
    "path": "book/website/ethical-research/activism.md",
    "content": "(er-activism)=\n# Activism for Researchers\n\n(er-activism-prerequisites)=\n## Prerequisites\n\nThere are no prerequisite for this chapter.\n\n(er-activism-summary)=\n## Summary\n\nThis chapter covers why activism can be an important part of ethical data science practice.\nIt also covers different kinds of activism and how you can be an activist within your workplace, your field, your country, or the world at large!\n\n(er-activism-motivation)=\n## Motivation and Background\n\nThere are many different scenarios where scientists and researchers would engage in activism to achieve change, such as a different institutional policy on open data, increasing ethical standards of research (see the {ref}`er`), or improving working conditions.\nScientists may engage in activism across topics related to their work, institutions, fields, or cross-disciplinary issues such as open research, or on topics unrelated to their career.\n\nThe [Cambridge Dictionary](https://dictionary.cambridge.org/dictionary/english/activism) defines activism as \"the use of direct and noticeable action to achieve a result, usually a political or social one\".\nActivism can take many forms and achieve many different things, but it's most effective when people work together as a community with a shared goal.\n\nYou don't have to have a lot of experience in activism - or even call yourself an activist - to put some of these methods into practice.\nHowever, it can be difficult to know where to start when you want to make a change.\n\n(er-activism-ways)=\n## Ways to make change\n\nActivism in your workplace can include:\n* *{ref}`er-activism-unionisation`* collective organisation of workers to improve working conditions\n* *{ref}`er-internal-policy`* campaigning to change the way your institution makes decisions or handles certain situations: this can include, for example, advocating for open data practices!\n* *{ref}`er-activismwhistleblowing`* the act of alerting authorities or the press to problems in your institution\n* *{ref}`er-cultural-change`*: taking steps to change research/organisational culture\n* *{ref}`er-activism-env-impact`*: consider the environmental impact of digital research.\n\nIn the future, we would like to expand this chapter to include guides to activism in wider society for scientists, for example, how to engage with government policy-making processes.\n\nActivism in your field can include\n* Working to change policies and practices for professional organisations.\n* Outreach to encourage people to work in your field, especially people from backgrounds that are underrepresented\n\nActivism can also work towards changing laws or policies: for example, lobbying for better data protection legislation in your country, or for resources to implement existing laws.\nIn Australia, activists collaborated with legal aid groups to {ref}`resist 'Robodebt'<er-activism-robodebt>` (an automated system that told welfare benefits recipients that they owed money).\n\nActivism can also be part of changing the world for the better!\nThis can include for example awareness-raising about data literacy.\n"
  },
  {
    "path": "book/website/ethical-research/cultural-change/alt-models-discussion.md",
    "content": "(er-cultural-change-alt-models-discussion)=\n# Alternative Models of Culture Change in Open Research\n\n> This is a summary of a discussion held at the June 2024 Book Dash event between participants.\n> As such, this sub-chapter may appear more opinionated than other chapters in the guides.\n\n```{figure} ../../../figures/feedback-loop-process.*\n---\nheight: 400px\nname: Culture Change Through Feedback Loops\nalt: >\n  Cartoon-like sketch of people constructing new pathways to culture change. In the top left, a wrecking ball is demolishing a pyramid in a city, representing rigid hierarchical models of change. A brick pathway leads to a group of people dressed in different outfits collaborating on building the new pathways together, highlighting how culture change is often a community effort, with people from different backgrounds and perspectives contributing. Towards the right of the image a plan on an easel shows feedback loops built into the process of change, behind which we see a roundabout or rotary labelled with 'feedback loops' and multiple different paths leading off, demonstrating the potential for feedback to change course. A sun in the background suggests a brighter future for people who take a participatory approach to culture change, however they get there. \n---\nOne depiction of culture change, based on the discussion in June 2024.\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n(er-cc-am-discussion-vacuum)=\n## Culture Change Doesn't Happen in a Vacuum\nAs part of the overall Scientific Reform movement, many researchers and advocates have long acknowledged the need for substantial interventions in research culture to move practices towards more open, reproducible and collaborative work. \nThese interventions have mostly been focused on either a) technological solutions seeking to address perceived failings and restrictions in the current academic publishing system or b) top-down policy requirements mandating openness (for example [Plan S](https://www.coalition-s.org/why-plan-s/), [UKRI open research stance](https://www.ukri.org/what-we-do/supporting-healthy-research-and-innovation-culture/open-research/)).\n\nHowever, our discussion began with many participants flagging that culture is part of an overarching series of systems within society, that are all interconnected and influence each other. \nCultural change in academia, like that sought by open research advocates, therefore needs to be understood through the lens of system change. \nFor example, many advocates want the academic credit and recognition system to move away from number of papers published as a metric for success. \nThis would mean changing the way that promotions are awarded, research institutions evaluated, and academic knowledge shared. \nPublishing companies, who make large profits from publishing academic research, are likely to fight against the change if they think it will harm their profits. \nIt is always possible to change cultures, big and small, but it will be easier when we take into account the wider factors also in play. \nWhen we seek to change the was research is produced we need to identify and consider previously unconsidered barriers and pitfalls.\n\n(er-cc-am-discussion-modelsmatter)=\n## Models Matter \nAs referenced in {ref}`er-cultural-change-pyramid` the portrayal by Nosek et al, of culture change as a pyramid with infrastructure at the bottom has drawn criticisms. \nCertainly participants in the culture change discussion expressed confusion, disconnect, and disappointment at the apparent disempowerment of communities inferred from their position in the diagram, and the exclusion of key factors in driving change, such as consultation with communities, feedback loops, and the impact this approach might have on researchers.\nThe explicit hierarchy can also be interpreted as assigning relative importance to each of the stages, when often their relative importance fluctuates depending on the norms, practices, existing infrastructure, and the influence that each of these factors exerts on the other. \nAlthough the blog post in which the model is introduced offers more context about why specifically, we now frequently see the diagram taken out of context and used to justify techno-solutionism.\nAdvocates for change therefore need to think critically about designing visual representations and how they may be misinterpreted or used out of context.\nThere is a balance between using simple structures and clear diagrams, and communicating complex concepts effectively.\n\n(er-cc-am-discussion-factors)=\n## Factors to consider in culture change modelling\n\nSo, if we reject the hierarchical perspective presented by Nosek in our discussion, what are the factors we feel need to be considered when it comes to culture change in research practices?\nThe group discussed several broad groups of factors, all of which can impact how culture change is achieved and the pathways which will be most effective in reaching the desired end goals. \n\n### The past \nTo be human is to exist with biases and limited perspectives. \nThose advocating for cultural change will find they need to push to address resistance borne out of people's previous experiences, historical preferences, and the ease of doing things the way they have always been done. \n\n### Aligning systems and behaviour \nSystems and behaviour often need to be tackled in parallel. \nIt's hard to change someone's behaviour if the system is not capable of supporting the change; and changing the system does not automatically change people's behaviours (see open access mandates).\nThey may not match perfectly at first, but it is critical to acknowledge and address both if you are seeking long-term change.\n\n### Taking care \nChange is often hard for people, even when they can clearly see the need for it. \nPeople can be risk adverse, and manage this by sticking with what they know already has worked in the past. \nBuilding the case for change, acknowledging the potential impacts and working to mitigate them, and employing specific tactics such as change champions, can all help.\nIt is also important to hold space to discuss changes, get people excited about change, and incorporate their insights as the process proceeds.\n\n### Acknowledging power structures\nThe hierarchical, rigid power structures of the academic system are well known, and despite some efforts, remain relatively entrenched.\nThose more senior in the current system have benefited from it, and may be less motivated to support and empower those seeking change. \nThe level of influence and empowerment individuals have to effect the culture change they want to see in the world may be limited by their seniority, or perceived expertise. \nThis also intersects with systemic biases and injustices such as racism, sexism, and ableism, and in some cases magnifies them. \nThis can be tackled with collective organising and action, but this also takes time to build, manage, and sustain. \n\n(er-cc-am-discussion-models)=\n## Alternative models of change? \nFrom the group discussion we came up with a number of different representations of research culture change approaches:\n\n* A buffet of culture change factors, with sizing according their influence in specific situations, avoiding the implicit and explicit hierarchy of other models.\n* An expanded pyramid with more feedback loops and other factors feeding into each level to demonstrate the complexity of change.\n* A four-way matrix between human infrastructure, technical infrastructure, community needs and problems, and societal infrastructure, all interconnected and feeding back on each other. \n\nNone of these are perfect models, and in all cases, models only serve to help us structure our thinking about change and how it happens. \nThe critical work is the doing: the talking to people, uncovering community issues, working to find solutions, and demonstrating the leadership needed to get people excited about a future that holds less of the same. \n"
  },
  {
    "path": "book/website/ethical-research/cultural-change/cc-examples.md",
    "content": "(er-cultural-change-examples)=\n# Culture Change Models & Examples\n\nThis sub-chapter provides a brief overview of some models and examples of resources you can use when thinking about culture change, whether you are seeking to effect change or experiencing it. \nThese are not the only models and examples when it comes to culture change, and the community encourages potential contributors to expand this sub-chapter with more resources. \n\n(er-cultural-change-emergent-strategy)=\n## Emergent Strategy - adrienne marie brown\n\nEmergent Strategy by [adrienne marie brown](https://adriennemareebrown.net/) ({cite:ps}`brown2017emergent`) teaches us that change is inevitable, and that we can shape change. \nBy practising at the small scale/fractals we set the patterns for the whole system. \nWe all hold pieces of the solution and will need to transform ourselves to transform the world. \nBy being accountable, practising generosity and vulnerability, we can connect better to others build lasting relationships. \nThe easier it is for you to be wrong, the faster you can release your viewpoint and the easier it is to adapt to changing circumstances. \n_The Turing Way_ as a project and community is influenced by the Emergent Strategy approach to culture change and design.\nYou can read more on this in the Foreword: {ref}`fw-emergent-strategy`\n\n### Principles of Emergent Strategy \n*\tSmall is good, small is all (the large is a reflection of the small).\n*\tChange is constant (be like water).\n*\tThere is always enough time for the right work. \n*\tThere is a conversation in the room that only this moment can have. Find it.\n*\tNever a failure, always a lesson.\n*\tTrust the people. (If you trust the people they become trustworthy or the boundaries will become clear.)\n*\tMove at the speed of trust. Focus on critical connections more than critical mass – build the resilience by building the relationships.\n*\tLess prep, more presence.\n*\tWhat you pay attention to grows.\n\nConversation is a crucial way to explore what we believe and to make new understandings and ideas possible. \nConsider the areas where trust needs to be built: you will need to demonstrate that you're thinking about the same values/concerns. \nTo accomplish your vision for the future it needs to be clear what needs to be done and who will do it. \nThere should be time for reflection and evaluation to apply lessons learned to future work, and time for celebration of collective achievements. \n\n(er-activism-cultural-change-transitions)=\n## Managing Transitions - William and Susan Bridges\n\nManaging Transitions by William and Susan Bridges ({cite:ps}`Bridges2017transitions`) teaches us that a change will always be accompanied by a transition. \nA transition begins when something needs to be let go, and sits in between the old and the new situation. \nThis transition phase can be insecure for people who will have to adjust to a new situation, but also an opportunity for innovation to happen if people are adequately resourced and supported (by policies, groupings, procedures). \n\nThere are four P's in transitions ({cite:ps}`Bridges2017transitions`): \n* Purpose: people have to understand the logic behind the outcome and feel that the change is necessary.\n* Picture: people need to experience how the outcome will look and feel.\n* Plan: people need a step-by-step plan to know what they have to do.\n* Part to play: especially if people have something to loose, they need to be able to play a part in the transition phase and eventual outcome.\n\nTo manage transitions it needs to be clear what the problem (reason for change) is. \nPeople will not change if they are not experiencing the problem and are convinced something needs to be adjusted. \nThose experiencing the problem will also have expertise and knowledge to come up with an effective solution. \nIndividuals will stand to lose something when change is happening - a sense of control over this transition helps to make the transition more comfortable. \nIt is important to learn what problems people are facing in a transition phase, and recognise individuals that do contribute to the change. \nPeople will need to feel safe to experiment and take risks, and not be punished when these experiments fail.\n\nIt is important that changes are meaningfully clustered, or held off until they can be, to avoid a messy change pile: \n* If changes are meaningfully clustered the changes are incorporated in the bigger change picture, and it makes sense to act on these further changes right now. \n* In a messy change pile, the changes are not neatly connected to the change that is already happening. \nThis can feel overwhelming as too many different changes are happening at the same time, which may pull people in different directions. \n\nTo ensure that people will change their behaviour, they will need to learn how to adapt to new behaviours through training. \nPeople will not be able to invest in this, if the new behaviours are not adequately rewarded (for example, focused placed on publications written instead of open data/software).\nShort term goals can give people a sense of achievement and encourage them to move forward.  \n\n(er-cultural-change-leading)=\n## Leading Change - John P Kotter\n\nAccording to John P Kotter ({cite:ps}`Kotter2012change`) there are eight steps in change:\n1.\tEstablishing a sense of urgency by identifying potential crises/opportunities.\n2.\tCreating the guiding coalition, a team that works together to lead the change.\n3.\tDeveloping a vision to direct the change and strategy to achieve this vision.\n4.\tCommunicating the change vision using every communication channel possible, including role modelling.\n5.\tEmpowering action by removing obstacles and encouraging risk-taking.\n6.\tGenerating short-term wins and recognise people who made these wins possible.\n7.\tConsolidating change: maintain a sense of urgency, use situations to start a new wave of change, keep celebrating successes and evaluate/adjust if needed. \n8.\tAnchoring new approaches in the culture.\n\nThe first four steps in the transformation process help to convince people or an organisation that they need to change. \nPhases five to seven introduce new practices. \nThe last stage focuses on making these new practices stick. \n\n(er-cultural-change-pyramid)=\n## Strategy for Culture Change - Brian Nosek\n\nIn a 2019 [blog post](https://www.cos.io/blog/strategy-for-culture-change), Brian Nosek of the Center for Open Science, presented the Strategy for Culture Change.\nIt is a perspective specifically focused on examining culture change in academic research and publishing, to promote more open, transparent, and reproducible research.\nThis model, represented as a pyramid similar to Maslov's Hierarchy of Needs, suggests that in order for culture change to be effective, there are several steps which should be followed progressively: \n\n1. Baseline - Infrastructure - Make it possible\n2. First tier - User Interface/Experience - Make it easy\n3. Second tier - Communities - Make it normative\n4. Fourth tier - Incentives - Make it rewarding\n5. Fifth tier - Policies - Make it required \n\n```{figure} ../../../figures/strategy-culture-change-nosek.*\n---\nheight: 400px\nname: Nosek et al Strategy for Culture Change Diagram\nalt: >\n  A black and white pyramid depicting Nosek's model of culture change in open research. It follows the outline described in the text above, with infrastructure as the baseline, followed by user interface/experience, communities, incentives, and policies at the top of the pyramid. Text beginning with \"Make it...\" is listed outside the pyramid to the right of the structure. \n---\nDiagram for Nosek's model of culture change in open research. \nUsed under a CC-BY 4.0 licence. (Strategy for Culture Change - 11 June 2019)[https://www.cos.io/blog/strategy-for-culture-change].\n```\n\nThis strategy for culture change differs from Kotter and William and Susan Bridges perspectives on culture change.\nThose perspectives are centred around providing and understanding the motivations for why people would want to change, and building a shared vision before building the infrastructure to support the change. \nNosek argues that focusing on individual motivations and abilities ignores the wider systems and incentives that guide and shape behaviour.\nThese wider structures can mean that even if individuals want to change, they may feel powerless to do so on their own. \nThe Strategy for Culture Change focuses on building targeted interventions and infrastructure to enable change, then lobbying to effect adoption and incentives to further drive wide behaviour and cultural change.\n\nHowever, the blog post, particularly the pyramid diagram, has drawn criticism for presenting a perspective that focuses too much on technology as a solution.\nThis is compounded by the use of communities in the second tier of the strategy, after infrastructure has been built, as a mechanism to solely adopt changes built or agreed elsewhere.\nSome parties have a different opinion, and believe that communities themselves should be identifying and driving the infrastructure changes, rather than the other way around.  \nRegardless, this is an alternative model of cultural change which seeks to address the impact of wider forces affecting attempts to shift norms. \n\n\n\n\n\n\n\n\n"
  },
  {
    "path": "book/website/ethical-research/cultural-change.md",
    "content": "(er-cultural-change)=\n\n# Cultural Change\n\n(er-cultural-change-what)=\n## What is cultural change?\n\nCulture is defined in many ways, one of which is about the social environment in which you partake, or the customs and behaviours that define a group of people.\nCulture has an influence on your views, values, concerns and your identity. \nCulture can be difficult to change as it is hard to address directly and shared values can be deeply ingrained ({cite:ps}`Kotter2012change`). \nInstead, norms of behaviour may be easier to change. \n\nHere, cultural change is defined as inspiring a change in behaviour in persons/organisations, with a lasting impact, strengthening the core values of persons/organisation.\n\nThis section will continue to describe where you will encounter cultural change. \nThis is followed by sub-chapters short summaries of works on cultural change, written by adrienne marie brown, William and Susan Bridges and John P. Kotter, Brian Nosek and a summary of the discussions on alternative models held by _The Turing Way_ community at the June 2024 Book Dash. \n\n\n```{figure} ../../figures/culture-shift.*\n---\nname: culture shift\nalt: A black, white, and purple cartoon of scales. On the one side are a lot of objects, with a person buried under the pile and peering out, and on the other side only two objects with a shiny star on them, and someone standing next to them with a smile. Both sides weigh equally. The text says 'time for a cultural shift, we should value reproducibility as much as the amount of papers published.'\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.8169292](https://doi.org/10.5281/zenodo.8169292).\n```\n\n(er-cultural-change-when)=\n## Where/when will you encounter cultural change?\nAs your social environment is continuously changing, you are likely to experience some degree of cultural change on a daily basis. \nThis might not feel like it, because the actual change that takes place will take months or even years. \n\nGenerally, you will either be affected by cultural change, or, you want to invoke cultural change by adjusting existing practices yourself. \nResearchers advocating for improvements in reproducible, ethical, and collaborative research practices often have to advocate for cultural change at their institutions and other organisations. \n\nWhen you are affected by cultural change taking place in your environment, it may be difficult to change your practises and behaviour. \nCassandra Worthy wrote 'Change Enthusiasm' ({cite:ps}`Worthy2021change`) to provide you with exercises and tools to see changes as an opportunity for learning and growth.\nAs an Early Career Researcher you may also have to deal with systemic cultural change in your discipline. \nThe work by {cite:ps}`Kent2022change` contains recommendations that may support you in this change journey.\n\nYou can also change the culture and get involved in committees that update policies, or add new ones (see the [Guide to Accelerate Public Access to Research Data](https://www.aplu.org/news-and-media/News/aplu-and-aau-issue-guide-to-accelerate-public-access-to-research-data) for some pointers that are applicable beyond a research data policy). \nYou may be advocating to make your work environment more inclusive, at the office or within your research association.\nTo provide you with some guidance to invoke cultural change, you can read the works summarised below:\n\n\n### Change is a team effort\n\nA single individual will not effect cultural change in an organisation, as this requires collective action.\nA team with members in position of power, members with expertise or leadership skills and credibility, will be needed. \nNote that the power and leadership referred to here may be formal (that is, your role has particular decision making responsibilities or budget available to support culture change), or informal (you have a great network of people you can convince or you are known as an expert in a particular area which allows you a say in policies). \n\n**Vision for change**\n\nThe **vision** refers to the future and why people should strive to create that future. \nA vision clarifies the general direction for change and motivates people to take coordinated action. \nA vision will acknowledge that sacrifices will be needed to achieve benefits that would not be achievable without change. \nAn effective vision is imaginable (it conveys a picture of the future), desirable (appealing to anyone involved in the change), feasible (has attainable goals), focused (for clear decision-making), and flexible (to allow for alternative responses in light of changing conditions).\n\nThis vision should be easy to communicate in under five minutes. \nThe effective communication of the vision depends on the simplicity of the message, whether appropriate metaphors or pictures are used, the communication channels used, how often the message is repeated and how the behaviour is modelled by important people. \nThese important or influential people can have expertise on the topic the change is focusing on, a network which they can influence, or hold a higher hierarchical position in the institution which provides them with more power to achieve changes.\n\n\n(er-cultural-change-summary)=\n## Summary\n\nCultural change is a long-term effort that you can achieve by taking one step at a time, ideally with some like-minded individuals.\nAs it is difficult to achieve change without knowing where you're heading, it is good to outline a vision of what the change should look like. \nTo achieve change, transitions are inevitable. \nTransitions can be difficult to navigate for individuals, so patience and support are needed to safely fail in adjusting existing practices. \nThe works described in this section provide some guidance and places to start your cultural change adventure!\n\n(er-cultural-change-resources)=\n## Resources\n\n- Change Enthusiasm by Cassandra Worthy ([podcast episode](https://open.spotify.com/episode/4J0o5Ob5NsTTfrfkJgHqP4?si=85ad27579ce64308))\n- [5 Reactions to Organizational Change (Demonstrated by Cats) and How to Deal with Them](https://change.walkme.com/5-reactions-to-organizational-change-demonstrated-by-cats-and-how-to-deal-with-them/)\n- [Explaining Kurt Lewin's Change Theory](https://www.youtube.com/watch?v=WtaYloI-WAQ)\n- [FORCE11 Board Completes Strategic Planning Exercise](https://force11.org/post/force11-board-completes-strategic-planning-exercise/)\n- TedX: [The inner side of Organizational Change by Thijs Homan](https://www.youtube.com/watch?v=3n-c6iAKFgg)\n- [CAMPS : The Best Method for Leading Change at Work](https://www.lifelabslearning.com/blog/camps-your-tried-and-true-tool-for-leading-change-like-a-boss)\n\n\n"
  },
  {
    "path": "book/website/ethical-research/data-feminism/data-feminism-power.md",
    "content": "(er-data-feminism-c1)=\n\n# Chapter 1: Examining Power\n\nHere are some main ideas from this chapter on examining power. \n\n(er-data-feminism-c1-keypoints)=\n## Key Points\n\n- **Understanding Influence**: It is essential to recognise how racism, sexism, and privilege shape oppression.\n- **Naming Oppression**: Examining power involves identifying and explaining the oppressive forces ingrained in our daily lives.\n\n(er-data-feminism-c1-powerdomains)=\n## Domains of Power\n\nPower systems can be configured and experienced across [four domains](https://data-feminism.mitpress.mit.edu/pub/vi8obxh7#nkiyehtj87r):\n\n1. **Structural**: The institutional framework (The policies and laws that exist).\n2. **Disciplinary**: Regulatory and normative practices (How these policies/laws are enforced).\n3. **Hegemonic**: Political and social contexts (How the culture and media influence and contribute to oppression).\n4. **Interpersonal**: Day-to-day interactions (Individual experiences).\n\n(er-data-feminism-c1-intersectionality)=\n## Intersectionality\n\nDimensions such as gender, race, sexuality, geography, and ability can lead to unjust oppression or unearned privilege across these four domains.\n\n(er-data-feminism-c1-questions)=\n## Critical Questions\n\nTo understand how power unfolds in and around data, consider:\n\n1. **Who is engaged in data science work (and who is not)?**\n2. **Whose goals are prioritised in data science (and whose are not)?**\n3. **Who benefits from data science (and who is overlooked or harmed)?**\n\nThese questions are uncomfortable but necessary as they reveal that certain groups disproportionately benefit from data science while others are disproportionately harmed.\n\n(er-data-feminism-c1-dominance)=\n## The Problem of Dominance\n\nWhen data teams are predominantly from dominant groups, their perspectives unduly influence decision-making processes.\n\n(er-data-feminism-c1-privilege)=\n## Privilege Hazard\n\nThis phenomenon occurs when those in the most privileged positions (with good education, respected credentials, professional accolades) wield disproportionate influence.\nThis hazard is more harmful in aggregate as it permeates structural, disciplinary, and hegemonic domains.\n\n(er-data-feminism-c1-threats)=\n## The Threat of AI\n\nSocial scientist, [Kate Crawford](https://katecrawford.net/), argues that the biggest threat from AI systems is not their intelligence but their potential to embed sexism, racism, and other forms of discrimination into our digital infrastructure.\n\n\nResearchers have shown that [images of immigrants, abused children, and deceased individuals have been used to train software without consent](https://slate.com/technology/2019/03/facial-recognition-nist-verification-testing-data-sets-children-immigrants-consent.html), raising serious ethical issues.\n\n(er-data-feminism-c1-datagoals)=\n## Current Data Goals\n\nData science is predominantly used for:\n\n1. **Profit (for a few)** - seen in corporations\n2. **Surveillance (of the marginalised)** - used by governments\n3. **Efficiency (amidst data scarcity)** - prioritised by research institutions/universities such as optimising algorithms and models to work with limited data\n\n(er-data-feminism-c1-goals)=\n## The Goal of Examining Power\n\nThe essence of examining power is not only to understand power but also to challenge and change it.\n\n(er-data-feminism-c1-casestudies)=\n## Case Studies\n\n- **[Serena Williams and the Healthcare System](https://edition.cnn.com/2018/02/20/opinions/protect-mother-pregnancy-williams-opinion/index.html)**: Illustrates racial bias in healthcare.\n- **[Joy Buolamwini and MIT's Facial Recognition System](https://news.mit.edu/2018/study-finds-gender-skin-type-bias-artificial-intelligence-systems-0212)**: Highlights issues of bias in technology.\n- **[CloudWalk and Zimbabwe](https://qz.com/africa/1287675/china-is-exporting-facial-recognition-to-africa-ensuring-ai-dominance-through-diversity)**: Raises ethical concerns about data sharing and human rights.\n\n(er-data-feminism-c1-reading)=\n## Further Reading\n\n- **[Algorithms of Oppression by Safiya Umoja Noble](https://www.goodreads.com/book/show/34762552-algorithms-of-oppression)**: Explores how gender and racial biases in information systems are complex and often rooted in the data and models created by small, homogeneous groups.\n- **[Artificial Unintelligence by Meredith Broussard](https://www.goodreads.com/book/show/36722634-artificial-unintelligence)**: Goes into the limitations and misunderstandings embedded within AI systems.\n- **[Invisible Women by Caroline Criado Pérez](https://www.goodreads.com/book/show/41104077-invisible-women)**: Discusses gender biases in data.\n"
  },
  {
    "path": "book/website/ethical-research/data-feminism.md",
    "content": "(er-data-feminism)=\n# Data Feminism\n\n## Prerequisites\n\n| Prerequisite | Importance | Skill Level | Notes |\n| -------------|----------|------|----|\n| [Data Governance](https://book.the-turing-way.org/project-design/data-governance) | Helpful | Beginner | Best practices on how data is collected and managed |\n| [Research Data Management](https://book.the-turing-way.org/reproducible-research/rdm#rr-rdm) | Helpful | Beginner | Covers how research data can be stored, described and reused.  \n| [Managing Sensitive Data Projects](https://book.the-turing-way.org/project-design/sdpm) | Helpful | Beginner | Tips on managing sensitive data.|\n\n\n(er-data-feminism-summary)=\n## Summary\n> 💡 This chapter was written based on the book, [Data Feminism](https://data-feminism.mitpress.mit.edu/) by Catherine D'Ignazio and Lauren F. Klein. \n\nData feminism is an approach to understanding and practising data science that's informed by the principles of feminist theory. It critiques traditional data practices that often overlook gender biases and other forms of inequality and advocates for a more inclusive, equitable, and reflective practice in data science\n\nHere are some key aspects discussed within the chapter:\n- **Examine Power Structures:** Data Feminism urges a critical examination of power dynamics in data practices. It questions who is represented in data, who benefits from data practices and whose interests are served.\n- **Challenge the Status Quo:** This challenges existing norms in data science, such as the male/female binary and questions other hierarchical classification systems. Thus dismantling stereotypes to promote a more inclusive approach to data.\n- **Inclusivity and Representation:** Data Feminism emphasises the need for diverse representation in data and in data teams. When data science is dominated by a homogeneous group, especially those from privileged backgrounds, it risks perpetuating biases and inequalities.\n- **Ethical Considerations and Consent:** Ethical concerns such as consent and privacy are at the core of data feminism. This includes concerns about how data is collected and used and the potential for harm especially to marginalized communities. \n- **Visibility of Labour:** This seeks to recognize and make the often unseen labour in data science visible; especially the contributions of women and people from marginalized groups. \n- **Interdisciplinary Approaches:** Data feminism advocated for interdisciplinary work, drawing insights and methods from various fields outside of traditional data science to enrich understanding and foster more impactful outcomes. \n- **Action and Advocacy:** Beyond analysis, data feminism promotes the need to advocate for change, challenge oppressive structures and promote social justice.\n- **Continual Learning and Adaptation:** Data feminism acknowledges that anti-oppression work is never finished. Continuous learning is essential, and we must recognise society and technology's dynamic nature.\n\nIn summary, data feminism is **not just a theoretical framework but a practice** that seeks to reshape how data is collected, analysed and used, focusing on equity, justice and dismantling traditional power structures.\n\n\n(er-data-feminism-motivation)=\n## Motivation and Background\nData feminism is rooted in the rich history of [feminist activism](https://data-feminism.mitpress.mit.edu/pub/frfa9szd#dyqlckz6ws) and critical theory; it challenges the status quo in data practices by advocating for inclusivity and intersectionality. \n\nDespite advancements, data science still reflects societal biases due to limited data collection and analysis perspectives.\n\nThe ethics of data collection, use and interpretation are increasingly under scrutiny. Issues around consent, privacy and the potential harm of data misuse are central to the data feminism discussion. \n\nThe impact of biased data practices is global, affecting policies, technology development and social attitudes. These global challenges must be addressed, and data feminism seeks to advocate more inclusive and representative data practices.\n\n\n\n"
  },
  {
    "path": "book/website/ethical-research/data-hazards/dh-case-study.md",
    "content": "(er-datahazardscasestudy)=\n# Case Study: Data Ethics and Reproducibility Symposium and Data Hazards Workshop \n\nAs organisers, we (Ceilidh Welsh and Susana Roman Garcia) wanted to create an event that revolved around the {ref}`Data Hazards framework<er-datahazards>`. \nThe event focused on showcasing how different people think about embedding ethics into the work that they do. \nAs PhD students, we both felt the need to connect our interest in creating more ethical and reproducible work with our project's scientific questions. \nThis passion for working more ethically brought us together, and we sought to see how other people are embedding ethics into their work. \nWe hosted talks from PhD students who have been striving to make their work reproducible, how university lecturers might think of implementing Data Hazards into their material, and more (this is available in this {ref}`er-datahazardscasestudy-postevent-githubrepo`). \nWe were able to connect with others, share knowledge and learn new skills throughout the process. \nIn this chapter, we would like to share with you our experiences, including some of the challenges we faced, and provide tips for people hosting events in the future. \n\n(er-datahazardscasestudy-overview)=\n## Overview \nThe Data Ethics and Reproducibility (DER) Symposium was a one-day event held at the Alan Turing Institute on March 10th 2023. \nIn total, we had eighteen attendees in person and eighteen attendees online, not including volunteers and hosts. \nThis symposium aimed to showcase implementations of reproducibility and ethics for research, with a focus on Data Hazards.\nThe symposium structure included a variety of speakers, an interactive workshop and networking opportunities. \n\nA central part of this symposium was the {ref}`Data Hazards<er-datahazards>` Workshop to provide a collaborative training opportunity for attendees.\nThe workshop encourages attendees to explore, discuss and reflect on the ethical implications and wider societal impact of specific data-intensive projects. \nIt was an opportunity for attendees to learn how to use the Data Hazards framework and see how it applies to different research projects.\nThis allowed attendees to appreciate that ethics is complex, situational and important to discuss in our own contexts.\n\n```{note} \n**This case study is an account of our first-hand experiences organising and hosting an event. It may be useful to you if you would like to host or organise your own accessible workshop in data ethics and reproducibility (whether a Data Hazards workshop or not).**\n```\n\nFor more detailed information and checklists, please see the Turing Way page for {ref}`Organising a Conference<cl-mec-organising-conferences>`.\n\n(er-datahazardscasestudy-goals)=\n### DER Symposium Goals\n\n**Primary Goal:** to provide an open, inclusive and accessible space for attendees to learn from one another and discuss first-hand experiences applying ethics and reproducibility to their work. \nwe hope to discuss the successes and challenges we might face, and importantly how to consider ethics as more than a tick-box exercise in a research project.\n\n**Goals for Event Organisers:** \nTo develop our skills in event management and organisation including:\n-  hosting event platforms for attendee registration.\n-  questionnaries and polls.\n-  learn about accessibility considerations and requirements.\n-  equality impact assessments. \n\nImportantly, we wanted to improve our collaborative, teamwork and networking skills with both volunteers and colleagues to provide a curated and thoughtful event.\n\n**Goals for Event Attendees:** \n- Identify areas of research projects where wider ethical implications can be considered in different research contexts.\n- Learn through a hands-on workshop how to embed ethics and reproducibility into current work or research.\n- Discover what other attendees are working on in these areas.\n\n(er-datahazardscasestudy-organising)=\n## Organising the Event\nHere we discuss the logistics for organising an event, from setting up and promoting the event on an external platform to collaborating with volunteers and speakers to help successfully run the event on the day. \n\n(er-datahazardscasestudy-organising-agenda)=\n### Creating an Agenda:\nThe first step was to put together some initial ideas for the agenda.\nWe worked together using Google Docs. \nWe used Google Docs because it allowed us to easily share the documents with other people, and it was easy to access.\nWe made sure that no private or sensitive data was in any publicly shared Google Docs. \nOur finalised agenda is [here](https://docs.google.com/document/d/13buQgzAbTTSWVtONXC3cnjegWapJ0CBkL7TBkqNNRqU/edit).\nWhat did this process look like for us?\n - brainstorming themed talks,\n - deciding on keynote speakers, \n - practicalities of running the [Data Hazards Workshop](https://datahazards.com/contents/materials/workshop.html),\n - identifying the symposium's target audience, \n - planning the event start and end times, including rest breaks*, \n - catering options,\n - deciding whether to run a hybrid event (online and in-person). Guidelines for hybrid collaboration and events can be found [here](https://book.the-turing-way.org/collaboration/hybrid-collab).\n \n*To make the event more accessible, it was important for us to **make sure there were enough 'bio breaks'** to allow people to stretch their bodies, use the toilet and take a breather.\n\n**Speakers**\nA major part of putting together the agenda was all about picking our speakers.\nSpeakers are what made our symposium come alive, so we were eager to connect with different people to make sure our event had a mix of perspectives.\n\nWhen looking for speakers we:\n- reached out directly to keynote speakers whose research area or field considered data ethics and reproducibility.\n- invited speakers from both inside and outside our organisation to include a variety of experiences. \n- asked for abstracts and titles, providing potential speakers with an estimated length of talk (including time for questions) and session they would present in.\n\n\n(er-datahazardscasestudy-organising-advertising)=\n### Advertising the Event\n\n**Choosing a date and gauging interest:** \nBefore even asking for funding, we wanted to know if there was enough interest to organise a symposium. \nSo we reached out to our community *before beginning to organise* the symposium to gauge interest and spread the word. \nThis allowed us to know what other events were going on in The Alan Turing Institute and research field so that we could avoid clashes or busy times of the year.\n\n**Eventbrite:** \nAfter finding an available date for our interested participants, we chose to advertise our event on Eventbrite. \nAt the time of running our event, we could host it for free for 30 participants.\nHowever, as of now (November 2023), Eventbrite only allows you to host your event for free with up to 25 participants, then it charges you. \nSome alternatives you may use could be [Humanitix](https://humanitix.com/us/pricing), [Lu.ma](https://lu.ma/) or [eventsforce](https://www.cvent.com/uk).\nBecause we were running a hybrid event, we created two event pages (one [in-person](https://www.eventbrite.co.uk/e/in-person-data-hazards-ethics-and-reproducibility-one-day-symposium-tickets-516803953537) and one [online-only](https://www.eventbrite.co.uk/e/online-data-hazards-ethics-and-reproducibility-one-day-symposium-tickets-517490858087?keep_tld=1)). \nEventbrite worked well for us because:\n- it could be accessed by everyone, not just those in our organisation. \n- we could use it to gather participant information (clearly explaining why we were asking for the sensitive information and how the data would be handled), including accessibility information participants wanted to declare and dietary requirements.\n\n**Communications**\nTo make sure we kept attendees engaged and up to date, we emailed them before the event to:\n- encourage those who could no longer attend to cancel their reserved slot so that someone else could attend in their place. \n- provide a small nudge and reminder that the event is happening.\n- provide participants with a code of conduct and agenda in advance.\n- provide a Zoom link for online participants (one week in advance) and directions to the location of the symposium for those attending in person. \n\nThis is what a template email could look like:\n\n> Dear Participants,\n> Thank you for registering for the *(In person) Data Hazards, Ethics and Reproducibility One-Day Symposium*, on the *10th March 2023*. \n> We hope you are as excited as we are about this symposium!\n> \n> **Checking in: can you still make it?**\n> We ask you to please be considerate and kindly let us know in advance if you can no longer make it to the event.\n> This will help us reduce waste when ordering catering as well as help with organizing room numbers.\n> Due to the high demand for this event, we have people on a waiting list, so please cancel your ticket in advance if you cannot make it any more, in order to allow someone else to join instead. \n> Please cancel directly through Eventbrite or by emailing the organisers.\n> \n> **Agenda**:\n> Please find the tentative agenda here (add your own link here). It is mostly set up now, please keep your eyes open for the final details in the coming days. We are looking forward to showcasing these wonderful people and talks.\n> \n> **Code of Conduct**:\n> We ask all attendees to familiarize themselves with the code of conduct for the event (add your own link here). Please do have a read in your own time in order to allow for an open and welcoming environment among all participants. \n> \n> **How to reach the Alan Turing Institute, Enigma room**:\n> Once you arrive at the main Alan Turing Reception area, there will be someone there to greet you and guide you towards the Enigma room.\n> Instructions on how to get to the Turing Institute can be found here (add your own link here).\n\n\n(er-datahazardscasestudy-organising-collaboration)=\n### Collaboration: \nThe DER symposium had two primary organisers, however it would not have been possible without the help of different collaborators. \nHere we discuss the steps we took to reach out to volunteers, symposium collaborators and speakers to help the event run smoothly. \n\n**Internal Teams**\nWe had several collaborators from within our [organisation](https://www.turing.ac.uk/) including:\n- the **Skills Team** who assisted us with:\n    - completing equity, diversity and inclusion assessment and data protection forms.\n    - understanding the financial requirements of the event, from paying speaker travel expenses to setting up a purchase order for an event caterer. \n    - providing grassroots funding to cover event expenses.\n- the **Facilities Team** who assisted with:\n    - delivery of the catering on the day.\n    - room bookings to host the event. \n    - microphone and audio-visual set-up for the room to host the hybrid event. \n\n**Volunteers**\nVolunteers were an essential part of the day, and our event would not have been successful without their help! \nFor clear communication with volunteers, we:\n- **provided an availability form** for volunteers to fill in, indicating specific sessions or hours they could help, what they would like to do, and their own accessibility requirements. \n- **hosted an on-boarding call** to talk through the agenda and highlight the parts of the day where we would require help from volunteers.\n- **created a dedicated volunteer's Slack channel**, so that volunteers could ask questions relating to the event, and we could easily deal with any troubleshooting during the event.\n- [**created a final volunteer's task form**](https://hackmd.io/c2AnZHeRRtWaA_QRwobjsQ), so that all volunteers had been assigned tasks before the event began \n\n\n(er-datahazardscasestudy-organising-catering)=\n### Catering \nFor our event we choose a local, entirely vegan caterer, to align with the core values of the event. \nTo ensure successful ordering and delivery of the catering on the day we: \n- estimated the number of attendees to provide catering - including volunteers, speakers and organisers. \n- received a quote from the caterers in advance and ensured we had the budget to cover the quote.\n- collected dietary requirements to ensure that all attendees were catered for, and ensured the catering company received these requirements in advance. \n- arranged a delivery time and location.\n- ensured payment to the catering company as per company and organisation policies.\n\nTip: make sure terms and conditions are read and timing requirements from different parties involved are clear from the beginning. \nIt might be that the caterer you are ordering from requires a purchase order to be completed at a certain time to complete the order action.\n\n\n(er-datahazardscasestudy-hosting)=\n## Hosting the Event \nThere is already a chapter on {ref}`cl-mec-organising-conferences` which includes an in-depth dive into requirements for accessibility. \nLikewise, there is also a section for {ref}`cm-comms-overview-accessibly`.\nAs well as on {ref}`cl-mec-hybrid-collab-guidelines`. \n\nFrom our experience, here are some extra tips on the day of the event.\n\n(er-datahazardscasestudy-hosting-startingevent)=\n### Starting the Event \n- As the hosts arrive in person at least 1 hour before start time ensure the Zoom link and audio-visual equipment (speakers, screens and microphones) are all working.\n- Open the online call early to allow for: \n    - volunteers to settle in and open any breakout rooms.\n    - participants to join in advance and set up break-out rooms for networking events and workshops later in the day.\n\n(er-datahazardscasestudy-hosting-hybridevent)=\n### Hybrid Event Tips\nWe chose to host the symposium in a hybrid format as this would allow attendance for those interested in the topic, and speakers who would be unable to attend in person.\n \nThere are a lot of tasks involved in running a hybrid event. \nThanks to good communication with volunteers and preparing the room before the event, our hybrid format ran successfully without hiccups.\nHere we share some tips that helped us!\n\nTo ensure a smooth hybrid event, we:\n- tested the physical room audio-visual the day before and the day of the event, to ensure there were multiple microphones and the capability for live Zoom recordings.\n- had in-person session chairs to introduce speakers and make sure people (both online and in-person) kept to agenda timings.\n- made sure session chairs were aware of the hybrid set-up, including microphones, speakers and Zoom settings,\n- made sure that there was always at least one person in the room who was comfortable with the hosting technology.\n- set a non-disruptive 1min warning, using a 1min sign to hold up in-person, or type into the chat online, to signal the end of the talk.\n- kept questions to the end of the talks to avoid disruptions and talks becoming longer.\n- kept in contact with online hosts throughout the day to ensure both the presentations and the audio were working.\n- had our online volunteers keep track of break-out rooms, host discussions, and keep track of questions for Q&A sessions.\n\n\n(er-datahazardscasestudy-hosting-accessibility)=\n### Accessibility\nBelow we provide some insight into what was important for us to consider during the event.\n\n**Code of Conduct**\nWe put together a code of conduct for the event that reflected our values and the values of the community we aimed to create during the symposium. \nIt also summarised the expectations of participants joining the symposium and laid out reporting guidelines and contact points for if the code of conduct was breached during the event.\n\nPlease find our code of conduct [here](https://hackmd.io/@7D_si7-qQwKdepUrj7_AzA/DER_CoC).\n\nAdditionally, overall, below we highlight some points that we actioned to ensure that the hybrid format and the event were accessible:\n\n- collected accessibility requirements at the time of advertising, to help with planning.\n- used [Otter.ai](https://otter.ai/), a speech-to-text transcription application using artificial intelligence and machine learning. \n  It shows captions for live speakers and generates written transcriptions. \n  Note: Otter.ai is not always sufficient as it has been trained on English and American accents, so further editing of subtitles or transcripts might be needed.\n- ensured all participants in person were using microphones when speaking.\n  Microphones can be helpful for all hearing requirements, both online and in-person (don't assume everyone can hear equally).\n- provided regular accessibility breaks. \n- reminded all participants which sections of the day would be recorded.\n- provided a space for participants to include their names and pronouns using name labels for in-person and Zoom names online.\n- provided a code of conduct, and contact points for if the code of conduct was breached.\n- used the raised-hand function in Zoom for direct questions, but included a session chair to monitor for questions in the chat. \n\n(er-datahazardscasestudy-hosting-workshop)=\n## Hosting a Workshop: Data Hazards  \nThe Data Hazards workshop was a key part of the symposium. \nParticipants engaged with a real-life research case study, presented by the researchers themselves, to evaluate the Data Hazards labels and which ones may apply. \nThe researcher gave a five-minute presentation on whole-cell models of _E. coli_. \nParticipants could then ask the researcher only factual questions about the project, for example, 'where did you collect your data from?'.\nThere were opportunities for attendees, volunteers and the researcher to discuss the ethical context of the project.\nWe split the attendees into smaller groups to facilitate discussion and provide a series of prompt questions. \nEach group then labelled the research project with the hazards they thought applied. \nThese were then fed back to the researcher for broader group discussions. \nDetails of the workshop run on the day are available in the {ref}`er-datahazardscasestudy-postevent-githubrepo`. \n\n(er-datahazardscasestudy-postevent)=\n## Post Event \nOnce the event had finished we collected feedback from participants. \nBelow we provide information on how we did this.\n\n(er-datahazardscasestudy-postevent-feedbackforms)=\n### Feedback Forms \nTo cover all avenues for feedback after the event we: \n- provided a QR code and link to the feedback form in the final session of the day and encouraged participants to complete this form. \n- emailed participants after the event to thank them for their attendance and share the feedback form again.\n- collected slides and recordings from speakers. \n- created a public Git repository where all content is openly available for attendees and those interested in organising and hosting a similar event.\n\nFeedback is really invaluable to ensure that future organisers can learn from previous events. \nIn our case, this was our first symposium, so feedback from participants was really important! \nHere we provide some feedback we were given after the event.\n\n**Positive Feedback:**\n- Attendees who came to the symposium with no experience of the data hazards enjoyed the interactive nature of the workshop, saying that: *'the structure of the course made it very easy to follow, and the case study element was very interactive with lots of opportunities to ask questions.'*\n- Attendees also enjoyed the wide applications of data ethics and reproducibility in the research space. \n- Attendees enjoyed networking over lunch, and our [vegan catering](http://yellowkitchen.co.uk/) got lots of compliments! \n\n**Constructive Feedback:**\n- Some attendees struggled with people joining and leaving parts of the online event but recognised this was out of the organiser's control.  \n- A consideration for future events would be to create initiatives to encourage people to stay online for the whole day.\n- Attendees felt that an additional industry perspective would have been beneficial.\n\n(er-datahazardscasestudy-postevent-githubrepo)=\n### GitHub Repository \nTo embody the topics of reproducibility and open science, we have shared symposium content on a public GitHub repository. \nThe aim of this is to help anyone who wants to run a workshop or symposium in the future consider the different elements of event organisation and hosting. \n\nFind our full GitHub repository, including recordings of speakers, code of conduct, and forms [here](https://github.com/Susana465/der_symposium_20230310). \n\n(er-datahazardscasestudy-challenges)=\n## Challenges\nAs this was the first event (on this scale!) that we had organised, there were several challenges that popped up throughout the process. \n\nThe primary challenge was understanding the number of hours required to organise an event. \nThis event took over 50 hours of organisational time over a period of three months, from requesting funding, form writing, code of conduct, creating the event page, advertisement, organising catering and so on. \nIf this is the first time you are organising an event, different tasks may take longer than expected to complete. \nWe would recommend you establish a large organising committee of passionate people, to work together and split tasks efficiently.  \nIt is also important to recognise the boundaries and constraints of how long you are willing to spend organising an event. \nDon't let perfection be the enemy of good! \nThis also taught us that organising an event will **always** take longer than you expect, so plan accordingly! \n \n(er-datahazardscasestudy-reflections)=\n## Reflections \nAfter the event, we realised that it is important to understand your organisation's guidelines and frameworks for hosting events, what support they can offer you, and reach out to ask for help where you need it. \n\nIn our experience organising and hosting an event was both stressful and fun!\n\nHosting a hybrid event was challenging and required extra organisation and volunteers.\nBut after all the effort we put into it, it ran smoothly and we were very proud to have both online and in-person attendance. \n\nWe also recognise the importance of {ref}`self reflection<er-self-reflection>` throughout the process of organising an event, and how our lived experiences gave us a particular lens on how we view the world. \nSo ensuring we collaborated with others, and took on different points of view ensured a responsible, inclusive, and fair event! \n"
  },
  {
    "path": "book/website/ethical-research/data-hazards/dh-how-to-use.md",
    "content": "(er-datahazardshowtouse)=\n# How to use the Data Hazards project\n\n```{figure} ../../../figures/data-hazard.*\n---\nheight: 500px\nname: data-hazard\nalt: A cartoon sketch of a female-presenting researcher using the Data Hazard labels on a research project. The first section in the image is the researcher looking at 10 data hazard labels under the heading 'Learn'. An arrow leads to the next step, where under the heading 'Apply' the group of people are looking at a research paper with the researcher and talking to one another, one person is raising a hand to ask a question. An arrow then leads to 'Display' where the researcher is pointing to their paper in front of an audience, with the hazard labels on each side. Learn, Apply and Display are all connected to the bigger title of Reflect, surrounded by a thought bubble. To the right-hand side of the Reflect heading, the researcher and another person are sticking hazard labels to a piece of paper.\n\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\nThere are four steps to using the Data Hazard labels:\n\n1. **{ref}`Learning<er-datahazardshowtouse-learning>`**: familiarising yourself with the Data Hazard labels.\n\n2. **{ref}`Applying<er-datahazardshowtouse-apply>`**: deciding which Hazard labels are relevant to your project.\n\n3. **{ref}`Reflecting<er-datahazardshowtouse-precautions>`**: on what to do differently and what mitigations to make.\n\n4. **{ref}`Display<er-datahazardshowtouse-display>`**: displaying the labels alongside your work can help you to communicate that you've thought about these broad ethical issues and how you'd like others to use your work.\n\nIn addition, whether you have used the labels yet or not, you can also **{ref}`contribute<er-datahazardshowtouse-contribute>`** to the project. If you think any labels are missing or could be improved, this project is looking to evolve with collaboration.\n\n(er-datahazardshowtouse-learning)=\n## **1. Learning** about the Data Hazard labels \nThe first step in using the Data Hazards materials is learning about the Data Hazards labels: familiarising yourself with them so that you can later {ref}`apply<er-datahazardshowtouse-apply>` them to a project.\n\n\nData Hazards labels are supposed to represent as broad a selection of ethical risks associated with data-centric work as possible.\nThis includes, but is not limited to the risks considered by  {ref}`ethics committees<er-committees>`, which often focus on risks to research participants that could lead to legal repercussions for the research organisation, such as [consent](https://datahazards.com/contents/hazards/lacks-informed-consent.html) and [privacy](https://datahazards.com/contents/hazards/risk-to-privacy.html).\nIt also includes issues like [algorithmic bias](https://datahazards.com/contents/hazards/reinforces-biases.html) or [danger of misuse](https://datahazards.com/contents/hazards/danger-of-misuse.html) that might result from downstream outputs of research, rather than the research process itself.\n\nLearning about the Data Hazard labels is usually part of a Data Hazards workshop, but you can also do it independently by:\n\n1. Reading [the labels on the website](https://datahazards.com/labels) - click on each of them for more information!\n\n2. Practicing applying them to a project.\n\n3. Talking about them with other people.\n\n4. [Printing out label cards](https://datahazards.com/_downloads/b92f884790471e61048c5e0fee4dd08e/DataHazards_PrintableCards.pdf) and using them in a workshop.\n\n(er-datahazardshowtouse-apply)=\n## **2. Applying** the Data Hazard labels \nApplying the labels means deciding which labels are relevant to a project.\nThere is no prescriptive way to do this. \nHowever, we suggest one way to go through each label one at a time and decide why or why not it applies to your project.\n\n- **What projects can I apply the labels to?** \n\nWe recommend that you apply the labels to your own work unless you've been invited to give feedback on another piece of work.\n\nThe labels have been applied to many different types of projects that use data or data-intensive methods.\nSome examples of projects include:\n\n- A predictive model that aims to use machine learning to predict human traits from their genetic mutations.\n\n- A digital humanities project that uses web-scraping and natural language processing to analyse the text of political speeches.\n\n- An NHS data-linkage project to create a new database for researchers to use.\n\n- A modelling project that aims to improve whole-cell models of a bacteria.\n\nLabelling these projects was part of various workshops and is not recorded or shared publicly.\n\n- **When should I apply Data Hazards in my work?** \n\nData Hazards labels can be applied at any stage in the research life-cycle.\nIdeally, the best time to apply the labels is close to the beginning of the research project, at the same time as you might consider your university ethics process, or {ref}`cm-dif-articles-registered-reports` (you can also pre-register your Data Hazards analysis!). \nHowever, much of our research builds on itself, so researchers have also found [workshops](https://datahazards.com/contents/materials/workshop.html) useful to reflect and plan what they can do better in follow-up projects.\n\nAt the beginning of your workflow, you might want to prepare to avoid certain Data Hazards if you can, and if you can't avoid them because of where your data has come from, you may want to acknowledge this. \nFor example, if you have a [sensitive data project](https://book.the-turing-way.org/project-design/sdp.html), what Data Hazard labels will apply, and/or what can you do to design your project in a way that avoids certain harms?\n \nAs you are collecting and analyzing your data, you might want to iteratively think of the potential Data Hazards that exist in the information you are actively collecting. \nIf you have a project where data has already been collected in the past, you can still apply and think of what labels may be relevant to the dataset. \n\nWhen you are reporting your results, it is recommended you also think of reporting mitigation strategies together with the labels; [see examples of how others have done this](https://datahazards.com/contents/materials/examples.html). \nThis would then be helpful for people who see your outputs in the future. \nThey can be aware of potential risks as they proceed with the project, and continue to think of solutions to any issues related to the research topic.\n\n(er-datahazardshowtouse-precautions)=\n## **3. Reflecting** on Safety Precautions\n\nThis chapter is a good place to read about {ref}`er-self-reflection`, where discussion on identity and positionality, power and privilege, and self-reflection prompts are provided. \nReflecting on where you stand in your work means you are more likely to see and acknowledge mitigation strategies which can apply to data hazards of your work. \nLikewise, reflecting on the history of where your work has come from may shed light as to how and why some data hazards apply to your work and promote thinking on how to alleviate these later. \n\nAre you using data? Then doing some reflection as suggested above could help you think of what Data Hazards labels you might encounter throughout your project, for example [\"ranks of classifies people hazard\"](https://datahazards.com/contents/hazards/ranks-classifies.html) or [\"risk to privacy\"](https://datahazards.com/contents/hazards/risk-to-privacy.html).\n\nA key part of the Data Hazards framework is to reflect on what to do differently.\nThinking about mitigation strategies means that you suggest ways to prevent risks associated with your work, and if no prevention is possible at present, how to avoid it in the future. \nThe point of this is not to think of *all* the possible scenarios on how your work carries or can carry risks, and of *all* possible mitigation measures; but to reflect, acknowledge and promote an awareness about the ethical implications of the work that we do.  \n\n(er-datahazardshowtouse-display)=\n## **4. Displaying** the Data Hazard labels \n\nTo showcase your reflections and how you have applied the labels, displaying them can help people visualise their importance in your work.\n\nThe Data Hazards website has some suggestions and templates on [how to present the labels](https://datahazards.com/contents/materials/presenting.html). \n\n(er-datahazardshowtouse-contribute)=\n## **Contributing** to Data Hazards materials\n\nAdditionally, to the steps stated above, the Data Hazard labels are a collaborative effort to create a shared vocabulary that evolves with time. \nIf you find that labels are missing, you can suggest a new one yourself.\nGuidelines on how to contribute are laid out in the [contribution section](https://datahazards.com/contents/contribute.html) of the Data Hazard website.\nThere are different ways of contributing, either by hosting a workshop on how to apply Data Hazard frameworks, by applying them to your work and sharing this, or by proposing new labels to add to the existing ones. \n\nYou can reach the team via a [GitHub discussion post](https://datahazards.com/contents/contribute.html), or by [contacting them directly via email](https://datahazards.com/contents/contact.html).\n\n\n"
  },
  {
    "path": "book/website/ethical-research/data-hazards/dh-intro.md",
    "content": "(er-datahazardsintro)=\n# Introduction to Data Hazards Project\n\nData Hazards is a community project to develop a shared vocabulary of data science risks (in the form of Data Hazard labels) and materials to help data practitioners use them.\n\nThese labels and materials are provided CC-BY licensed on the [Data Hazards website](https://datahazards.com).\nThey exist to facilitate interdisciplinary discussions and self-reflection about all kinds of data ethics risks. \nUltimately, the project aims to help data practitioners to identify and mitigate these risks.\nYou can watch a short animation explaining the project below:\n\n::: {iframe} https://www.youtube-nocookie.com/embed/26fNnar4JvY?controls=0\n:width: 100%\n:::\n\n(er-datahazardsintro-datahazardslabels)=\n## Data Hazards labels\nIn this section, we explain the nature of the project.\nFeel free to skip ahead to the next section for more practical guidance on {ref}`how to use the Data Hazards<er-datahazardshowtouse>` in your data-intensive work.\n\n### What do they look like? Anatomy of a Data Hazards label\n\nEach label has, as described in the main website: \n\n- **Hazard image**, title, and description which represents and describes the risk.\n- **Examples** to clarify what the hazard covers.\n- **Safety Precautions** things that we would want to see done before the research is deployed.\n\n### Example label: high environmental cost\n```{figure} ../../../figures/data-hazard-environmental-cost.*\n---\nheight: 250px\nname: data-hazard-environmental-cost\nalt: A red diamond with an image of the earth at the centre. The earth is surrounded by a flame. \n\n---\n_Data Hazards_ project illustration by Yasmin Dwiputri. Used under a CC-BY 4.0 licence. [DOI.](https://doi.org/10.31219/osf.io/hzmyp).\n```\n\n#### Description\nThis hazard is appropriate where methodologies are energy-hungry, data-hungry (requiring more and more computation), or use special hardware that requires rare materials. Alternatively, this could also apply to research which outputs high amounts of waste.\n\n#### Examples\n - Example 1: Wet-lab experiments which create large amounts of single-use plastic waste, for example, pipette tips or petri dishes; or specific chemicals that are harmful to the environment {cite:ps}`Freeland2022`, {cite:ps}`Leak2023`. \n \n - Example 2: Running big models on High-Performance Clusters can have a big environmental impact with the energy they consume {cite:ps}`alaparthi2020bidirectional`, {cite:ps}`Bender2021`.\n\n#### Safety Precautions\n - Consider recycling programmes, as well as reducing purchasing and shipping. \n - To communicate the scale of the issue to other stakeholders, you may want to [convert units of energy into more relatable units](https://calculator.green-algorithms.org/).\n - Find out if your cloud provider uses renewable energy.\n - Consider profiling your code, and rewriting it to use less energy. \n - Consider future work that would reduce the need to use increasingly more resources.\n\n---\n\n### But Why Hazard Labels?\nThe Data Hazards framework takes inspiration from the visual nature of chemical hazard symbols, communicating to users the potential outcomes and risks of a project. \nSimilarly, to chemical hazards, labelling something as hazardous does not change or reduce its inherent risk.\nHowever, the visual display of the risk allows the user to make choices based on this knowledge. \nThe user can choose to take the necessary precautions to keep themselves, others and their environment safe. \nThis also applies to the Data Hazard labels, where if we can identify the risks, we can act accordingly and mitigate possible risks.\n\n\n### Where did they come from?\nThere were originally six labels, which were identified through reading data ethics papers at [Data Ethics Club](http://dataethicsclub.com): a fortnightly journal club for data science and ethics.\nThrough collecting suggestions [on GitHub](https://github.com/very-good-science/data-hazards), and at conferences and Data Hazards workshops, further labels were suggested and added until we reached the current 11 labels as of November 2023.\n\n### The Hazard labels are versioned\n<!--The Hazard labels are versioned!-->\nThe Data Hazard labels are a living project and will continue to change as we gather more suggestions - for this reason, they are versioned semantically.\nAt the time of writing, in `v1.0`, there are 11 Data Hazard labels: you can [explore the Data Hazard labels yourself](https://datahazards.com/labels) on the Data Hazards website.\n\n(er-datahazardsintro-ethicalframeworks)=\n## Ethical Frameworks \nEthical frameworks can provide a toolkit to help researchers, stakeholders, developers, policy-makers and decision-makers understand what is required and should be considered when engaging in responsible research and innovation. \nPhilosophically and socially, ethical frameworks have been considered broadly outside of data science and AI settings and projects.\n\nAs not everyone may agree on a shared meaning of research ethics, there are many ethical frameworks available.\nIndividuals may adopt and interpret ethical meanings based on unique priorities, personal needs, professional requirements or societal and cultural roles. \n\nSome examples of ethical frameworks that already exist in scientific domains include: \n\n1. Citizen Science and Public and Patient Participation in Research {cite:ps}`Groot2022`\n2. Ethical Framework for Presenting Scientific Results to Policy-Makers{cite:ps}`Schroeder2022`\n3. Five Dimensions of Research Ethics: A Stakeholder Framework for Creating a Climate of Research Integrity {cite:ps}`Dubois2018`\n4. ESRC Framework for Research Ethics {cite:ps}`esrc2010Framework`\n5. Ethics of AI in Education: Towards a Community-Wide Framework {cite:ps}`Holmes2022`\n\nThe Data Hazards framework has some similarities to the example frameworks listed above. \nHowever, the Data Hazards provides an intuitive and visual approach to evaluating and reflecting on risks associated with a research project. \nIt allows the dangers to be explicitly stated alongside some mitigation strategies researchers can use to tackle these risks. \nIt provides us with a toolkit to facilitate discussions, reflection and decision-making for current and future stakeholders.   \nCrucially, it also considers a more holistic view of ethics, not focusing on a specific domain or risk, or separating human-centered ethics from non-human animal or environmental frameworks. \nThis toolkit allows for reflection across a spectrum of risks and ethical considerations. \nThe Data Hazards framework also provides an open-source approach to an ethical framework, where flexibility and creativity to adapt and develop the framework are strongly encouraged! \n\n(er-datahazardsintro-keyterms)=\n## Key Terms\nRisk and hazard are terms sometimes used interchangeably, but sometimes they can have nuanced specific meanings. \nCertain fields like environmental sciences, engineering or medicine require a clear and consistent use of these terminologies.\nGenerally, \"hazard\" refers to the inherent qualities or characteristics of something that make it potentially harmful. \nIt's more focused on the nature of the threat rather than the likelihood of it occurring. \nWhereas \"risk\" is a term that refers to the likelihood and impact of something happening. \nIt's often used in decision-making contexts to evaluate the potential consequences of actions.\n"
  },
  {
    "path": "book/website/ethical-research/data-hazards.md",
    "content": "(er-datahazards)=\n# Data Hazards\n<!--`data-hazards.md` landing page-->\n\n(er-datahazards-prerequisites)=\n## Prerequisites\n\n| Prerequisite | Importance | Notes |\n| -------------|----------|------|\n| {ref}`er-self-reflection` | Helpful | Reading the self-reflection chapter will give you a good starting point to reflect on your work before applying the Data Hazards labels. This chapter gives more context as to why self-reflection can be a useful tool in your research. |\n<!--| {ref}`er-intro` | Helpful |  |-->\n\n(er-datahazards-summary)=\n## Summary\n\nThis chapter will discuss the [Data Hazards Project](https://datahazards.com/), which is a community-developed shared vocabulary of data science risks.\nThe vocabulary represents data ethics concepts in the form of Data Hazard labels (which resemble chemical hazard labels).\nThese are provided alongside materials to help data practitioners use them, such as templates for workshops or self-reflection.\n\nThese labels and materials exist to facilitate interdisciplinary discussions and self-reflection about all kinds of data ethics risks. \nUltimately, the project aims to help data practitioners to identify and mitigate these risks, by removing barriers for researchers to engage with these practices.\nThe chapter describes the motivation behind the project, how you can use it to support your data-intensive work, and how you can contribute to it.\n\n(er-datahazards-motivation)=\n## Motivation\n\n1. **Mitigate risks in your data science work:** we all (hopefully!) want our data science work to do good, but as data scientists we are often trained primarily in solving technical problems, rather than ethical ones. Data Hazards should help you to identify risks that you might not have considered and ways of mitigating those risks.\n2. **Change research culture**: contribute to the wider adoption of data scientists considering the broader ethical implications of their work.\n"
  },
  {
    "path": "book/website/ethical-research/ethical-research.md",
    "content": "(er)=\n# Guide for Ethical Research\n\n***This guide covers topics related to ethical aspects in data science.***\n\nData scientists make data-driven decisions that require the collection of data and model building approaches that can have serious implications for health, security, politics, society and everything associated with them.\nResearchers or any kind of stakeholders in data science have an obligation to consider the ethical standards and their impact of people's lives {cite:ps}`Loyola2020Ethics`.\n\n```{figure} ../../figures/ethics.*\n---\nname: ethics\nalt: An illustration of a wooden judge hammer labeled with law is hitting a plank labeled with ethics with a quotation \"consider necessary restriction around sharing different types of data\n---\nResearch Ethics. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\nIn this guide, we invite discussions and guidance on ethical considerations that a data scientist should keep in mind to ensure not only that their work maintains a high level of moral integrity, but also that their work is carried out at the highest scientific standards.\n\nCheck out our [contributing guidelines](#ch-contributing) to get involved.\n"
  },
  {
    "path": "book/website/ethical-research/ethics-committees.md",
    "content": "(er-committees)=\n# Research Ethics Committees Processes\n\nResearch ethics committees (RECs), also known as institutional review boards (IRBs), exist within institutions to scrutinise the ethical implications of their research projects.\nRECs have historically focused on projects that involve human participants, meaning that they often prioritise the well-being of those directly involved in research projects.\nRECs are also a useful mechanism for the mitigation of reputational damage for their institutions and researchers, as they can ensure that research is conducted within the law.\nFurther, RECs are well-positioned to improve the state of scientific inquiry.\nThis is because they can provide ethical oversight to expert researchers who do not have sufficient experience or capacity to deeply reflect on the ethical questions their work raises.\nThis is not to liberate the researcher of their ethical responsibilities - ultimately, they make the decisions as to how to conduct their work - but to provide support in respect to these questions.\nWhilst there is a great deal of complexity involved in holding individuals accountable in scientific projects, this chapter assumes that RECs seek to improve how science is conducted at large.\n\n```{figure} ../../figures/ethics-committee-with-text.*\n---\nheight: 500px\nname: ethics-committee-with-text\nalt: A female-presenting person is walking into a path that leads to somewhere far with mountains. The path starts with a big banner that says “Research Ethics Committee”. At the beginning of the path, there is a male-presenting person with a map, a backpack, glasses and a friendly face looking like they are ready to join the other person to embark on their research ethics committee journey. Next to the first part of the path, there are a couple of booths full of people, one with “Ethics Reviewers”, and another one further down with “Ethics Decision Making” as the title of the booth. These represent the journey one goes through when going through research ethics committee processes.\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\nThere are many ways a research ethics committee might organise itself.\nOne common approach is to provide a form for all projects conducted at their institution to undergo ethical appraisal.\nBelow, we propose five headline questions that an ethics committee might want to know about. For each headline question, we provide:\n1. Justification as to why it is important (why we suggest these headline questions to RECs), and\n2. Certain considerations a researcher might make when preparing a response (what applicants should consider when reflecting on these points).\n\nThe suggestions we provide are by no means exhaustive and each research project is a world of its own, but the below can help embed ethical reasoning in scientific work.\n\nThe five headline questions relate with the following topics:\n1. Project Description\n2. Data and Methodology\n3. Consent\n4. Privacy and Security\n5. Further Societal Consequences\n\n## Project Description\n>Please describe your project's goal and purpose.\n\n**Justification.** RECs will need to know what your project is about, what it is looking to achieve and why it matters.\nRECs need to understand what a project entails to consider its ethical implications.\n\n**Responding to this question** is an opportunity to share the benefits that your work strives for.\nThis question can generally be responded to with what was written about the project in its successful grant proposal.\nIt is just worth making sure that past descriptions of the project are updated with new information, as projects can change quickly.\n\nA more robust response to this question will also explain how the project fits within the wider goals, challenges, and objectives of your institution.\nIn the case of charities, reference to your institution's \"charitable objects\" will be important.\nSee [GOV.UK](https://www.gov.uk/government/publications/example-charitable-objects) for example charitable objects.\n\nTo respond to this question, provide:\n1. Detailed objectives of your project;\n2. A clear description of the scientific question being responded to;\n3. A clear motivation for answering your project's question;\n4. An explanation as to how your project aligns with your institution's strategic values and aims.\n\n## Data and Methodology\n>Please explain what data you will use and why. Please explain how you will use these data.\n\n**Justification.** Some ethical questions that arise throughout a project will relate with the data and the research methods used.\nFor example, the data employed may be filled with [\"missing data sets\"](https://github.com/MimiOnuoha/missing-datasets), and the methodology can be problematic if built on unchecked assumptions.\n\n**Responding to this question** requires describing the project's data and methodology in a detailed manner.\nJustification must also be provided as to *why* the outlined data are necessary and the described methodology is the best for the job.\n\nA more robust response to this question will describe how the data will be managed for the purpose of the methodology described.\nTo this effect, it is advisable to share a [](#rr-rdm-dmp).\nIt is also helpful to describe how the data and methodology will be made available to other researchers.\n\nTherefore, responding to this question requires providing:\n\n1. Detail about the data and methodologies you will employ;\n2. Justification for the choice of data and methodologies;\n3. Reference to a [](#rr-rdm-dmp);\n4. Explanation as to how your chosen tools and methods allow for reproducible research - consider the benefits listed in [](#rr-overview-benefits).\n\n## Consent\n>How will you ensure any personal data collected for your research is done so with freely-given informed consent?\n\n**Justification.** The purpose of ensuring consent for the collection, use or reuse of personal data is to respect the autonomy of individuals and operate in line with pertinent legislation.\nIt is also an important concept enshrined in law.\nIn the General Data Protection Regulation (GDPR), for example, *consent* is defined as:\n\n>“any freely given, specific, informed and unambiguous indication of the data subject’s wishes by which he or she, by a statement or by a clear affirmative action, signifies agreement to the processing of personal data relating to [them]\" GDPR, Article 4.\n\n**Responding to this question** entails reflection on how data are sourced - where they come from and who they pertain to.\nSetting the legal discussions aside, this question requires following one of two approaches:\n1. If employing data that is readily available (perhaps online or provided by a third party), it is important we understand the terms and conditions whereby those data are made available.\nThe point here is to confirm that the data will be used following the purpose for which they were collected.\nIn this respect, [](#rr-licensing-data) outlines different ways online data might be held.\n2. If gathering new data through experiments with human research subjects, both participant information sheets and [informed consent forms](#pd-sdpm-informed) must be issued.\nOn the one hand, participant information sheets provide research participants with all the information they need to know about taking part in the study.\nOn the other hand, consent forms summarise the participant information sheet and provide a section for the potential participant to record their acceptance of the conditions.\nThe consent form, in particular, should provide contact details for participants to reach out to the research team or institution (depending on internal processes) should they have any queries or concerns about the study in the future.\nGenerally, individual institutions make templates available for their researchers, you can find examples in [](#pd-sdpm-informed).\n\n## Privacy and Security\n>How will you ensure that any sensitive information your project uses is kept secure and made accessible only to pertinent members of the research team?\n\n**Justification.** Privacy is a fundamental human right (see [](#er-law-policy)).\n\nTherefore, it is critical that projects be conducted in a way that respects privacy.\n\n**Responding to this question** might require a review of your institution's internal policies.\nWhen handling personal data in particular, your institution might already have a data policy in place, as well as a process to conduct a data protection impact assessment (see [the ICO](https://web.archive.org/web/20210310232612/https://ico.org.uk/for-organisations/guide-to-data-protection/guide-to-the-general-data-protection-regulation-gdpr/accountability-and-governance/data-protection-impact-assessments/) for more details).\nSome funders also have policies for handling data collected or used in the course of research that they fund.\nYour institution may also have a secure IT infrastructure for the storage of data, as well as to ensure correct levels of access.\nIt is worth asking if there are such policies and processes in your institution.\n\nIn the case of using personal data, it is also worth noting if any method for [making data anonymous](#pd-sdpm-privacy-anonymisation) will be employed.\n\nIn either case, data security doesn't apply only to personal data. \nConsider, for example, a project conducted with a government body that holds certain information that mustn't be released, or a firm providing you with proprietary code.\nUltimately, this is a broad question that requires that we:\n\n1. Describe any privacy concerns and share institutional processes followed in this regard (for example, a data protection impact assessment);\n2. Explain what standards will be used if any anonymisation is conducted;\n3. Explain how data will be stored and kept secure (this can be drawn from your [data management plan](#rr-rdm-dmp));\n4. Consider asking if your institution provides a secure IT environment (an example of this is the Alan Turing Institute's [Data Safe Haven](https://www.turing.ac.uk/research/research-projects/data-safe-havens-cloud))\n\n## Further Societal Consequences\n>Please describe both positive and negative potential societal consequences of your work.\n\n**Justification.** This question relates with the six dimensions of research ethics provided in the [Guide for Ethical Research](#er-intro).\nThe question acknowledges that research is not conducted in a vacuum but in a social world it can deeply impact.\nTo this effect, the question should be treated in the broadest sense by considering the impact on the researchers involved, the natural environment, society at large and scientific communities in particular.\n\n**Responding to this question** means providing two blocks of information:\n1. The (societal, environmental and personal) risks involved in the project, and\n2. The measures put in place to mitigate these risks.\n\nThe first point requires further reflection on the myriad of topics already outlined in the previous four questions (recall how methodology and data collection practices might raise ethical questions), as well as careful consideration about the potential risks of your project's output.\n\nThe second point relates with the actions taken to *mitigate* identified risks.\nIt is not sufficient, in other words, to describe what might go wrong - it is necessary to explain how risks will be reasonably avoided.\n\nThere are two further considerations worth making when responding to this question.\nOn the one hand, how will the project benefit fellow scientists?\nThis question, in turn, can be met by two courses of action.\nFirstly, consider how your work will be made openly accessible by following the [FAIR principles](#rr-rdm-fair).\nSecondly, describe how your work might be used for *further* responsible research and innovation.\n\nOn the other hand, it is worth recapitulating the points made in section one.\nIn other words, remind the REC of the benefits that are expected of your work.\nThis is not to \"counter\" risks - the safeguards described should do that.\nThe point here is to show that ethical reflection is embedded in your project.\n\n## General suggestions for ethics applications\nFocusing on how to respond to each broad question, we can summarise the advice provided as follows:\n1. Be detailed in your responses - the more the REC knows, the easier it is for them to consider a project's ethical implications.\n2. Use other documents about your project to provide information to RECs.\nAlthough documentation may need updating, using other relevant documents can make this process more straightforward. \nSuch documents might be grant proposals, data management plans, data protection impact assessments...\n3. Find ethical resources that are relevant to your project.\nScientific projects can be diverse in object of study.\nNumerous ethics frameworks have been made available over the years.\nA well-established framework in data science is that of the [five safes](https://ukdataservice.ac.uk/help/secure-lab/what-is-the-five-safes-framework/), for example.\nA comprehensive resource for the governance of artificial intelligence is [*Understanding artificial intelligence ethics and safety*](https://www.turing.ac.uk/sites/default/files/2019-08/understanding_artificial_intelligence_ethics_and_safety.pdf).\nA much more specific framework has been developed for the wellbeing of researchers exposed to abusive online content: [*Guidelines for researchers working with abusive content*](https://github.com/bvidgen/Challenges-and-frontiers-in-abusive-content-detection/blob/master/Challenges%20and%20frontiers%20in%20abusive%20content%20detection%20Appendix%20-%20researcher%20guidelines.pdf)\n\n***Chapter Tags**: This chapter is curated for the `Turing Data Study Group` (`turing-dsg`).*\n"
  },
  {
    "path": "book/website/ethical-research/ethics-intro.md",
    "content": "(er-intro)=\n# Introduction to Research Ethics\n\n## Summary\n\nThis section briefly introduces the key concepts of *Responsible Research and Innovation* (RRI) and *Research Integrity*.\nBoth refer to different questions within the field of research ethics.\nBelow is a table summarising these questions:\n\n| Factor | RRI | Research Integrity |\n| -------- | -------- | -------- |\n| **Perception of ethical questions** | Outward (for example: how does the public perceive scientific output?) | Inward (for example: how do researchers conduct themselves?) |\n| **Who researchers interact with** | With research subjects (for example: do we treat them with respect?) | With fellow researchers (for example: do we adhere to a code of conduct?) |\n| **What shapes research** | Shaped by society (for example: how is AI as a solution generally understood?) | Shaped by institutional norms (for example: what research questions are being funded?) |\n\n```{figure} ../../figures/ethical-research.*\n---\nname: ethical-research\nalt: One person looks for research integrity and another person holds up a map and looks for the research consequences.\n---\nLooking at different aspects of research ethics. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n## Motivation\n> why we think you should read the whole thing\n\n In conducting research within academic institutions, it is common to be faced with ethical questions posed by \"Ethics Committees\".\n Decisions made throughout the lifecycle of a project will also raise ethical concerns.\n This chapter introduces some of these questions within the broad field of research ethics.\n\n## Chapter content\n\n### Introducing Ethics\n\n With no intention of doing justice to the vast literature that there is on the topic, we can take *Ethics* to be the subject of study of moral philosophy, which seeks -- amongst other things -- to distinguish right from wrong.\n Nowadays, philosophers speak of three levels of discussion in ethics {cite:ps}`ditter2022applied`: metaethics, normative ethics and applied ethics.\n Roughly, metaethics questions the nature of good and evil, as well as the underlying assumptions held by different ethical frameworks.\n Normative ethics, then, provides the tools for us to create such ethical frameworks and think within them.\n Applied ethics, finally, is what is most pertinent to this guide, as we will be discussing the ins and outs of ethical and responsible research and innovation.\n\n We begin this introductory chapter with clarifying why *research ethics* matters.\n Then we discuss two critical concepts relating with research ethics: *responsible research and innovation* and *research integrity*.\n We then unpick the ethical questions different questions each concept raises.\n\n ### Motivating Research Ethics\n\n Taking *ethics* as the study of what behaviours are right and what behaviours are wrong highlights that it refers to *action*.\n Considering this, ethics is relevant to research insofar that researchers are *acting* and *behaving* in certain ways when conducting their work.\n Taking this definition seriously also means accepting moral philosophy as paramount in our everyday lives: ethics pertains to us all.\n Furthermore, the potential ripple effects of any research project may be far greater than an individual's actions under normal circumstances.\n\n To this effect, the importance of acting ethically within the academic sphere is heightened.\n Scientists must reflect on the ethical questions their research projects raise.\n\n ## Defining Research Ethics\n\n In practice, the historical development of research ethics has been driven due to ethical concerns around how research has traditionally been conducted and cases of clear controversy {cite:ps}`Innovation2011EUCommission`.\n Unfortunately, this reactive nature of research ethics has led to there being many ethical codes for research, each regarding distinct fields of inquiry, designed by and for different institutions, and sometimes affecting scientific work conducted within specific regions.\n Therefore, researchers are right to feel overwhelmed by the diversity of rules and guidelines they face throughout their careers.\n\n One source of diversity of ethical frameworks relates with how research institutions generally have \"Ethics Committees\" that appraise the ethics of research conducted within their institutions.\n This is traditionally done for institutions to protect themselves from legal liabilities.\n However, further reflection -- beyond questions of data protection -- can be required by these processes.\n The point is that one university's process for ethical appraisal will, more often than not, differ from another's.\n\n  The below section simply outlines two critical concepts in the realm of research ethics: *responsible research and innovation* (RRI) and *research integrity*.\n\n### Responsible Research and Innovation\n\n  *RRI* is a term which has been around for several decades but which gained traction in 2011, when becoming an important term in the context of European policy {cite:ps}`Owen2012ResposibleRI`.\n  Turning to the European Union’s “Horizon 2020” research programme, we can find one definition of RRI:\n> “[RRI is] an approach that anticipates and assesses potential implications and societal expectations with regard to research and innovation, with the aim to foster the design of inclusive and sustainable research and innovation” (European Commission, n.d.).\n\n There are two aspects of this definition worth focusing on for the purpose of this introductory section.\n Firstly, RRI refers to “potential implications and societal expectations.”\n Secondly, it is about “the design of inclusive and sustainable research”.\n These are two traditionally important aspects of the ethics of science: how research is set up or designed, and what societal consequences this setup has.\n What is important here is that we consider these aspects of research when speaking of making it ethical.\n\n### Research Integrity\n\n Defined by the Office for Research Integrity:\n> \"[Research integrity refers to] active adherence to the ethical principles and professional standards essential for the responsible practice of research” - Korenman, 2006 {cite:ps}`korenman2006teaching`.\n\n What this term brings into the discussion about research ethics are “professional standards” and “responsible practice”.\n Unlike in RRI, the question is no longer on the ethics of scientific output and its consequences, but on the ethics of how scientists conduct themselves in practice.\n Research integrity, in a sense, captures the ethics of the work done “behind the scenes”, outside the view of the general public.\n\n#### Comparing RRI to Research Integrity\n\n The two concepts of RRI and research integrity are by no means entirely distinct, as they can overlap in important ways.\n However, three differences between both concepts are outlined below for the purpose of drawing out more diverse questions pertaining to research ethics at large.\n A table with the list of concept specific questions is shared at the end of this subsection.\n\n Firstly, we can see that who *perceives* the ethical questions differs in either case.\n To start with, RRI can be understood as outward-looking, or visible to the public.\n For example, people might ask for what it means when scientists keep animals’ brains alive hours after their decapitation {cite:ps}`reardon2019pig`.\n In the meantime, research integrity refers to how research findings are produced — it is inward-looking.\n A common term to describe a *lack* of research integrity is “research misconduct”, for which there are many examples.\n One such example is that of Brian Wansink's work in food science, who endorsed p-hacking and has had a number of papers retracted (see {cite:ps}`marcus2018data`).\n\n Secondly, each term refers to different people scientists interact with during research.\n On the one hand, RRI questions how scientists engage with research subjects.\n Consider, for example, how volunteers are treated during clinical trials.\n The point here is to work with data subjects in a respectful and inclusive way.\n One (in)famous case in which there was no respect for data subjects was the Tuskagee experiments, wherein African-American men were recruited to study the development of untreated syphilis, but the volunteers were falsely told they were receiving free treatment — the monitoring and lies persisted for forty years {cite:ps}`cdc2021theus`.\n On the other hand, we can question how scientists engage with fellow researchers.\n We can here discuss the importance of codes of conduct in open source collaborations, for example, [*The Turing Way*'s](https://book.the-turing-way.org/community-handbook/coc.html?highlight=code%20conduct); or — returning to “research misconduct” — how one might engage in authorship fraud.\n Once again, there are many examples of this sort of practice.\n From being insincere about who contributed to a paper because the academic incentives system almost encourages this {cite:ps}`Harvey2018GiftHonorary` to inventing entirely fictional authors {cite:ps}`lowe2016afield,marcus2016why`, these are questions that are not commonly within the public’s purview.\n\n Thirdly, RRI and research integrity question the ethics of how scientific solutions are framed and shaped either by society at large (RRI) or by institutional practices in particular (research integrity).\n With our RRI hat on, we can ask how we communicate the validity of scientific outputs.\n Whilst how scientific findings are communicated is not a new question, it is worth highlighting that artificial intelligence (AI) and machine learning might be framed as delivering much more for research and innovation than what they actually can.\n Along these lines, we can ask about the role of “AI” as a marketing tool, as a way to grant research findings undeserved credibility {cite:ps}`lanier2020ai`.\n A more specific example is available in Nagendran et al.'s concerns over exaggerated claims of AI outperforming doctors {cite:ps}`Nagendran2020AIvsClinician`.\n Switching to our research integrity goggles, we can question how academic infrastructures shape scientific work.\n\n Consider, for example, how researchers must weigh the noble pursuit of *truth*, with the need to earn *credit* (on this weighing of options, see, for example, {cite:ps}`Zollman2018CreditEconomy`).\n We can also reflect on the impact of funding on scientific endeavours.\n Questions can be raised regarding the size of research grants {cite:ps}`Bloch2015ResearchFunding` and even the values that motivate the funding of some research projects and not others.\n Institutional norms might even encourage a “publication bias” whereby positively framed findings will be easier to get published (see {cite:ps}`Kaiser2009fMRIlanguage` finding that studies showing differences in sex/gender are easier to publish than studies *not* supporting such differences).\n\n Below is a table illustrating the three differences outlined above.\n The point here is not to argue for this conceptual distinction but to introduce two important concepts in research ethics and, in doing so, present different questions we must be ready to reflect on when thinking about ethical research.\n\n| Factor | RRI | Research Integrity |\n| -------- | -------- | -------- |\n| **Perception of ethical questions** | Outward (for example: how does the public perceive scientific output?) | Inward (for example: how do researchers conduct themselves?) |\n| **Who researchers interact with** | With research subjects (for example: do we treat them with respect?) | With fellow researchers (for example: do we adhere to a code of conduct?) |\n| **What shapes research** | Shaped by society (for example: how is AI as a solution generally understood?) | Shaped by institutional norms (for example: what research questions are being funded?) |\n\n\n## What to learn next\n\nThere are plenty of ways to navigate the realm of Ethics at large and Research Ethics in particular. And there are many reasons why Research Ethics is important to science. We invite you to keep learning about RRI and research integrity, but also to reach out and support the building of this book!\n\n## Definitions/glossary\n\n* Applied ethics: the subfield of ethics that examines specific moral questions\n* Ethics: moral principles that govern a person's behaviour or the conducting of an activity\n* Ethics Committee: a body within a wider research institution that is responsible for ensuring that research is carried out in an ethical manner in accordance with the law and some ethical principles or framework\n* Metaethics: the subfield of ethics that investigates where our ethical principles come from, and what they mean\n* Moral philosophy: the branch of philosophy concerned with ethics\n* Normative ethics: the subfield of ethics that seeks to arrive at moral standards that regulate right and wrong conduct\n* P-hacking: the misreporting of true effect sizes in published studies\n* Research integrity: active adherence to the ethical principles and professional standards essential for the responsible practice of research\n* Responsible research and innovation (RRI): an approach that anticipates and assesses potential implications and societal expectations with regard to research and innovation, with the aim to foster the design of inclusive and sustainable research and innovation\n\n***Chapter Tags**: This chapter is curated for the `Turing Data Study Group` (`turing-dsg`).*\n"
  },
  {
    "path": "book/website/ethical-research/ethics-open-source-governance.md",
    "content": "(er-ethics-open-source-governance)=\n# Ethical Considerations when Choosing an Open Source Governance Model\n\n(er-ethics-open-source-governance-summary)=\n## Summary\n\nOpen source projects should be rooted in ethical principles. \nSharing the code so that anyone can use it, welcoming contributors and creating communities around specific projects are the core of open source. \nBut open source communities also have the responsibility to ensure they build a safe and inclusive environment, understand who might be affected by their projects or check that their tools are not being misused. \nTherefore, Open Source Governance Models, which provide a structure for decision making and community feedback in open source projects, should embed those ethical considerations within their structure, but the framework to do so is far from well-established. \nThis chapter discusses some of the key points to take into consideration when designing and implementing ethical guidelines in governance models.\n\n\n```{note}\n**What does ethics in governance mean?**\n\n*Ethical behaviour in governance is defined as the way in which stakeholders try to manage collective action from the perspective, and in the interest, of the majority, thus avoiding damaging behaviours, and through a better control of the power and responsibilities of the leaders. In the area of governance, therefore, ethics aims at raising awareness of the others' rights and common needs, by imposing some principles of minimum requirement.*\n\nSource: Dessain, V., Meier, O., & Salas, V. (2011). @Dessain2011governance.\n```\n\n(er-ethics-open-source-governance-motivation)=\n## Motivation and Background\n\nWhen setting up open source projects, it is important to pick a structure for organising the community that takes into account ethical considerations.\nThe way that your governance model is designed has a significant impact on the ethics, diversity and inclusion in your project.\nCritically examining the implied ethics of a particular structure is a crucial part of the process of selecting one. \nHowever, it is difficult to know where to start when planning governance structure for your open source projects.\nIt can be even more challenging when considering if a particular governance model align with ethical framework of your project.\nTherefore, we have designed this chapter to offer some starting points to consider. \n\n*This chapter is adapted a speedblog from the Collaborations Workshop 2022, authored by  Yo Yehudi,\nArielle Bennett, Gemma Turon, Declan Bays, Sarah Gibson, Stephan Druskat, Yadira Sanchez, Sophia Batchelor, which is published under a CC-BY license. Read the original article on Software Sustainability Institute's Blog page: [Ethical Considerations for Your Open Source Governance](https://software.ac.uk/blog/2022-07-07-ethical-considerations-your-open-source-governance)* \n\n(er-ethics-open-source-governance-selfreflection)=\n## Ethical Governance Starts with Self-Reflection \n\nThe process of interrogating the ethics of a governance model starts with {ref}`er-self-reflection` on the nature and intention of your project. \nTake things right back to first principles and ask yourself (and the project team):\n* Why are you doing this project? \n* Who is the project for?\n* Who creates and maintains it? \n* How will project be used? \n\nThese questions may not always be captured in a general document such as the README page, however by scoping the impact and influence of a project before it begins, a team can lay an ethical foundation from the outset. \n\nFor many projects that are community led, this means involving the people that are affected by the project’s outcome in the design, development, and deployment stages.\nTrue co-creation is an active process of inclusion, and there are many levels of engagement that can be tailored to a projects’ individual needs (see the figure - Arnstein's Ladder of Citizen Participation), which a governance model might also need to take into account, for example, how is delegated power dealt with by the project?  \n\n\n```{figure} ../../figures/ladder-of-participation.*\n---\nname: ladder-of-participation\nalt: Colourful graphic of Arnstein's Ladder of Participation (1969) drawn by Juliet Young. A rainbow ladder describes the different types of participation in research - manipulation, educating, informing, consultation, placation, partnership, delegated power and citizen control. \n---\nArnstein's Ladder of Citizen Participation, illustration credit - [\\@clinical.creative.psychologist (Juliet Young)](https://twitter.com/juliet_young1/status/1384604477697761281)\n```\n\nNo open source project is an island.\nThe goal of making projects open source is to explicitly invite the kind of use and collaboration which leads to a community of contributors and collaborators; making the world a better place, one commit at a time.\nIt's important that the governance model you select provides robust mechanisms for the level of community participation you are hoping to achieve with your project.\nSelf-reflection is a useful starting point to guide your decision making. \n\n(er-ethics-open-source-governance-continuous-process)=\n## Ethical Governance is a Continuous Process\nThere are many ways in which your project can (and probably will) change over its lifetime, and some of these changes may be unexpected. \nFor example, your software might start being used in domains you have not considered, it might experience a faster growth rate than you have expected, or you may need to decide how to handle an influx of new contributors.\n\nThis may also mean that you have to change the way that the project is run, to actively include new parts of the community, deal with a surge in contributions, or face new challenges.\nIn this scenario, try and reflect the ways in which the governance of your project should evolve to reflect the ethics you commit to.\nFor instance, is your governance structure built to allow the whole community to participate and influence a project that will in turn influence themselves and their work?\n\nIt may feel like a giant leap to go from, a free-form do-ocracy where contributors pitch in according to their personal priorities, to something more structured, or to give up your position of benevolent dictator, or to introduce different voting rules for the steering committee, but if you want your project to reflect your ethics, you will need to allow your ethics to impact the project, and iterate on this process. \nIt is a bit like putting debugging checkpoints in the way you run your project: run, but halt to reflect if you encounter a state that is unethical, based on your definition of ethical. \n\nIn short: `if (ethical == true) { // Do stuff } else { // FIXME }`\n\n(er-ethics-open-source-governance-action)=\n## Ethics Need Governance to become Actionable\nOpen source project communities may already have an implicit set of ethics regarding their project in place. \nHowever, unless these ethics are being made explicit, and inform a structured model of governance, they will remain inconsequential or, as Jo Freeman has put it in her essay @Freeman2012Stuctureless, impotent.\n\nTo empower your project to act on your ethics, it will need some governance model to adhere to. \nThere already exist a number of more-or-less established governance models and you can take a look at the resources section of this chapter for links to more information on them. \nKeep in mind, though, that not all of them may cater well for an ethical framework or the specific ethical framework you have in mind.\n\n(er-ethics-open-source-governance-technology)=\n## Do Not Rely on Technology to do Your Ethics for You\n\nIn an age of automation, bots, and exceptional investment into AI, you might be inclined to think “This all sounds like a heavy workload - how do I even get started?” You might consider a couple of options - \n\n1. Do I adopt an existing governance model? \n2. Maybe I should get a computer system to do it for me, or at least help me out?\n\nPulling a governance system out of the box is a great way to get started, but don’t assume that because a governance system has been in use before - perhaps even successfully - that the governance system has all the ethical solutions worked out, or even all the practical challenges have been considered. \nFor instance, the “benevolent dictator for life” (BDFL) open source governance model has practical as well as ethical issues: what if that BDFL has an unexpected health crisis and disappears? \nWhat if the benevolent dictator begins displaying values that are at odds with those of the wider community?\nWhat if they’re missing viewpoints that were obvious if only the governance committee was more than one person?\nTake python as an example. \nOriginally set up as a \"benevolent dictatorship for life\", the BDFL, Guide Van Rossum, [eventually abdicated and transferred power to the community in 2018](https://www.mail-archive.com/python-committers@python.org/msg05628.html), citing burnout as the main reason. \nBenevolent dictatorships for life limit the sustainability of open source projects by tying them too closely to one person, and remove formal paths for intervention when something goes wrong. \n\nRelying on technology to be your governance is equally risky.\nTechnology can be an incredible tool, but so long as it’s the only tool you have put in place for making governance decisions, it’s likely to be a potential problem.\nThis is why it is important to start the process of governance selections with self-reflection, so that you are aware of all the requirements in the projects and prepared to implement ethical measures for them.\n\n(er-ethics-open-source-governance-conclusion)=\n## Conclusion\n\nBy its nature, open source technology can deliver benefits to all societies. \nHowever, projects started with all the best of intentions can still evolve into something malicious through poor guidance and oversight. \nSuch considerations should therefore be noted and addressed through the application of a formal governing structure throughout any such projects, especially in sensitive areas where conflicts are likely to arise. \nWhile the use of a governance structure doesn't negate the possibility of bad things from happening, it does however provide a framework which allows us to put such actions into context.\nIn this chapter, we have provided some ethical pointers for open source project communities to consider when constructing their governance models, to support the continual evolution of open source towards a more just and equitable ecosystem for all contributors and users. \n\n(er-ethics-open-source-governance-resources)=\n## Additional Resources\n* [Invest in Open Infrastructure - Resources on Good Community Governance Research + Literature Collection](https://investinopen.org/research/good-community-governance/)\n* [Community Rules - Simple Templates for Great Communities](https://communityrule.info/book/)\n* [RedHat Blog - Understanding Open Source Governance Models](https://www.redhat.com/en/blog/understanding-open-source-governance-models)\n* [Governing The Commons: The Evolution Of Institutions of Collective Action by Elinor Ostrom](https://archive.org/details/governingthecommons)\n    * [Elinor Ostrom's 8 Principles for Managing A Commmons](https://web.archive.org/web/20240411163813/https://onthecommons.org/magazine/elinor-ostroms-8-principles-managing-commmons/index.html)\n* [Governable Spaces: Democratic Design for Online Life by Nathan Schneider](https://doi.org/10.1525/luminos.181)\n* [The Tyranny of Structurelessness by Jo Freeman](https://web.archive.org/web/20240406094310/https://www.jofreeman.com/joreen/tyranny.htm)\n"
  },
  {
    "path": "book/website/ethical-research/internal-policy.md",
    "content": "(er-internal-policy)=\n# Internal Policy Advocacy\n\nInternal policy advocacy is when individuals or groups associated with an organisation campaign for a change in the way that the organisation makes decisions, runs projects, chooses collaborators, develops products, or in other areas. \nIt can be a really powerful tool for change, regardless of whether or not the group of people campaigning are in a union.\n\n```{figure} ../../figures/advocacy.*\n---\nname: advocacy\nalt: One person signs a petition held by another person, in front of a group of people marching under a banner reading \"Advocacy!\"\n---\nThere are different ways to take part in advocacy. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.4906004](https://doi.org/10.5281/zenodo.4906004).\n```\n\n## How to advocate internally\nA basic set of steps you can take for internal policy advocacy (adapted from [guidelines](https://knowhow.ncvo.org.uk/how-to/how-to-run-effective-campaigns) produced by the NCVO in the UK, used under [CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/) license):\n1. Define the issue\n    - What is the problem that you are concerned about? \n    - Is it linked to other issues or policies? \n    Tools like [problem trees](https://www.odi.org/publications/5258-planning-tools-problem-tree-analysis) can be useful to map out what else is contributing to the problem.\n    It might be the case that the policy you are worried about builds on other internal policies or problems.\n    You might want to campaign against those instead.\n    - Can you encapsulate the problem in a short, easy-to-understand message? \n2. Gather evidence\n    - Research the issue you are campaigning about thoroughly\n    - You might want to collect documentary evidence, testimonials, media coverage, academic work, about the issue\n    - Put together a clear, concise argument about the problems and what you think needs to change\n    - Prepare yourself to answer difficult questions about your issue, why it is real and why it is important\n3. Find useful allies\n    - Target people who understand your cause or have a connection to it.\n    - Get in touch with organisations set up to help causes such as yours (ask for advice, access to experts).\n    - Get endorsement from people who hold power in your field, or in other areas\n    - Find ways to involve your colleagues, inside and outside the organisation: for example, signing a petition can be a first step\n4. Know who to lobby\n    - Identify your routes of influence.\n    Who is in a position to make change?\n    How will you reach them? \n    - Think about your own contacts: can you reach people in charge directly, or do you need to go via other people\n    - Don't get disheartened at the first hurdle, lobbying is hard work!\n5. Use a range of tactics\n    - Emails, media coverage and a good website are all useful.\n    - BUT... try a little more creativity - what would make your campaign stand out and get people talking?\n    - Don't forget to assess how you're doing (number of signatures on a petition, number of times the issue is raised at an all-hands meeting\n\nYou should also think about the potential risks to you and your colleagues for speaking up. \nMany people are reluctant to engage in advocacy or lobbying in their workplace, because they risk losing their livelihoods if there is retaliation against them.\nUnion membership can offer some protection against this: campaigning can be done by the union as a collective, rather than by individual workers. \nThink about other things that might go wrong, or that might dissuade your colleagues from speaking up, and see if you can find a way to mitigate them. \n\n\n\n\n\n\n\n"
  },
  {
    "path": "book/website/ethical-research/law-policy/law-policy-ethics.md",
    "content": "(er-law-policy-ethics)=\n# Ethics and law\n\nLaws are made by humans.\nThey reflect the outcomes of negotiations between different people, with different interests and different amounts of power.\nComplying with laws is usually necessary, but *rarely sufficient*, to ensure that you are acting ethically.\n\n## Domestic and regional law\n\nYou should be aware of what laws cover the open science work that you are doing.\nThis will depend on which jurisdictions you work in: usually the geographical area covered by a law.\nYou should be aware of the laws that cover you at local, state or regional, national, and international levels.\n\nYou should also be aware what steps you should take to ensure that you are compliant with all relevant laws.\nThis section is not exhaustive!\nIt is designed to give you some idea of the kinds of laws you should be aware of.\n\n### Data protection law\n\nData protection laws cover what is permitted by law when collecting and processing data.\nThe aim of data protection laws is to protect the privacy of individuals when collecting and using information about them.\n\nData protection laws need to be updated frequently in order to make sure they cover all the ways that different actors are using new forms of technology to collect and use data in new ways.\nBecause data protection laws sit at the limits of what companies - especially big tech giants - are able to do, the process of making, updating and enforcing data protection laws has become increasingly newsworthy.\nFor example, new pieces of legislation such as the General Data Protection Regulation ([GDPR](https://gdpr-info.eu/)) in the EU have attracted a lot of attention.\n\nMany countries have a national data protection authority, which is tasked with protecting data.\nThey often produce guidance on how to comply with data protection laws in their country.\nWikipedia has a [list of data protection authorities](https://en.wikipedia.org/wiki/National_data_protection_authority) covering lots of countries.\n\nData protection laws are sometimes confused with privacy laws, but they are not the same thing.\n\n### Privacy law\n\nPrivacy laws protect people's ability to keep themselves, or information about themselves, away from public view.\nThe specific content of privacy laws varies between jurisdictions.\nLaws may be general, or they may only cover certain kinds of information, sometimes referred to as 'sensitive information' or 'personally identifiable information.'\nThis might include, for example, medical or financial information about a person.\n\nPrivacy laws have periodically been updated to take into account new technologies, which have offered new ways for privacy to be invaded and for information about people to be shared.\nThis started in the 19th century when newspapers became widespread, and is still happening as legislators try to keep up with developments in the internet and in data collection.\n\nPrivacy is sometimes confused with data protection, but it is much broader.\nFor example, the right to privacy protects individuals from having blood samples taken without their permission.\nIt means that body searches must be done in a way that preserves the dignity of the person being searched, and that home searches must only be done to search for evidence, not for harassment.\nIt also makes laws that criminalise private, consensual sex between adults of the same sex unlawful (nonetheless, these laws have not yet been repealed everywhere).\nPrivacy is also a {ref}`human right<er-law-policy-rights>`.\n\n### Intellectual property law\n\nIntellectual property refers to creations that have been made by humans.\nThese can include literary and artistic works, as well as inventions.\nThey can also include scientific works and discoveries.\nIntellectual property rights aim to protect the interests of the creators of these works.\n\nThese can include:\n- copyright: covers creative works, and gives the owner the right to make copies.\n- trademark: covers goods or services, and identifies them as coming from a particular provider.\n- patent: covers inventions, and gives the owner the right to stop other actors from making or selling that invention.\n\nThe World Intellectual Property Organisation (the UN agency which oversees intellectual property issues) has produced FAQs on [copyright](https://www.wipo.int/copyright/en/faq_copyright.html), [trademarks](https://www.wipo.int/trademarks/en/), and [patents](https://www.wipo.int/patents/en/faq_patents.html).\n\nThe extent to which any intellectual property is protected in law varies by jurisdiction, and is often time-limited.\nEnforcement of intellectual property law also varies by jurisdiction.\nIn general, it is the owner of the intellectual property who is responsible for enforcing their rights, for example by suing another person in court.\n\nYou should know who owns the intellectual property you create.\nIn some situations, it will be you personally.\nIf you are employed, depending on the terms of your employment, your employer may own the intellectual property you create while you work for them.\nThis may impact what you are able to do with the intellectual property you create, including the terms under which you can license it.\nThe relationship between intellectual property law and open source is complicated but it is not necessarily incompatible.\n<!--- Link to the activism chapter, section on advocating for open practice, when we've written it -->\n\nIf you own the intellectual property that you create, you should think carefully about how to license it.\nIf you do not explicitly license your content differently, it generally falls under copyright and technically cannot be remixed without your permission.\nThis can present problems for working openly!\n\nYou may use an open license to share code, or content, or both.\nThere are lots of licenses designed especially for sharing broadly, and organizations like Creative Commons and the Free Software Foundation have created tools and resources to facilitate sharing of content, data and code.\nThere is more information in the [Licensing](https://book.the-turing-way.org/reproducible-research/licensing.html) chapter.\n\n## Tort law\n\nTort law is the branch of law which allows people who have been harmed to sue for compensation or other remedy for that harm.\nTort law varies by jurisdiction.\nIt can include both harm that arises from negligence, and intentional harm.\nIf you harm someone, either intentionally or negligently, you may be legally liable for the harm caused.\n\nActing ethically, however, usually means going beyond thinking only about legal liability.\nYou should be aware of all the possible harm that your work could cause, not only what you might be legally liable for.\n\n### Contract law\n\nContract law is the branch of law which handles how contracts - legal agreements between parties - are enforced.\nYou should know the terms of contracts you have signed, and what those terms mean.\nYou should also know which jurisdiction covers the contract you have signed (this should be in the contract).\n\nEthical work can also include thinking critically about contracts.\nYou should think about what obligations you are signing up for when you sign a contract.\nYou should also think about what contractual obligations you are imposing on other people when you form a contract with them.\n\n## How to change laws\n\nLaw is not static and unchanging.\nThe law is made by humans and it can be changed by humans.\nIf you feel that the law in your jurisdiction works in a way that is unhelpful or damaging, consider joining efforts to change it!\nChanging laws is a long-term project and can take decades.\n\nThis section is not intended to explain how to do this: a good place to start is to find a campaigning organisation who is working on the issue, and ask them how to get involved.\n<!--- edit this to refer to the activism chapter, when we have written it -->\nSee details in the chapters on {ref}`er-activism` for more details.\n\n## Policy\n\nPolicy is a general term for a set of ideas or principles that guide actions in particular situations.\nPolicies are not legally binding, but they are designed to encourage certain kinds of behaviours and discourage others.\nFor example, the Turing Way community agrees to abide by the policy set out in the [Code of Conduct](https://book.the-turing-way.org/community-handbook/coc.html).\n\nPolicies are agreed between groups of people: this can be at organisational, intra-organisational, or governmental level.\nIt is useful to be aware, for example, of policies on ethical research and innovation that are set by your government, or your funding organisation.\nFor example, the American Statistical Association has created [ethical guidelines for statistical practice](https://www.amstat.org/ASA/Your-Career/Ethical-Guidelines-for-Statistical-Practice.aspx).\nPolicies can also be set by national or international organisations.\nIf you are a member of a professional or academic organisation, you should be aware of the policies that cover ethical research for your profession.\n\nMany ethical guidelines that have been produced are in the form of policy.\nThese can provide useful guidance.\n\nBecause policies are the result of negotiation and agreement, they can be influenced.\nIf you don't think your professional organisation's policies are strong or effective enough, you can lobby for changes as a member of that organisation.\nThe process for doing this will depend on the organisation.\nMany companies and organisations have advocacy and lobbying staff who argue for changes in government policy that will benefit their organisation.\n\nSee details in the chapters on {ref}`er-internal-policy` for more details.\n"
  },
  {
    "path": "book/website/ethical-research/law-policy/law-policy-resources.md",
    "content": "(er-law-policy-resources)=\n# Recommendations and Resources\n\n## Checklist\n\n- Do I know what laws apply to my work?\n- Do I know what policies apply to my work?\n- Have I read relevant policies on ethical research?\n- Have I asked the Policy and Governance teams at my organisation or institution for advice or support?\n- Does my work respect and protect human rights?\n- Does my work fulfil human rights?\n\n## Further reading\n- [Artificial Intelligence: What’s Human Rights Got To Do With It?](https://points.datasociety.net/artificial-intelligence-whats-human-rights-got-to-do-with-it-4622ec1566d5)  (_Blog post by Christiaan van Veen and Corinne Cath_)\n- [The Universal Declaration of Human Rights at 70: Putting Human Rights at the Heart of the Design, Development and Deployment of Artificial Intelligence](https://hrbdt.ac.uk/the-universal-declaration-of-human-rights-at-70-putting-human-rights-at-the-heart-of-the-design-development-and-deployment-of-artificial-intelligence/) (_The Human Rights, Big Data and Technology Project, University of Essex, UK_)\n- [Algorithms and Human Rights - Study on the human rights dimension of automated data processing techniques and possible regulatory implications](https://rm.coe.int/algorithms-and-human-rights-en-rev/16807956b5) (_Council of Europe_)\n- [Data Feminism](https://data-feminism.mitpress.mit.edu/) (_book by Catherine D'Ignazio and Lauren Klein_)\n- [Article 8: Respect for your private and family life](https://www.equalityhumanrights.com/en/human-rights-act/article-8-respect-your-private-and-family-life) (_UK Equality and Human Rights Commission_)\n- General Comment No. 16 Article 17 (The right to respect of privacy, family, home and correspondence, and protection of honour and reputation) 1988 (HRI/GEN/1/Rev9) (_UN Human Rights Committee_)\n- [Toonen v Australia](https://remedy.org.au/cases/24/) (_Summary of successful case brought by Nicholas Toonen against the criminalisation of homosexual sex in Tasmania in 1994_)\n"
  },
  {
    "path": "book/website/ethical-research/law-policy/law-policy-rights.md",
    "content": "(er-law-policy-rights)=\n# Human rights\n\nHuman rights and ethics have a close relationship, but they are defined and implemented differently.\n\n## What are human rights?\n\n_All human beings are born free and equal in dignity and rights_ (Universal Declaration of Human Rights, Article 1.)\n\nHuman rights are the rights and freedoms that are inherent to every human being.\nThey include rights like the rights to life, to equality before the law, to freedom from discrimination, to privacy, to education, and to health. \n\nHuman rights are _universal_: they apply to every human being, without exception.\nHuman rights are _inalienable_: they cannot be taken away or limited, except under very specific and defined circumstances.\nHuman rights are _indivisible and interdependent_: we cannot have some rights without others.\n\n## What is human rights law?\n\nHuman rights law is made up of conventions and covenants - legal instruments - that are signed by countries. \nThese instruments are legally binding: this means that all countries who sign up to them take on legal duties and obligations.\nThese include the obligations to: \n- **respect**: to not do anything that violates human rights; \n- **protect**: to ensure that individuals and groups do not have their human rights abused or violated;\n- **fulfil**: to take action to make sure that individuals and groups are able to enjoy their human rights.\n\n<!--- add Scriberia human rights illustration here -->\n\nSome human rights law is made at global level, by the United Nations.\nThere are nine [core human rights instruments](https://www.ohchr.org/EN/ProfessionalInterest/Pages/CoreInstruments.aspx). \nThey include general instruments on civil and political rights, and on economic, social and cultural rights, as well as instruments that cover specific people, such as children or people with disabilities, or specific topics, such as torture or racial discrimination.\nEach of these instruments is overseen by a committee of experts: a 'treaty body.'\nEvery few years, each country who has signed a human rights instrument has to report to the treaty body on how well they are implementing the treaty.\nThe treaty body makes recommendations on how the country can continue to improve its implementation.\nThe treaty bodies also periodically issue more detailed guidance on how to interpret different articles of their treaty, to help countries understand better what their obligations are.\n\nThere are also regional human rights instruments:\n- [African Charter on Human and People's Rights](https://au.int/en/treaties/african-charter-human-and-peoples-rights), which covers 54 of the 55 members of the [African Union](https://au.int/en/member_states/countryprofiles2).\n- [American Convention on Human Rights](http://cidh.oas.org/Basicos/English/Basic3.American%20Convention.htm), which covers 23 of the 35 members of the [Organization of American States](http://www.oas.org/en/about/member_states.asp).\n- [European Convention on Human Rights](https://www.coe.int/en/web/conventions/full-list/-/conventions/treaty/005), which covers the 47 members of the [Council of Europe](https://www.coe.int/en/web/about-us/our-member-states).\n- [Charter of Fundamental Rights of the European Union](https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:12012P/TXT), which covers the 27 members of the [European Union](https://europa.eu/european-union/about-eu/countries_en)\n\nSome countries have ratified some of the treaties that apply to them: this means that they have incorporated the content of the treaties into their national law.\nMany countries also have a national human rights institution, which independently monitors and investigates human rights violations in that country, and advises the government on implementing their obligations. \n\nCountries that have signed treaties have committed to implementing them.\nHowever, the process of implementing treaties in full, so that every person in a country can enjoy all the rights in a treaty, is very long and requires lots of actions from states.\nCampaigning groups, including non-governmental organisations, work to narrow the gap between what countries have promised to do, and what they have actually done so far. \nSome campaigning groups are international and work on lots of different human rights issues. \nSome work only on a small number of issues, or in a small area of the world.\n\n## How do human rights apply to data science and research ethics?\n\nHuman rights are defined in law. \nThis means in many ways they are less malleable than ethics.\nThe letter of human rights, and the ways that they are implemented, are agreed internationally,\nA violation of human rights is a violation wherever it happens. \nThis is not necessarily true of codes of ethics. \nAn action that one group of people sees as ethical, may be seen as unethical by others. \nThere is a wider shared understanding of what human rights means across different countries, cultures and groups of people.\nThere are accountability and enforcement mechanisms.\nBut because they are a legal framework, they are not as easily accessible, and hard to apply to the daily work of data science and research.\n\nHuman rights treaties are signed by countries: that means that ultimately, it is countries that are held responsible for violations of human rights. \nHowever, that does not mean that researchers and data scientists are exempt from thinking about the human rights impact of their work!\n\nThe UN has produced specific guidance for companies on how to ensure that they respect human rights: the [UN Guiding Principles on Business and Human Rights](https://www.business-humanrights.org/en/big-issues/un-guiding-principles-on-business-human-rights/).\nCompanies should comply with these Guiding Principles.\n\nNGOs and other campaigning organisations also produce guidance on specific areas:\n- [The Toronto Declaration: Protecting the rights to equality and non-discrimination in machine learning systems](https://www.accessnow.org/the-toronto-declaration-protecting-the-rights-to-equality-and-non-discrimination-in-machine-learning-systems/)(_prepared by Amnesty International and Access Now and it has been endorsed by Human Rights Watch and Wikimedia Foundation_)\n\nMaking sure that research complies with human rights is not just about ensuring that it doesn't harm.\nIt can also be about doing work that is actively pro-rights. \n\nResearchers and data scientists should, in general ensure that they:\n- **respect** human rights: this means not doing work that itself abuses human rights \n- **protect** human rights: this means trying to ensure that their work cannot be used by others to abuse human rights\n- **fulfil** human rights: this means doing work that actively helps other people be able to enjoy all their human rights\n\nThe human rights framework also [supports doing open science](https://openheroines.org/the-human-rights-case-for-open-science-ff58578b09ee). In their [General Comment 25](https://tbinternet.ohchr.org/_layouts/15/treatybodyexternal/Download.aspx?symbolno=E%2FC.12%2FGC%2F25&Lang=en) in 2020, the UN Committee on Economic, Social and Cultural Rights stated that \"States should promote open science and open source publication of research.\"\n"
  },
  {
    "path": "book/website/ethical-research/law-policy.md",
    "content": "(er-law-policy)=\n# Law, Policy and Human Rights in Ethics\n\n## Summary\nLaw, human rights and policy all relate to ethics, but they are not the same thing.\n\nYou should be aware of the laws and policies that apply to you and your work.\nHowever, this is not sufficient to ensure that your work is ethical.\n\nHuman rights provide a legal framework for protecting individuals.\nHowever, this framework operates at national and international level.\nEthical work should be grounded in human rights, but sometimes require more guidance to operationalise for particular contexts.\n\nLaws and policies are made by people, and they are subject to negotiations and exercises of power: they can also be changed.\n\n```{figure} ../../figures/human-rights.*\n---\nname: human-rights\nalt: Image shows two people sitting on the ground. They are smiling and looking at the concrete wall called 'human rights' that is secured by heavy chain and lock. Behind the wall there are several monsters depicting human right violators and harmful elements of society that can breach laws and policy in the absence of this protective wall.\n---\nIllustration about human rights, law and policies.\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: 10.5281/zenodo.3332807.\n```\n\n## Motivation and Background\n\nIt's useful to know how the ethics that guide your work are underpinned by other frameworks, including law, policy, and human rights.\nKnowing the law, policy, and human rights that underpin research ethics will give you a deeper understanding of how to conduct ethical research.\nIt can also help you to advocate for ethical work with colleagues and collaborators.\n\nThis chapter provides subchapters on {ref}`Law and Policy<er-law-policy-ethics>` in the context of ethical research, {ref}`er-law-policy-rights` and {ref}`er-law-policy-resources`.\n\n```{attention}\nThis is not legal advice. Please read for information only!\n```\n*Read the {ref}`legal-disclaimer` for why you should not use The Turing Way for legal advice.*\n"
  },
  {
    "path": "book/website/ethical-research/preclinical-research.md",
    "content": "(er-activism-preclinical-research)=\n# Ethical Decisions in Preclinical Research\n\n## Prerequisites / recommended skill level\nFor preclinical scientists – no previous knowledge needed\n\n## Summary\nSociety continually debate the use of animals in scientific research.\nThe fundamental questions are whether experiments using animals are morally justifiable and whether the potential benefits outweigh the suffering of those animals?\nThese questions have been coupled with increasing concern about the poor reproducibility of findings from animal research, due to the impact this has on translation, scientific progress and the use of resources.\nA question that is not often addressed is how those justified experiments are designed, conducted and analysed.\nFlawed experimental design, inappropriate statistical analysis and inadequate reporting have been flagged as areas for major concern {cite:ps}`Kilkenny2009AnimalExperiments,Begley2015Reproducibility`.\nIt is morally incumbent upon us to ensure that animal experiments are appropriately designed, conducted and analysed otherwise the results are at risk of being unreliable.\nIf the results are unreliable then the animals used have in effect have been wasted {cite:ps}`Ioannidis2014IncreasingValue,deVries2014ReviewAnimalExp`.\n\n## Motivation and Background\nMany preclinical researchers do not think of themselves as data scientists.\nThis may be primarily because they work with small datasets.\nHowever, there are many common open research themes and this chapter aims to assist preclinical scientists in understanding the why, where, when, and how they can employ open research initiatives, some designed specifically for the use by preclinical scientists.\n\n## The Experimental Design Assistant\nThe National Centre for the Replacement, Refinement and Reduction of Animals in Research (NC3Rs) have a freely accessible web-based tool – The Experimental Design Assistant (EDA; https://eda.nc3rs.org.uk) which aims to help researchers improve the design, conduct, analysis and reporting of animal experiments.\nDesigning experiments with the EDA encourages researchers to consider the sources of bias at the design stages of the experiment before the data are collected, ensuring a rigorous design that is more likely to yield robust findings that can be reproduced.\nThe tool ensures that you have a transparent, clear protocol and plan for statistical analysis which can be scrutinised before collecting data.\n\n**Features of the EDA:**\n* A computer-aided design tool to develop a diagram representing the experimental plan\n* feedback from an expert system on the experimental plan\n* analysis suggestion\n* sample size calculation (power analysis)\n* randomisation sequence generation\n* support for allocation concealment and blinding\n* web-based resources to improve knowledge of experimental design and analysis\n"
  },
  {
    "path": "book/website/ethical-research/self-reflection/sr-positionality.md",
    "content": "(er-self-reflection-identity-positionality)= \n# Identity and positionality\n\nTraditional science training may lead us to believe that it is possible to analyse and interpret data objectively.\nThis tends to be because most sciences, and data, are often seen as being inherently neutral. \nHowever, we know now that the way data is collected, recorded and used can create significant problems for fairness, accountability and bias in data science systems. \nFor example, we might choose training data for a model without thinking to consider whether it is representative in a particular way, or we might not consider whether a data visualisation is accessible to people with color blindness. \n\nSome schools of thought say that true objectivity is impossible because every person comes with their own lived experiences. This provides the lenses through which we see the world and influences the way we behave, including how we do research. \nThese could be 'macro' influences like our motivations to address a particular problem, or 'micro' like the way we numerically represent a social concept.  \nWhile there are lots of benefits to the individual ways we all experience the world, the single view each person takes can also embed unseen biases into how we think and work. \n\nBy better understanding ourselves, we can be more proactive about spotting where we might hold biases or gaps in our knowledge. \nThis means we can be transparent about how our unique view has influenced the way we work, which is beneficial to scientific integrity and reproducibility. \nIt can also help us to identify and work against systemic and structural barriers that might otherwise go unchallenged, in order to make our research environments more inclusive (see {ref}`Activism<er-activism>`).\n\nThe placement of our identities, socio-cultural position and epistemological approach [{term}`def<Epistemology>`] to knowledge in the context of our research is called our *positionality*.\nWe can understand our positionality through the practice of *reflexivity*, which is the process of using *self-reflection* [{term}`def<Self Reflection>`] to better understand how our identities and experiences influence the way we behave in our work. \n\n(er-self-reflection-social-graces)= \n## Understanding ourselves\n\nSelf-reflection and reflexivity can be challenging, and takes time and practice to feel natural.\nTo be most effective, they should be employed throughout our work and will never be 'finished' as we constantly change and so does the world around us.\n\nIn order to help get started, there are lots of frameworks that can be used as a guide.\nOne of these is called the 'Social Graces', which was developed by psychotherapists John Burnham, Alison Roper-Hall and colleagues in the 1990s {cite:ps}`burnham2018developments`.\n\nThe Social Graces are a mnemonic to help cover aspects of identity that affect our power and privilege.\nThey are not fixed and you can choose the most relevant ones, or add more.\nThe idea of the Social Graces was to explicitly name power differentials, which might be visible or invisible in our interactions. \n\n- **G** = Gender, Geography\n- **R** = Race, Religion\n- **A** = Age, Ability, Appearance\n- **C** = Class, Culture\n- **E** = Ethnicity, Education, Employment\n- **S** = Sexuality, Sexual Orientation, Spirituality\n\nThe Graces are a helpful place to start thinking about your intersecting identities.\n\nIt can also be helpful to ask:\n- Which of the Social Graces do I particularly identify with? Are there some that stood out to me right away?\n- Which Social Graces did not stand out to me, and why might that be? \n"
  },
  {
    "path": "book/website/ethical-research/self-reflection/sr-power.md",
    "content": "(er-self-reflection-power-privilege)= \n# Power and privilege\n\nWhen thinking about positionality [{term}`def<Positionality>`], it is important to understand how we might hold power and privilege relative to the people we work with, those whose data we are studying, and the problems we are attempting to solve. \nOur experiences of power and privilege, or oppression, are tightly interwoven with our experiences of class, race, gender and more {cite:ps}`crenshaw1989demarginalizing, collins1990black`. \nThese experiences are important to consider because themes of power and privilege are present in all of our contexts. \nHaving privilege can make us unaware of related issues that do not directly affect us.\n\nTo illustrate, here are some examples of how power and privilege present as structural issues in data science:  \n<!-- Welcome more examples here! -->\n- **Racial injustice and patriarchal systems** have meant that data science has historically been dominated by white men. This means that there has not been a diverse group of people to direct the aims of data science work, and so many groups are likely to be overlooked when considering the negative impacts and potential benefits of data science.\n- **The English language is the default** in many programming languages and academic settings, which creates barriers to knowledge sharing and inclusion. Rather than English speakers learning other languages, it is generally expected that non-English speakers learn English in order to participate and collaborate, which frames English as the default. \n- **Data science work can require huge amounts of energy and computational power**, which disproportionality affects the lives of people living in the places most affected by climate change. These countries tend to already be economically disadvantaged relative to others, and have less access to the resources needed to manage the impacts of climate change. \n\nBroader structural aspects of power and privilege can seem too big to counter on our own, but they also play out in individual interactions where we have much more control. \nBy understanding systems and structures of power and oppression, and where we sit within them, we can better identify where change needs to happen, and what we can do to contribute to that change. \n\n## Intersectionality \n\nIntersectionality [{term}`def<Intersectionality>`] is an important concept to know and understand when thinking about power, privilege and identity. \n\nThe term **intersectionality** refers to how multiple identities can intersect, and so people can be oppressed on the basis of combinations of their identities instead of, or as well as, their separate identities. \nThe term was coined by Professor Kimberlé Crenshaw in 1989 {cite:ps}`crenshaw1989demarginalizing` to describe the way that laws that protected Black people and women separately.\nHowever, Black women were not by default protected against discrimination that exclusively affected Black women. \nNow, the term 'intersectionality' has become more widely used and broadly refers to how people are often disadvantaged by multiple sources of oppression. \n\nIntersectionality has sometimes incorrectly been assumed to be a way of making a 'hierarchy of oppression', which is not its purpose. We must recognise that power and privilege is a case of _both/and_ rather than _either/or_. \nThis means that someone may be privileged in one way, and disadvantaged in another.\n"
  },
  {
    "path": "book/website/ethical-research/self-reflection/sr-prompts.md",
    "content": "(er-self-reflection-prompts)=\n# Self Reflection Prompts\n\nReflexivity is the process of using self-reflection to understand ourselves and our beliefs, and how these influence how we create knowledge through our work in data science. \nThere are lots of different aspects you could consider, and the questions below are some prompts to help get you started. \n\n## Questions about my own identity \n\n- What is considered ethical in my culture that other cultures may see differently?\n- What are my own {ref}`Social Graces<er-self-reflection-social-graces>`? \n- How have my Social Graces shaped my experiences of life? \n- How have my Social Graces shaped the decisions that have led me to do what I do now?\n- What are the Social Graces of my family and friends? \n  - Are there Social Graces where we vary a lot/little?\n\n## Questions about my research environment\n\n- What are the shared values of my lab? My department? My university?\n- Who is visibly present in my department? Who isn't?\n    - What understanding do I have of why that is, and how have I formed this understanding?\n- What do I know about the visible and invisible Social Graces of people in my department or field? \n- How do the people who work in my field represent the people our work serves?\n  - How do I relate to the people I am trying to serve with my work? \n\n## Questions about my relationship to knowledge\n\n- What types of knowledge do I value? \n- Am I more convinced by a certain type of data over another - why is that?\n- Are there certain people I am more likely to believe, or find convincing? \n- What type of data presentation do I find convincing? \n- What type of statistics do I view as more robust (and why)? \n- What checks do I think data and analysis need to go through to be considered robust? \n- What are my views on qualitative data vs. quantitative data?\n\n## Questions about my relationship to my research topic\n\n- What do I believe are 'truths' about the concept I study?\n    - What evidence do I base those truths on? Who developed this evidence?\n- Who do I most commonly cite in my research area, and how are their perspectives similar or different to mine?\n-  Whose perspectives are important in answering this research topic?\n- Am I the best person to answer this question - what might I be missing?\n\n## Questions about my data\n\n- Who isn't included in the data I have collected or reusing an existing dataset?\n- When and where was this data created?\n- What were the dominant beliefs at the time?\n- What do you know about the people who created this data?\n\nNote, if you are creating a dataset and would like to record this information about your data for future users, consider using 'Datasheets for Datasets' {cite:ps}`gebru2018datasheets` as a guide. \n"
  },
  {
    "path": "book/website/ethical-research/self-reflection/sr-resources.md",
    "content": "# Resources\n\n## Other relevant sections in the Turing Way \n\n* [Valuing Diversity and Differences](https://book.the-turing-way.org/collaboration/new-community/new-community-differences.html)\n\n* [Activism for Researchers](https://book.the-turing-way.org/ethical-research/activism.html)\n\n## Further resources for practising self-reflection, reflexivity and positionality\nSome of these resources refer to qualitative research but are widely applicable to positionality in general.\n\n* McIntosh, P. (1988) [White Privilege: Unpacking The Invisible Knapsack](https://admin.artsci.washington.edu/sites/adming/files/unpacking-invisible-knapsack.pdf) {cite:ps}`mcintosh1988white` \n\n* Gebru, T. et al. (2018) [Data Sheets for Datasets](https://www.microsoft.com/en-us/research/uploads/prod/2019/01/1803.09010.pdf) {cite:ps}`gebru2018datasheets`\n\n* Jacobson, D. and Mustafa, N. (2019) [Social identity map: A reflexivity tool for practicing explicit positionality in critical qualitative research](https://journals.sagepub.com/doi/full/10.1177/1609406919870075) {cite:ps}`jacobson2019social`\n\n* Holmes, A.G.D. (2020) [Researcher Positionality - A consideration of its influence and place in qualitative research - a new researcher guide.](https://files.eric.ed.gov/fulltext/EJ1268044.pdf) {cite:ps}`holmes2020researcher` \n\n## Further reading on positionality and reflexivity in science\n\n* Haraway, D. (1988) [Situated knowledges: The science question in feminism and the privilege of partial perspective](https://www.jstor.org/stable/3178066) {cite:ps}`haraway1988situated`\n\n* Ricker, B. (2017) [Reflexivity, Positionality and Rigor in the Context of Big Data Research](https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2911652) {cite:ps}`ricker2017reflexivity`\n\n* Jafar, A.N.J. (2018) [What is positionality and should it be expressed in quantitative studies?](https://emj.bmj.com/content/35/5/323) {cite:ps}`jafar2018positionality`\n\n* Costanza-Chock, S., (2020) [Design Justice: Community-Led Practices to Build the World We Need](https://design-justice.pubpub.org/) {cite:ps}`costanza2020design` \n\n* D'ignazio, C., & Klein, L. F. (2020). [Data Feminism](https://mitpress.mit.edu/books/data-feminism) {cite:ps}`datafeminism2020`\n\n* Birhane, A. (2021) [Algorithmic Injustices: A Relational Ethics Approach](https://www.sciencedirect.com/science/article/pii/S2666389921000155) {cite:ps}`birhane2021algorithmic`\n"
  },
  {
    "path": "book/website/ethical-research/self-reflection.md",
    "content": "(er-self-reflection)=\n# Self Reflection\n\n(er-self-reflection-prerequisites)=\n## Prerequisites\n\nThere are no prerequisites for this chapter. \nHowever, it's advised that you should be aware of the {ref}`legal and human rights<er-law-policy>` context first if you are considering an ethical dilemma.\n\n\n(er-self-reflection-summary)=\n## Summary\n\nOur lived experiences and identities give us a particular lens to view the world through, which can be shaped by where we live, the places we work, the education we receive, or the dominant culture we were brought up in. \nHowever, this can also lead us to see a situation or problem in one particular way, or to take approaches that exclude certain people or groups. \nWhen it comes to ethical dilemmas, our lived experiences also shape our *personal ethics*, which are the way we make decisions about what is right or wrong. \n\n**Self-reflection** is a method we can use to examine our personal assumptions, patterns and actions. \nWhen we understand ourselves better, we can ask questions about why we do things in a certain way and challenge ourselves to consider new perspectives or to act differently. \nThis can help to make sure the research we are conducting is responsible, inclusive, fair and ultimately ethical!\n\n```{figure} ../../figures/ethics-self-reflection.*\n---\nname: self reflection\nalt: A woman stands in a glasses shop next to the shop assistant who is holding a range of glasses for her to try. She is trying to read a sign to test her sight that has the words 'Gender', 'Race', 'Age', 'Class', 'Education' and 'Sexuality' on it. The sign on the door of the shop says 'Self Reflection - come in and see for yourself'. \n---\nSelf Reflection. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n(er-self-reflection-motivation)=\n## Motivation and Background\n\nAs data scientists, we may not always see ourselves as people with much power. \nHowever, we are constantly creating tools and technologies that alter the course of many people's lives. \nIn that sense, we have a **lot** of power, and with it comes responsibility for working towards justice and equality in our data science work. \n\nWe know we must be aware of fairness and bias in data science and AI, but the tools we make do not passively inherit these features - they are built into systems by decisions we make. \nBy being aware of the kinds of biases we hold, we can do more to challenge them and create data science technologies that help people rather than harming them. \n\n(er-self-reflection-influences)=\n## Influences\n\nThis chapter on the importance of self-reflection in research and data science draws on work from standpoint theory and feminist (particularly Black feminist) theory, most notably Patricia Hill Collins' matrix of domination {cite:ps}`collins1990black`, Kimberlié Crenshaw's theory of intersectionality {cite:ps}`crenshaw1989demarginalizing`, and Donna Haraway's situated knowledges {cite:ps}`haraway1988situated`, amongst others. \nMore recently these ideas have been brought to data science by Catherine D'Ignazio and Lauren Klein's book 'Data Feminism' {cite:ps}`datafeminism2020`, and researchers like Abebea Birhane {cite:ps}`birhane2021algorithmic`and Timnit Gebru {cite:ps}`gebru2018datasheets`.\nA full list of further resources is provided in the Resources section. \n"
  },
  {
    "path": "book/website/ethical-research/social-data.md",
    "content": "(er-social-data)=\n\n# Research Ethics for Social Data\n\n(er-social-data-overview)=\n## Social Data: Overview\n\nSocial data is defined as the publicly available information which is collected from users’ public online activity on social media networks, consisting of information such as their location, language, and content shared. \nExamples of such data would include images, text, location, biographical data, as well as shared and reposted links.\nInformation created by the platform users could also form a part of such data, such as blogtagging, online game playing, photo tagging and instant messenger.\n\n(er-social-data-media-platforms)=\n### What constitutes as social media platforms?\n\nAs stated by [Flashpoint](https://flashpoint.io/blog/social-data-enhanced-security/), for most, social media means a collection of popular websites and apps used to facilitate social interaction online—sites including:\n\n* Social networks like Facebook and LinkedIn\n* Photo and video-sharing networks like Instagram, YouTube, and Pinterest\n* Interactive media networks like Snapchat and TikTok\n* Microblogging sites like X (formerly Twitter) and Tumblr\n\n(er-social-data-why)=\n## Why do we need ethical considerations while working with social data?\n\nCollecting social data for various academic and non-academic research purposes have become quite common in recent years, especially useful in understanding trends or patterns from the collective online activities of the users. \nThis not only helps researchers in understanding the online discourse and the public sentiment, but also gives an opportunity to analyse the vast amount of data reserves. \nEssentially it has been used to develop applications facilitating marketing to enriching physical and digital security.\nBut with a large amount of data, comes great responsibility.\nWhile there are initial checks performed by the gatekeepers of these social platforms in deciding who gets access to the data, the onus of responsibly using the available data lies upon the researcher and/or the organization themselves. \n\n_Note: For more information on research ethics, check out this section on {ref}`Chapter on Introduction to Research Ethics<er>`_\n\n\n## Is it public or private?\n\n\n\n*_This is a Work In Progress. More information will be added soon._*\n\n"
  },
  {
    "path": "book/website/foreword/background.md",
    "content": "(fw-background)=\n# Background\n\n_Our moonshot goal is to make reproducibility \"too easy not to do\"._\n\nReproducible research is necessary to ensure that scientific work can be trusted.\nLed by strong advocacy from the research community for open science and research reproducibility, funders and publishers are increasingly requiring that publications include access to the underlying data and analysis code.\nThe goal is to ensure that all results can be independently verified and built upon in future work.\n\nThis is sometimes easier said than done. Sharing these research outputs means understanding and applying a range of practices, including open science, data management, library sciences, software development, and continuous integration techniques — skills that are not widely taught or expected of academic researchers and data scientists.\nFurthermore, technical skill alone is not sufficient for making research reproducible and open for all.\n\n_The Turing Way_ provides resources to build an understanding of good practices and improve research habits through modular chapters in a self-contained handbook.\nRather than reinventing the wheel by rewriting or redefining data science best practices, we encourage you to introduce known methods, tools and approaches in accessible language in _The Turing Way_ chapters.\nIn these chapters, you can highlight existing resources, curated materials and external links, setting readers up for diving deeper into topics of their choice.\n\nThe book started in January 2019 as a guide for reproducibility, covering {ref}`rr-vcs`, {ref}`rr-testing`, and {ref}`rr-ci`.\nHowever, technical skills are just one aspect of making data science research \"open for all\".\nHence, in February 2020, _The Turing Way_ expanded into a series of guides: {ref}`rr`, {ref}`pd`, {ref}`cm`, {ref}`cl`, and {ref}`er`.\nThrough community contributions, the project has grown into multiple guides, a global community and numerous resources built and shared by the members of our community.\n\n```{figure} ../../figures/evolution-openscience.*\n---\nname: evolution-openscience\nalt: This image shows the evolving interest of a new researcher in sharing their work using open science practices.\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\nLessons learned from _The Turing Way_ will help design projects with reproducible, collaborative, and ethical research frameworks.\nIt will also ensure that different stakeholders of research know which parts of the \"responsibility of reproducibility\" they can affect, and what they should do to 'nudge' research and data science to be more efficient, effective, and understandable.\n\n```{admonition} Highlights from the First Impact Story from 2019\n**Changing the culture of data science**\n\n> _The Turing Way_ is an online handbook – and global community – dedicated to fostering gold-standard reproducible research. It’s a cultural movement with the potential to transform data science\n\n- There is a crisis of reproducibility  in science. \n- ‘Publish-or-perish’ incentives and excessive data secrecy stifle progress and waste resources: siloed science is slow science. \n- _The Turing Way_ is an evolving online ‘handbook’ on how to conduct world-leading, reproducible research in academic data science and AI with the goal of making reproducible research “too easy not to do”.  \n- The book deals not only with the ‘how’ of things, but also the ‘why’ – the ethos and long-term benefits of reproducible research.\n- _The Turing Way_ is also a flourishing global community of research engineers, data librarians, industry professionals and research experts dedicated to capturing and sharing research best practices, tools and data.\n\n_Visit The Alan Turing Institute website for the [full impact story](https://www.turing.ac.uk/research/impact-stories/changing-culture-data-science)._\n```\n\nOur team and community members are committed to adopting and promoting openness, inclusivity, ethical conduct, and access in research and data science, and have integrated these in all aspects, including the chapters, of _The Turing Way_.\n\nThe project has been developed openly and any and all questions, comments and recommendations are always welcome at our GitHub repository: https://github.com/the-turing-way/the-turing-way.\nWe really appreciate you using these resources and any references that you make to _The Turing Way_ project in your work, and we hope it is useful.\n\n```{note}\nA history section will be added soon in this chapter.\n```\n"
  },
  {
    "path": "book/website/foreword/cite.md",
    "content": "(fw-cite)=\n# Cite _The Turing Way_\n\nAll material in _The Turing Way_ is available under a [CC-BY 4.0 licence](https://github.com/the-turing-way/the-turing-way/blob/master/LICENSE.md).\n\nYou can cite _The Turing Way_ through the project's Zenodo archive using DOI: [10.5281/zenodo.3233853](https://zenodo.org/doi/10.5281/zenodo.3233853).\n\nThe citation will look something like:\n\n>  The Turing Way Community. (2022). The Turing Way: A handbook for reproducible, ethical and collaborative research (1.0.2). Zenodo. DOI [10.5281/zenodo.3233853](https://zenodo.org/doi/10.5281/zenodo.3233853). \n\nPlease visit the [DOI link](https://doi.org/10.5281/zenodo.3233853) to get the most recent version - the one above is not automatically generated and may be out of date.\nDOIs allow us to archive the repository and are useful for tracking the work in academic publications.\n\nYou can also share the human-readable URL to a page in the book, for example, {ref}`definitions chapter in the Guide for Reproducible Research<rr-overview-definitions>`, but be aware that the project is under development and these links may change over time.\nYou might want to include a [web archive link](http://web.archive.org), such as [an archived page for the definitions chapter](https://web.archive.org/web/20191030093753/https://the-turing-way.netlify.com/reproducibility/03/definitions.html), to make sure that you do not end up with broken links everywhere!\n\n## Citing _The Turing Way_ Illustrations\n\n```{figure} ../../figures/banner-thanks.jpg\n---\nname: banner-thanks\nalt: > \n  Two people, a person with orange long hair and square rimmed glassed and a person with short dark hair and a beard, are holding a blue banner with orange writing that says thanks. \n---\nThis is an example of one of _The Turing Way_ project illustrations by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n_The Turing Way_ illustrations have been created by artists from Scriberia as part of _The Turing Way_ book dashes since 2019.    \nThey depict a variety of content from the handbook, collaborative efforts in the community and _The Turing Way_ project in general. \nThese illustrations are available on Zenodo [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807) under a CC-BY license.\n\nWhen using any of the images, please include the following attribution:\n\n> This image was created by Scriberia for _The Turing Way_ community and is used under a CC-BY 4.0 licence.\n\nThe latest version from Zenodo can be cited as:\n\n> _The Turing Way_ Community, & Scriberia. (2020, March 3). Illustrations from the Turing Way book dashes. Zenodo. http://doi.org/10.5281/zenodo.3332807.\n\nWe have used a few of these illustrations in the Welcome Bot's responses to new members' contributions in this GitHub repository.\n"
  },
  {
    "path": "book/website/foreword/community.md",
    "content": "(fw-community)=\n# Community and Community Roles\n\n_Everyone has a skill that is useful for someone, and therefore anyone can contribute to The Turing Way._\n\n_The Turing Way_ book has been co-authored by more than 500 diverse contributors and utilised by different groups of individuals who are researchers, educators, learners, policymakers, government employees and industry professionals.\n\nOur community members and general audience includes, but are not limited to, researchers, students, data scientists, software engineers, project leaders, team coordinators, community managers, data stewards, librarians, data science educators, open science practitioners and more.\n\nAs of January 2025, _The Turing Way_ community has been joined by more than 1000 members, who engage via GitHub, Slack Workspace and a range of community events.\nThe book itself has 6000+ monthly users worldwide (a total of 87,000 unique users in 2024 alone).\n\nAll contributions, discussions, and contributor details are handled through the central GitHub repository ([https://github.com/the-turing-way/the-turing-way/](https://github.com/the-turing-way/the-turing-way/)). \nContributors' details are available in the [Contributors Records](#contributors-record), and the [project reports](https://github.com/the-turing-way/project-management/tree/main/quarterly_reports) offer detailed updates from different areas of work within _The Turing Way_.\n\n(fw-community-book-roles)=\n## Book-Related Roles\n\nThe book-related roles vary based on people’s involvement in reviewing, editing or developing new content in _The Turing Way_ chapters, subchapters, impact stories, personal stories, case studies and templates.\nReviewers are often drawn from the community, based on their experience in the chapter’s topic.\nOften, reviewers are also invited from beyond the community to ensure new members have the chance to collaborate based on their expertise.\n\n* **Co-authors**: Co-authors collaborate on writing, editing, revising, or adding/replacing relevant sections of a chapter in _The Turing Way_ book while following the {ref}`ch-style`.\n* **Reviewer**: Reviewers critically review existing and new content of The Turing Way book, providing feedback, suggesting edits, and enhancing the accessibility, accuracy, and quality of the material.\n* **Editors**: Editors oversee the overall coverage, coherence, and consistency of a chapter or a guide, or even the structure of _The Turing Way_ book at a meta-level and document the current status and areas for improvement in a GitHub issue. They may not be the same people who address those issues, but they can be involved in coordinating contributions from authors and reviewers from the community.\n* **Mentors**: Mentors guide less experienced contributors, offering advice and support to help them clarify concepts, unpack their thoughts and ideas, and provide direction to ensure that new members can effectively participate in the development of _The Turing Way_ book.\n* **Translators**: Contributors work the the Translation and Localisation team in translating any part of a chapter in the book as described in the {ref}`ch-translation`.\n* **Ad-hoc advisors/consultants**: Individuals who are invited by our community members to ask for guidance and expertise in the context of their work in the book, community, or the overall project.\n\n### Mentored-Contributions\n\nExisting members of the community are connected with new contributors for support and mentoring, such as helping navigate _The Turing Way_ repository, workflow, writing process or even reviewing. \nContributions also include providing advisory support, such as by sharing examples, resources or other relevant resources that could be helpful for the authors.\n\nBy enabling our community of users and contributors to engage with each other, we ensure that the project, community and resources can be used, shared and improved by diverse perspectives.\nWe describe the contribution process in the {ref}`ch-contributing`.\n\n(fw-community-beyond-book)=\n## Beyond the Book\n\nThe book may be the visible product of the work we do in the project, but, the process of collaborative development with the help of its community is what we value the most.\nThis project could not exist without the collaborative nature and willingness of our community members to support each other.\nWe are committed to providing an open, accessible and inclusive space for all our community members where they are appreciated, upskilled and given opportunities to contribute to the project in a way that is most meaningful for them.\n\nRoles beyond the book can involve, but are not limited to the following:\n\n* **Working Group Members (maintenance level members)** provide leadership, stewardship and support across different parts of the project and the community (described in [Governance chapter](#fw-governance)).\n* **Steering Committee (constitution level members)** is constituted by chairs and/or representatives from across Working Groups and collaborative projects within _The Turing Way_ (described in {ref}`fw-governance`).\n* **Advocates and champions** of _The Turing Way_ resources, who help others navigate the book, repositories and communications channel\n* **Reviewers and Chapter Maintainers** of the book and underlying infrastructure\n* **Co-creators** of content and infrastructure at any level from fixing bugs to adding new content beyond the book\n* **Mentors and consultants** in specific areas of work, including responding to questions from other community members on GitHub and Slack\n* **Sustained contributors** who provide expert consultation to improve the resources over a prolonged duration\n* Members providing support through **in-kind collaboration/partnership**\n* **Connector, convener and collaborators** from the broader data science network\n* **_The Turing Way_ curious** (‘lurkers’) users of resources who read, adopt and share best practices from _The Turing Way_ in their work and participate in public events/communications channel\n* Members sharing **personal experience** (which we value a lot!) to enrich _The Turing Way_ resources with real-world contexts\n* **Speakers and presenters** of any aspect of _The Turing Way_ at different events and contexts.\n* Legacy - Project Delivery Team: Between 2019 and 2025, the project was hosted by The Alan Turing Institute and received funding for several roles, including project leads, Community Manager, Project Manager and researchers, to support the community management and delivery of the project goals. These roles formed the project delivery team, previously responsible for constitution level governance.\n\nNew contributors to _The Turing Way_ can begin their journey at any time, and through various pathways including voluntary participation, invited contribution, training/workshop-based introduction, organisational collaboration, and personal collaboration with other community members or others.\n\nOur general recommendations for new starters are the following:\n\n* Start small! Find easy wins!\n* Start with what you don’t know and want to learn.\n* Start with what you know and want to share.\n* Capture the process of how good projects are carried out in data science.\n* Flag what is unclear about _The Turing Way_ or help build documents that you would like to have.\n* Share your personal stories, case studies and perspective: _The Turing Way_ is a ‘lightly’ opinionated guide after all!\n\n_To explore different pathways for community members to get involved, please visit the **Start Page: [https://the-turing-way.start.page/](https://the-turing-way.start.page/)_.\n\n### Learn and Share Skills\n\nCommunity members are provided with opportunities to learn new skills, share their ideas and collaborate with others. \nThey are also given mentorship opportunities in the project as they make their contributions to _The Turing Way_ or other open source projects and are encouraged to mentor new participants of the project. \n\nCommunity members have been taking roles like trainers, workshop leads, translators, infrastructure maintenance, accessibility experts, representatives of different projects in _The Turing Way_ and advocates of different topics of _The Turing Way_'s interest in external projects.\nSome of these areas of work have recently been formalised and are also being led by volunteer members (see Governance Roles).\nFor instance, _The Turing Way_ team and community members have been taking part in workshops from the very beginning.\nSome of these workshops have become part of regular events and conferences to introduce _The Turing Way_ resources and data science practices to new audiences and early career researcher groups.\n\nDelivery of these workshops includes the following roles:\n\n* **Expert facilitators and trainers** of Open Science, Reproducibility and ethics-related workshops, both organised by _The Turing Way_ and delivered at external events\n* **Technical trainer** for novice learners on tools like GitHub, Binder, Jupyter and Literate Programming \n* **Presenters and speakers** for international events/conferences who represent _The Turing Way_ on external platforms\n\nAll members are supported to structure their work in _The Turing Way_ to make them findable and onboard new members to provide continuity of their work.\nResearchers are also supported to lead community-based discussions and collaborations that lead to projects and outputs beyond _The Turing Way_.\n\n### Establish Partnership\n\n_The Turing Way_ project also involves {ref}`collaborators<collaborators>` from projects within the Turing, partnering organisations, open-source communities, and beyond, either formally through funded grant proposals or informally through collaborative activities such as co-creation of resources (such as chapters, articles or community documentation) and events (such as Fireside Chat, Book Dash and external conference session).\n\n### Represent _The Turing Way_\n\nWe have a chapter on {ref}`ch-presenting` to help you present and share about _The Turing Way_ in your network.\n\n_The Turing Way_ team will be happy to discuss your ideas with you, provide feedback and any other assistance you need for delivering a talk.\n\n_For further details on these community roles, please read the Community Handbook describing [different Contributions and their acknowledgements](#ch-acknowledgement-examples)._\n"
  },
  {
    "path": "book/website/foreword/embracing-digital-commons.md",
    "content": "(fw-embracing-digital-commons)=\n# Embracing the principles of Digital Commons\n\n_In this document, Dr Malvika Sharan, a previous co-lead of The Turing Way shared her insights from working in open science and with _The Turing Way_ community._\n\n_The Turing Way_ means different things to different people, shaped by factors such as our backgrounds, identities, interests, locations and areas of work, as well as different contexts as learners, educators and practitioners in data science.\n\nAs a community-developed project, _The Turing Way_ belongs to the community, and we, _The Turing Way_ team and our community of leaders are committed to fostering shared ownership through active involvement and collaboration with diverse contributors.\nThe intricacies and beauty of this collaboration are evident in the continuous growth, diversity and acknowledgement that _The Turing Way_ has garnered over the years.\n\nI believe open science and community building are at the core of my personal and professional goals.\nTo me, open science is a commitment to achieving knowledge equity. \n\nThis means facilitating access for individuals from diverse backgrounds, fostering their active contribution, and evolving the landscape of knowledge itself. \n\nI actively champion open science and community building in _The Turing Way_.\nMy commitment to open knowledge and collaboration is deeply rooted in my appreciation for Ostrom's Governing the Commons {cite}`Ostrom1990commons` and understanding of the theory and practices of “knowledge commons” as applied to digital commons {cite}`Ostrom2006commons`.\n\n## Knowledge and Digital Commons\n\n```{admonition} Definitions\n\n**Knowledge Commons:** Knowledge Commons refers to collectively owned and managed knowledge, like data, content, and software.\nUnlike physical resources, this knowledge, once shared, can be used by countless people simultaneously without any depletion.\nOpen-source projects like Linux and collaborative platforms like Wikipedia exemplify this power of unrestricted sharing for research, education, and innovation.\n\n**Digital Commons:** Digital Commons encompasses global resources created and maintained digitally through collective efforts {cite}`deRosnay2020commons`.\nThis emphasis on collaboration extends to licensing, authorship, production, governance, and participation, actively ensuring equitable access to digital resources for all {cite}`Frion2024commons`. \n```\n\nExamples of digital commons include licensing infrastructure like [Creative Commons](https://creativecommons.org/) for sharing resources with clear conditions and digital platforms like [Wikimedia Commons](https://commons.wikimedia.org/wiki/Commons:Welcome) and [Zenodo](https://zenodo.org/) for sharing and accessing media files and research components (each with appropriate license) respectively.\nThese initiatives exemplify the power of digital commons in democratising access to knowledge and enhancing opportunities for others to reuse or build on it.\n\n### Commoning in _The Turing Way_\n\nParticipatory processes for managing the Commons for the shared benefit are called commoning ([Eight Points of Reference for Commoning](https://www.bollier.org/blog/eight-points-reference-commoning)). \n\nA (digital) common always requires a (i) community – people who can or want to access (ii) a common -- physical or digital resources, and apply (iii) governance – a set of rules or structured interventions that involve the community in caring for both the resources and other members of the community. \n\n_The Turing Way_ is a (i) **community** — our readers, users, developers, and collaborators who have access to (ii) **_The Turing Way_ book** — a digital common shared under a permissive license for reuse, and (iii) **governance** — our community norms, practices, and processes through which the project is built, maintained, governed, and sustained with the involvement of community members.\n\n## _The Turing Way_ - A Digital Public Good\n\n_The Turing Way_ is also aligned with the principles of [Digital Public Goods](https://www.un.org/techenvoy/content/digital-public-goods) (DPG) -- digital assets that provide value to society and contribute to the public good. \n\n_The Turing Way_ book serves as a DPG. In 2024, the project was listed in the [Digital Public Good Alliance](https://digitalpublicgoods.net/) (DPGA) Registry for its alignment with \"Sustainable Development Goals 4 (SDG4): Quality Education\" [under the content category](https://app.digitalpublicgoods.net/a/10953).\nIn this context, _The Turing Way_ acts as a high-quality reference and educational material for people at different stages of their learning in data science.\n\nCo-developed with a diverse community, _The Turing Way_ addresses the need for centralising fragmented knowledge around open, reproducible, ethical and collaborative data science practices, making it accessible to the public without depleting their quality or availability.\n\n```{admonition} Digital Public Good and Digital Commons\n\nBoth Digital Commons and Digital Public Goods are integral to the Open Science movement {cite}`WEF2022commons`.\n\nNot all digital public goods are digital commons or openly accessible for everyone, as they can be centrally managed for public benefit without necessarily involving a community in their maintenance. \nHowever, they share some traits with the public good.\n\nExamples of Digital Public Goods include [Free and Open Source Software](https://en.wikipedia.org/wiki/Free_and_open-source_software) (FOSS) shared freely for modification and redistribution (not all FOSS are community-developed).\nThe DPGA lists software, data, resources, and initiatives aligned with the UN's Sustainable Development Goals.\n\n```\n## Operationalising the Principles of Commons\n\nDeveloped and maintained by a globally distributed community, both, _The Turing Way_ handbook and its community have continued to evolve in response to the changing landscape of data science and the growing need to make it collaborative, inclusive, and accessible to as many people as possible.\nAs a public resource — _The Turing Way_ operationalises approaches that underpin digital commons and digital public goods, some of which are outlined below:\n\n* Champion **openness** of knowledge and participation processes\n* Foster an environment for **diversity** of knowledge, knowledge producers and their interests\n* Actively **exemplify** the practices we share.\n* Proactively promote **equity** through collaboration with underrepresented communities.\n* Build strategic **partnerships** with different stakeholders to accelerate the adoption of practices across sectors.\n* Establish **shared ownership** for long-term maintenance and sustainability.\n\nBelow, I elaborate on how these principles are operationalised in _The Turing Way_ at both levels: a) **in building _The Turing Way_ project and community**; and b) **in building the handbook and other resources**, promoting open, reproducible, ethical, and collaborative data science practices.\n\n### 1. Champion openness of knowledge and participation processes\n\nFollowing the principle of 'as open as possible and as closed as necessary,' we prioritise openness and transparency to ensure access and equitable participation.\n\n* We evolve community roles and processes for open engagement and decision-making, ensuring transparency in pathways for community involvement and project direction.\n* We actively engage community members in co-creating accessibly written chapters and  openly licensed resources on data science, aiming to broaden participation in the fields of Data Science and research.\n\n### 2. Foster an environment for diversity of knowledge, knowledge producers and their interests\n\nThrough proactive measures, we cultivate an environment that champions diversity through inclusion, collaboration, and ethical approaches where knowledge, knowledge producers and their interests can thrive.\n\n* We provide community participation guidelines, a Code of Conduct, an acknowledgement process and resources outlining approaches through which diverse contributors can collaborate in _The Turing Way_.\nBy creating different pathways for engagement at different levels of decision-making, we actively support our community members to discuss different challenges, exchange ideas and co-create solutions.\n* Diverse members contribute to the development of _The Turing Way_ guides, ensuring that EDIA (Equity, Diversity, Inclusion, and Accessibility) principles are integrated into both, the practices we share, and the positive impact we aim for in data science.\n\n### 3. Actively exemplify the practices we share\n\nAs a community, an open science initiative, and the creators of a data science book, our commitment is to embody the practices we advocate in _The Turing Way_.\n\n* The practices we share in the book aren't just ideals — they shape the core of our project management and community engagement. Drawing from open science, extensive collaboration, and ethical research, we model practices that serve as a blueprint for integrating these principles into various work contexts.\n* Our Community Handbook encapsulates and disseminates these practices, providing a guide for others to launch community-led projects akin to _The Turing Way_ in diverse settings.\n\n### 4. Proactively promote equity through collaboration with underrepresented communities\n\nIn _The Turing Way_, our vision for a large-scale, global collaboration is rooted in acknowledging the expansive definition and scope of equity.\n\n* Diversity, intersectionality, equity, inclusion, and accessibility are woven into the fabric of _The Turing Way_ community. Our project is purposefully crafted to ensure the involvement of a diverse range of stakeholders, representing varied interests, and employs equitable approaches in addressing them.\n* Through the collective wisdom shared in _The Turing Way_ book, we're committed to ensuring that equity is not an additional responsibility but an integral consideration embedded at every stage of research throughout its lifecycle.\n\n### 5. Build strategic partnerships with different stakeholders to accelerate the adoption of practices across sectors\n\nWe're on a mission to fast-track the adoption of _The Turing Way_ resources and best practices across diverse settings, whether through formal partnerships or more informal collaborations.\n\n* In _The Turing Way_ community, we actively create spaces for cross-community collaborations, hosting engaging events like Collaboration Cafés, Fireside Chats, and Book Dash. Our commitment goes beyond our community borders – we actively contribute to the infrastructure we use and give back to projects led by our community members.\n * The users and contributors of _The Turing Way_ aren't just participants; they become advocates, implementing best practices within their organisations. To expand our impact, we have launched _The Turing Way_ Practitioners Hub, pioneering sector-specific collaboration across academia, government, industry, and the public.\n\n### 6. Establish shared ownership for long-term maintenance and sustainability\n\nWe focus on a collaborative culture, ensuring the project is owned and maintained by the community for its lasting success.\n\n* Through co-development approaches, contribution guidelines, and governance being co-created with community involvement, we foster a shared sense of ownership, and responsibility for maintenance and sustainability in the long term.\n* To ensure continuous access and benefit, our resources and community need careful maintenance. _The Turing Way_ is an evolving project, requiring community support to identify when updates, replacements, or archiving are needed.\n\nJoin us in shaping the future where collaboration, equity, transparency and inclusivity is at the forefront of research, data science and AI!\n"
  },
  {
    "path": "book/website/foreword/emergent-strategy.md",
    "content": "(fw-emergent-strategy)=\n# Emergence as _The Turing Way’s_ Strategy\n\n```{warning}\nThis chapter is under review.\n```\n\n_In this document, Dr Kirstie Whitaker, founder of _The Turing Way_ talks us through the principles of [Emergent Strategy](https://fortelabs.co/blog/emergent-strategy-organizing-for-social-justice/) and how they have directed and informed her leadership in open science more broadly._\n\n```{figure} ../../figures/healthy-leadership.png\n---\nname: healthy-leadership\nalt: Leadership is illustrated as a fractal where different people are watering and growing flowers in different places - that is leading to new fractals with more people. There are a few quotes written on the image - Transform yourself to transform the world, the large is a reflection of the small, and strong values can spread to other organisations.\n---\nIllustration of Healthy Leadership by Scriberia. Zenodo. [https://doi.org/10.5281/zenodo.4323154](https://doi.org/10.5281/zenodo.4323154).\nWe highlight the quotes from Adrienne Maree Brown, author of the Book Emergent Strategy.\n```\n\n_The Turing Way_ is a living book.\nIt is written by a community, who are themselves human, ever-changing, beautiful and creative.\nWhat they can do together - will - create what is better than anything any one person could imagine.\n\nIn this document, I dig into each principle of Emergent Strategy, as described by [Adrienne Maree brown](https://adriennemareebrown.net).\nShe builds on Obolensky’s definition of _emergence_ as “the way complex systems and patterns arise out of a multiplicity of relatively simple interactions”.\n\nShe says in the introduction to her book:\n> You can read the book with others, assess each other and assess the groups and circles you move in.\n> Come up with new words and new observations for all of this, and notice how it connects and echoes other theoretical frameworks.\n> Underline everything that moves you and then give it to someone younger than you.\n> Come up with workshops and retreats around this work.\n>\n> _Take it, run, go, grow, innovate, emerge._\n\nThat’s what I bring into _The Turing Way_.\nRemember that you can make adjustments to this text yourself as your understanding evolves.\n> In fact, I - we - hope that you already do it.\n\n_Thank you for being here._\n\n```{admonition} The Principles of Emergent Strategy\n\n1. {ref}`Small is good, small is all (The large is a reflection of the small)<fw-emergent-strategy-1>`\n2. {ref}`Change is constant (Be like water)<fw-emergent-strategy-2>`\n3. {ref}`There is always enough time for the right work.<fw-emergent-strategy-3>` There is a conversation in the room that only these people at this moment can have. Find it.\n4. {ref}`Never a failure, always a lesson<fw-emergent-strategy-4>`\n5. {ref}`Trust the People (If you trust the people, they become trustworthy)<fw-emergent-strategy-5>`\n6. {ref}`Move at the speed of trust<fw-emergent-strategy-6>`\n7. {ref}`Focus on critical connections more than critical mass—build the resilience by building the relationships<fw-emergent-strategy-7>`\n8. {ref}`Less prep, more presence<fw-emergent-strategy-8>`\n9. {ref}`What you pay attention to grows<fw-emergent-strategy-9>`\n\n```\n\nThis [blog post by Forte Labs](https://fortelabs.co/blog/emergent-strategy-organizing-for-social-justice) gives a great overview of the principles.\nThey aren’t really separable and are lenses on the whole philosophy that Brown espouses.\n\n(fw-emergent-strategy-1)=\n## 1. Small is good, small is all (The large is a reflection of the small)\n\nMost people I have worked with have a grand vision for the change they want to see in the world.\n\nMaybe it’s making all research reproducible at the time of publication.\nMaybe it’s ensuring that every data set comes with documented metadata and provenance (a data paper, for example).\nMaybe it’s investing in community-created open-source software to improve research efficiency.\n\nI deeply support and encourage those big dreams.\nThey can seem intimidating, impossible, or too much for one person, project, or community. Sometimes it can be tempting to lie down on the floor and give up when you realise just how stacked against those collaborative practices our current incentive structures can be.\n\nWhat I love about this first principle of emergent strategy is that it gives us a pathway to making that change.\n\n* Want to see a kinder world? _Be kind to the next person you interact with._\n* Want to see a more reproducible publishing ecosystem?\n_Help the next person you collaborate with to re-run their analyses to confirm the same answer._\n* Want data scientists to be more representative of our global community in terms of ethnicity, gender, sexuality, disability and so many more dimensions and their intersections?\n_Encourage the next person you mentor to share their perspective. Especially if that person is yourself._\n\n_The Turing Way_ is a space where I hope you can start taking steps towards that change.\n\n(fw-emergent-strategy-2)=\n## 2. Change is constant (Be like water)\n\nIt’s exciting to work in a field like data science where the boundaries of what is known and what can be known are changing every day.\n\nIt can also make finishing a task incredibly difficult!\n\nThe goalposts move on a weekly or monthly basis.\nEvery new research paper that you read can change your perspective and potentially adjust the trajectory of your work.\n\n_The Turing Way_ is designed to be ever-evolving.\nWe embrace a version-controlled workflow, so you can’t really break anything too badly, and we keep a history of where we have been.\n\nA contribution - any contribution - is a step in the right direction.\nTry not to overthink the completeness of your work.\nAs with a stream, a river, or the ocean, there will be more contributors to take the project forward.\nWhatever you can do right now, in this moment, is what we need and what we appreciate.\n\n(fw-emergent-strategy-3)=\n## 3. There is always enough time for the right work. There is a conversation in the room that only these people at this moment can have. Find it.\n\nOne of the things that I’ve heard clearly in the first few years of creating _The Turing Way_ is how uncomfortable people feel in agenda-less spaces.\n\nI ran open [coffee chats](https://twitter.com/kirstie_j/status/1239455513080926208) every workday morning from the first UK COVID lockdown in March 2020 to Easter 2022 (when I started my maternity leave).\n\nI LOVE the creativity and inspiration that comes from completely open-ended conversations.\nI had to listen, get to know some of the regulars, sense what they were interested in talking about that particular day, and then ask the right questions to allow the conversation to evolve.\n\nThere’s always a bit of trial and error involved, and so part of finding the conversation for _these_ people in _this_ room is balancing listening and experimenting.\nFor me, this is core to the concept of emergence and community-led creation.\nIf someone else is making the agenda and dictating the direction, we miss so much of the creativity that could come from these particular people and their lived experiences.\n\nBeyond the literal example of finding a conversation for this group of people, lies the broader principle: there is always enough time for the right work.\n\n* Sometimes that means being careful and thoughtful about creating agendas for meetings.\n* Sometimes it means saying no to urgent work to prioritise the important tasks.\nInfrastructure work, and open, collaborative effort, have always tended to fall down an individual’s or an organisation’s priority list.\n But if we don’t start doing that work today, it will never be started, and then we’ll never achieve transformational change.\n* Sometimes it means channelling the fact that _the large is a reflection of the small_.\nDoes that person need a little extra time to be heard and understood today?\nMaybe that _is_ the work that you’re supposed to be undertaking today.\nDeadlines be damned.\n\n(fw-emergent-strategy-4)=\n## 4. Never a failure, always a lesson\n\nBugs are features.\nThe typos - or broken links - in _The Turing Way_ are invitations for new contributors to get involved.\n\nTogether, we are trying to change the world.\nChange research culture, make data more accessible, democratise access to knowledge, and ensure that artificial intelligence is harnessed for a public, global good.\nWe need to dismantle our own biases - sexism, racism, ableism, colonialism, capitalism - in order to reach this potential.\n\nWe will all fail in this endeavour, every day.\n\nThe goal is to get up and try to improve - incrementally - every step we take.\n\nBe vulnerable, be brave, and be gracious in recognising the learnings of others as they stretch beyond their comfort zone.\n\n(If you’d like to read more about courage and vulnerability in leadership, I recommend [Brene Brown’s](https://brenebrown.com/) book [Dare To Lead](https://daretolead.brenebrown.com/).\nIn particular, her exercise on [operationalising values](https://brenebrown.com/operationalizing-your-orgs-values/) is really fascinating.\nIt’s so easy to _say_ the right thing.\nWhat takes conviction and resilience is making the changes to identify and then actually _do_ the right thing.)\n\n(fw-emergent-strategy-5)=\n## 5. Trust the People (If you trust the people, they become trustworthy)\n\nThis principle is inspired by the writings of [Lao Tzu](https://en.wikipedia.org/wiki/Laozi), an ancient Chinese scholar who is reputed to have written the [Tao Te Ching](https://en.wikipedia.org/wiki/Tao_Te_Ching).\n\n> \"When the Master governs, the people\n are hardly aware that (s)he exists.\n The next best is a leader who is loved.\n Next, one who is feared.\n The worst is one who is despised.\n\n> If you don’t trust people,\n you make them untrustworthy.\n\n> The Master doesn’t talk, (s)he acts.\n When work is done,\n the people say, ‘Amazing:\n we did it, all by ourselves!’\"\n\nIt can be tempting to control a situation (or at least try to feel a sense of control).\nAnd - as a corollary - it can be tempting to try to control the people you’re working with.\n\nI certainly can fall prey to advocating so strongly for a direction that I believe in that I come across as directing - telling - team members what to do.\n\nBut, as Lao Tzu knew 2500 years ago, the very best work comes from the people who are trusted and who have the safety and the space to find their motivation and alignment with the project goals.\n\n(fw-emergent-strategy-6)=\n## 6. Move at the speed of trust\n\nNo one ever felt an increase in trust when given a deadline or time constraint to get there.\n\nBuilding and nurturing trust requires time, patience, and a little deftness to take advantage of opportunities when they arise.\n\nWe have project goals for _The Turing Way_ and we have to report on the effort we have made to our funders.\nIt can be hard not to be driven by deadlines.\nBut it is imperative that we build as much space as we possibly can to move at the speed of trust.\n\nThe journey is so much more important than the destination.\nEspecially if that destination can’t be reached by this particular team at this particular time.\n_Change is constant. Be like water._\n\n(fw-emergent-strategy-7)=\n## 7. Focus on critical connections more than critical mass — build the resilience by building the relationships\n\nOne of the other temptations that we are incentivised towards is to count things.\n Number of chapters, number of contributors, number of workshops, amounts of funding, how many projects we have inspired.\n\nWe have to report these to our funders in order to keep the lights on, but I encourage you to focus more on the critical connections - those interpersonal dynamics that allow you to build trust, and manifest the change that you want to see in the world on an individual level before you try to scale it.\n\nWe can do both.\nWe can increase our impact, include more people, welcome their contributions and support the pathways along which their careers develop… but not if we are too narrow in our definitions of success.\n\nWe will make a deeper and more profound change in the world by telling the stories of the individuals who make up our community in their own words and in ways that allow others to build their own confidence and trust.\n\n(fw-emergent-strategy-8)=\n## 8. Less prep, more presence\n\nFor me, this principle is very similar to _there is always time for the right work_.\n\nFinding the emergent discussion.\nIdentifying the gaps, and individual contributor’s strengths and motivations.\nBuilding a deep trust and alignment in the purpose and cultural changes that _The Turing Way_ can manifest.\n\nWe can think carefully about how to build spaces to develop those conversations, but we can’t control the direction of the discussion, and we can’t force creativity or collaboration.\n\n* We can control our own behaviour.\n* We can be present.\n* We can reflect.\n* We can respond - ideally with kindness and compassion.\n* We can be ready to act when the opportunities emerge.\n\n(fw-emergent-strategy-9)=\n## 9. What you pay attention to grows\n\nEverything and everyone requires time and attention.\n\nWe have illustrations capturing garden analogies throughout _The Turing Way_.\nThat’s because we care deeply about nurturing and sustaining our community.\nWe want our members - and our project - to thrive.\n\nWhere we place our focus, our energy, our kindness, and our trust, will grow.\n"
  },
  {
    "path": "book/website/foreword/faqs.md",
    "content": "(fw-faqs)=\n# Frequently Asked Questions\n\n*Meeting you where you are.* \n\nIn this document, we provide an overview of resources and ways of working in the community.\nAlthough, most of these resources are described in different chapters, you can always return to this page to find quick access to useful pointers and links.\n\nYou can get started by exploring different opportunities [listed on our start page](https://the-turing-way.org).\n\n## 1. Getting to Know the Project\n\n| You might be wondering | You can learn about that here |\n|:----------------------- |:---------------------------------|\n| Where can I browse its resources and chapters? | Check out the [Online Book](https://book.the-turing-way.org) |\n| Where can I learn about the next community event that I can join? | You can look at upcoming events in [the calendar](#ch-community-calls-calendar). We also share them regularly in our [monthly newsletters](https://calendar.the-turing-way.org). |\n| Where are the raw files for these chapters stored? | Online on [GitHub repository](https://github.com/the-turing-way/the-turing-way/) |\n| How Can I get updates regularly? | Follow us on social platform as [listed on our start page](https://the-turing-way.org) |\n| Is there a dedicated chat system for the community? | Join the [Slack workspace](https://slack.the-turing-way.org). |\n| Are there monthly updates I can receive? | We send [newsletters monthly](#ch-newsletters): [subscribe here](https://news.the-turing-way.org). |\n| What happened in the project last year? | Read previous reports in the [project communication repo](https://github.com/the-turing-way/communications). |\n| Are there some presentations I can look at? | You can find them linked [to this chapter](#ch-presenting). |\n| I don't feel like reading, can I watch short videos? | Here is a [YouTube playlist with short videos](https://www.youtube.com/playlist?list=PLBxcQEfGu3DkSOD-LbW5BxFIBvAgHvGHe). |\n\n## 2. Documentation and Participation Guidelines \n\n| You might be wondering | You can learn about that here |\n|:----------------------- |:---------------------------------|\n| Can I use its resources without being a part of this project? | Yes! The book is available for free under [CC-BY License](https://github.com/the-turing-way/the-turing-way/blob/master/LICENSE.md). |\n| What is expected of me if I participate in the community? | Please read and abide by the [](#ch-coc). |\n| Is there a guideline for people to contribute to the GitHub repository? | We have [Contribution Guidelines](#ch-contributing). |\n| I am super new to GitHub. How does it work? | See this chapter on {ref}`Getting Started with GitHub<cl-github-novice>` |\n| Is there a recommended format for the chapters? | Yes. Please see this {ref}`Style guide<ch-style>` and recommendations on how to {ref}`Maintain Consistency<ch-consistency>`|\n| Are there any templates and supporting materials for people writing chapters? | Here are some templates and workflows for {ref}`Contributing and Developing Chapters<ch-contributing>` |\n\n## 3. Contributing\n\n| You might be wondering | You can learn about that here |\n|:----------------------- |:---------------------------------|\n| What kind of topics are in the scope for *The Turing Way*? | Any topic in research and data science practices that fit in these guides: [Reproducible Research](#rr), [Project Design](#pd), [Communication](#cm), [Collaboration](#cl), [Ethical Research](#er) |\n| Where can I learn more about the community? | We have [Community Handbook](#ch) describing these aspects. |\n| What ideas, resources or improvements in the book are being suggested by others? | Browse open [issues on GitHub](https://github.com/the-turing-way/the-turing-way/issues) |\n| What contributions are currently being made by others? | Browse open [Pull Requests (PR) on GitHub](https://github.com/the-turing-way/the-turing-way/pulls) |\n| How do people interact with each other when reviewing contributions? | Click on an open PR that has been commented on to see how people exchange ideas and feedback. [See this example](https://github.com/the-turing-way/the-turing-way/pull/1656). Also, join our Slack Workspace to be part of conversations. |\n\n## 4. Participating Synchronously\n\n:::{seealso}\nFind out about the latest events in our [monthly newsletters](https://news.the-turing-way.org).\n:::\n\n| Types of calls/meetings | How |\n|:----------------------- |:---------------------------------|\n| What is a [Collaboration Cafe](#ch-community-calls-collabcafe)? | These are open coworking calls for anyone interested in collaborating with _The Turing Way_ members. You can look for upcoming collaboration cafes in [the community calendar](#ch-community-calls-calendar) |\n| {ref}`ch-bookdash` | These are a week-long events organised twice a year. Participants are selected through open calls for applications. |\n| What is a {ref}`Fireside Chat<ch-fireside-chat>`? | These public online events are organised frequently to feature open discussions and panels with experts, champions and their projects in reproducibility, open research, ethics, collaboration and other opportunities in data science and research. |\n| What is a [Community Forum](#ch-community-calls-forums)? | These online calls bring together any member of the community - including people who have not yet contributed to __The Turing way__. Our aim is to leverage the expertise across our community and we explicitly invite you to review our processes and recommend improvements in our decision-making. |\n| What are onboarding calls? | These calls are hosted every two months, join us to connect with other new members of the community and learn more about the project. |\n| Are there Working Group Meetings? | Different {ref}`Working Groups<subprojects>` meet regularly to discuss and work on specific areas of their interest in _The Turing way_. Anyone interested in their work can contact the chair to join these calls. |\n| Can I meet community members at in-person events? | Our community members often attend several events/conferences where you can plan to join them! You can connect with the team and community on Slack workspace. |\n\n## 5. Participating Asynchronously\n\n| You might be wondering this | You can learn about that here |\n|:----------------------- |:---------------------------------|\n| Can I see what people are discussing about without having to participate right now? | You are welcome to read comments on GitHub and visit Slack channels without joining the conversation. |\n| Oh! However I have some thoughts and feedback on an ongoing discussion. | Great! Why wait? Join the conversation. We would be delighted to welcome your thoughts. | \n| I read a chapter and want to clarify a minor technical/conceptual thing. Can I simply ask it without opening an issue? | Yes. Please ask away on a suitable Slack channel. |\n| I saw a typo or factual error in a chapter, how can I fix it? | (i) You can raise the error by opening a GitHub issue. (ii) You can also directly fix the error by using the 'suggest edit' option on Netlify, which will help in opening a Pull Request. (iii) If you get stuck, ask for help in troubleshooting on Slack. |\n| I am not very comfortable with GitHub, I don't want to do something wrong on the repository. Help! | We can assure you that you will not 'break' the GitHub repository. Everything there is reversible, thanks to `git` version control system. We encourage you to try out GitHub by fixing some minor errors marked as [good first issues](https://github.com/the-turing-way/the-turing-way/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22). |\n| I want to report a bug. | Use the [bug report issue template](https://github.com/the-turing-way/the-turing-way/issues/new/choose). |\n| I have an idea for a chapter, how should I share it? | You can open an issue using [this issue template for a new chapter](https://github.com/the-turing-way/the-turing-way/issues/new?assignees=&labels=&template=CHAPTER_ISSUE_TEMPLATE.md) to describe your idea. |\n| Do I have to write the whole chapter when I propose an idea? | You can always invite contributions from others. Do as little as you can, or as much as you would like. |\n| I saw someone working on a topic that I know a few things about. Can I collaborate in their Pull Request or issue? | Please do comment under the appropriate issue of Pull Request to indicate your interest in collaborating. You can offer your support to review the chapter or co-write the chapter. You can also contribute by creating illustrations or helping add references. |\n\n## 6. Receiving Acknowledgement\n\n| You might be wondering this | You can learn about that here |\n|:----------------------- |:---------------------------------|\n| I just contributed to _The Turing Way_, am I a contributor now? | Yes, you will be added as a contributor to _The Turing Way_ using [all-contributors](https://allcontributors.org/) bot. Your name will appear on our [Contributors table](https://github.com/the-turing-way/the-turing-way/blob/main/README.md#contributors). |\n| My contribution to _The Turing Way_ was not on GitHub, will I still be acknowledged? | Absolutely! The all-contributors bot allows us to give attribution to people even when they don't work on GitHub. You might however need a [GitHub account](https://github.com). |\n| Can I describe my contributions in detail? | Yes! We have a dedicated [page in the afterword](#contributors-record-individual) where you are encouraged to create an entry with your name, bio and description of your contribution. |\n| My research project collaborated with _The Turing Way_. Can I mention it somewhere? | We have a [contributing project](https://github.com/the-turing-way/the-turing-way/blob/main/collaborating_projects.md) document where our collaborating projects, organisations and sponsors are listed. You can describe your project in this document. |\n| My organisation supports by participation in _The Turing Way_. Can I mention it somewhere? | We have a [contributing project](https://github.com/the-turing-way/the-turing-way/blob/main/collaborating_projects.md) document where our collaborating projects, organisations and sponsors are listed. You can describe your organisation with your profile in this document. |\n\nHave more questions that are not covered here? Ask us directly via the communication channels listed in the table above.\nCheck out the next subchapters to read what motivations others have for working on the project, what other community initiatives are led by them and how you can stay involved.\n"
  },
  {
    "path": "book/website/foreword/foreword.md",
    "content": "(fw)=\n# Foreword\n\n```{note}\nThis section has been recently added, and some chapters are still being reviewed by the project delivery team and community members. If you notice any error, please raise an issue on our GitHub repository.\n```\n\nThis is an introductory section of _The Turing Way_ as a project, a handbook, and a community.\nHere you will find chapters providing contexts and background on the book, how you can use it, how you can contribute to different aspects of the project, and how you can participate in this community.\n\nKirstie Whitaker, founder and the project lead until November 2024, discussed \"Emergent Strategy\" and how it has inspired her leadership and the foundation of _The Turing Way_.\nMalvika Sharan, a previous project lead until June 2025 also shared her reflections from working with the community and how _The Turing Way_ applies approaches that underpin the \"Principles of Digital Commons.\"\n\nFinally, we provide details on community roles, citation process and frequently asked questions to help identify the right places for you to get involved.\n\nYou will find these details in the following chapters:\n\n- {ref}`fw-background`\n- {ref}`fw-navigating`\n- {ref}`fw-emergent-strategy`\n- {ref}`fw-embracing-digital-commons`\n- {ref}`fw-community`\n- {ref}`fw-governance`\n- {ref}`fw-cite`\n- {ref}`fw-faqs`\n\n```{figure} ../../figures/banner-welcome.jpg\n---\nwidth: 500px\nname: banner-welcome\nalt: Two people, a woman and a man, waving next to a banner that says - welcome.\n---\n_The Turing Way_ project illustration by Scriberia. Zenodo. [http://doi.org/10.5281/zenodo.3332807](http://doi.org/10.5281/zenodo.3332807)\n```\n\nWe hope these resources will help you navigate, understand and be part of our community.\n"
  },
  {
    "path": "book/website/foreword/governance/governance-roles.md",
    "content": "(fw-governance-roles)=\n# Governance Roles\n\n```{note}\nThis page displays the [`GOVERNANCE_ROLES.md`](https://github.com/the-turing-way/the-turing-way/blob/main/GOVERNANCE_ROLES.md), a base file with information about different groups involves in the governance of _The Turing Way_.\n```\n\n```{include} ../../../../GOVERNANCE_ROLES.md\n:start-after: # Governance Roles in _The Turing Way_\n```\n"
  },
  {
    "path": "book/website/foreword/governance/ways-of-working.md",
    "content": "(fw-ways-of-working)=\n# Ways of Working\n\n```{note}\nThis page displays the [`ways_of_working.md`](https://github.com/the-turing-way/the-turing-way/blob/main/ways_of_working.md), a base file with information about how different groups collaborate within _The Turing Way_.\n```\n\n```{include} ../../../../ways_of_working.md\n:start-after: # Ways of Working\n```\n"
  },
  {
    "path": "book/website/foreword/governance.md",
    "content": "(fw-governance)=\n# Governance in _The Turing Way_ \n\n```{warning}\nThis document is in its early stages and will evolve in conversation with the community.\n```\n\nGovernance is a set of formal and informal practices through which an organisation sets goals, assigns responsibilities, establishes systems, and assesses outcomes of organisational action.\n\nThe governance body of _The Turing Way_ is represented by the members of the Steering Committee, Working Groups and volunteer members from the community involved in defining and leading different initiatives (both funded and informally organised) within _The Turing Way_.\n\nLike the book itself, the governance of _The Turing Way_ is always a work in progress!\nWe are very keen to discuss and improve our governance approaches with the involvement of our community members.\n\n## Three Levels of Decision Making\n\nIn 2023-2024, _The Turing Way_ adopted three institutional \"levels\".\nOriginally described in the context of Studies of the institutional design of natural resource commons {cite}`Ostrom2005commons` and later adopted in the [free and open source software](https://en.wikipedia.org/wiki/Free_and_open-source_software) (FOSS) communities to describe three broad levels of formal and informal norms that affect decision-making {cite}`Schweik2007commons`.\n\n1. The “Community level\" norms influence the everyday decisions and actions made by community members such as participating in the community and contributing to the book.\n2. The \"Maintenance\" level describes different groups of people coming together to work on and promote specific areas and initiatives in the project as well as defining or changing processes to make community level participation easier.\n3. At the \"Constitution\" level, nominated community leaders from the Maintenance level participate in the Turing Way Steering Committee. \nThe Steering Committee covers decisions at a strategic, whole-project level, such as the establishment of Working Groups, and creating and revising project-related norms that affect the whole of the project, the community and their sustainability.\n\n```{figure} ../../figures/turing-way-governance-2.jpeg\n---\nwidth: 500px\nname: turing-way-governance\nalt: Illustration of a woman looking thoughtfully at a map she is holding which has information about community, maintenance and constitution levels. She has a backpack depicting her skills and expertise and a compass showing the direction of her personal goals. Next to her is a goalpost with directions for project goals, roles and responsibilities, resources and policies, and governance.\n---\n_The Turing Way_'s governance occurs across community, maintenance and constitution levels. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\nEach level of decision-making should inform and influence each other, both applying and evolving governance processes in order to build transparent and accountable governance of _The Turing Way_.\n\nBelow, we describe these three levels of decision-making in the context of _The Turing Way_, inputs for which were invited from open discussions with our community members ([follow Miro board for details](https://miro.com/app/board/uXjVIe_VQAQ=/?share_link_id=593022744253)).\nThis model was presented at a Community Forum in February 2024, a recording of which is shared below.\n\n::: {iframe} https://www.youtube.com/embed/WzzfaSQQL1w?si=76j7P-MFJbfGWgLQ\n:width: 100%\n:::\n\n_This is a recording from the first public Community Forum hosted in February 2024._\n\nHowever in-depth one would like to engage in _The Turing Way_, we create opportunities for community participation, skill building and pathways to leadership in data science.\nWe discuss these roles and opportunities so that you can identify the best level of engagement for yourself in the project and our community.\n\nWe want to ensure that all roles are recognised and valued in _The Turing Way_.\nTherefore, from the onset, we have worked to define these different paths for engagement, support and acknowledgement for community members in _The Turing Way_.\nYou can read the details in our community handbook in the [acknowledging contributors] chapter (https://the-turing-way.netlify.app/community-handbook/acknowledgement).\n\n### 1. Community Level\n\nThis level encompasses all members of *The Turing Way* community, both longstanding and new.\nMembers may have made contributions to the book, participated in an event or simply engaged as book users, social media followers, Slack Workspace members or independent advocates of _The Turing Way_.\n\n```{admonition} Reminder\nParticipation in _The Turing Way_ doesn’t only involve contributions to the Book.\n```\n\nDecisions and activities undertaken by community level members may include the following: \n* Making individual contributions such as creating an issue, fixing a bug, committing a change on existing chapters, and reviewing Pull Requests.\n* Joining and inviting new individuals to community meetings such as Collaborations Cafe and Co-working sessions.\n* Presenting about *The Turing Way* at an event.\n* Initiating a conversation or posing a question in *The Turing Way* community channels.\n* Suggesting content for _The Turing Way_ Newsletter.\n* Applying to participate in the bi-annual Turing Way Book Dashes.\n* Proposing an idea for training sessions or community events.\n* Proposing a new initiative such as a Working Group.\n* Taking any book-related roles in writing, reviewing or maintaining a chapter.\n* Translating any part of _The Turing Way_ chapters and resources.\n* Establishing a collaboration.\n* Helping others with some issues they raise on GitHub or ask on Slack.\n* Asking a question or help!\n* Other things that you can do as individuals.\n\nWe have discussed specific roles under this level in {ref}`fw-community`.\n\nGuidelines and processes for this level are described in the [contribution guidelines](#ch-contributing) and [Community Handbook](#ch).\nThese processes and resources are co-developed by maintenance-level members with the involvement of members from the community and constitution levels as needed.\n\n### Maintenance Level\n\nThis level includes members from different Working Groups of _The Turing Way_.\n\n_The Turing Way_ also collaborates with various projects and initiatives, whose participants form **Project Delivery Groups**.\nWhile these projects may have distinct goals, funding, host organisation, leadership, and timelines, they fall within _The Turing Way_'s scope.\nTo ensure accountability and alignment with the overall project and community interests, Delivery Group representatives join _The Turing Way_'s Steering Committee.\n\nYou can find details about these members in {ref}`fw-governance-roles`.\n\n#### Responsibilities at the maintenance level\n\nMembers at this level share responsibilities for _The Turing Way_ community management and project maintenance.\nDecision-making at the maintenance level must stay with the community and stewards of the community participating at this level.\nThey are also responsible for making the process of participation at the community level transparent for other community members.\n\n```{seealso}\nFrom the onset, different kinds of work in _The Turing Way_ project have been led and executed by different groups of people.\nFor example, since 2020, localisation and translation work has been carried out by a group of international community members, who although initially worked in an ad-hoc manner, later were named and recognised as the 'Translation and Localisation Team'.\nSimilarly, in 2021, after moving Book Dash as an online event, a 'Book Dash Planning Committee' was convened yearly joined by a few previous attendees of Book Dashes who supported the planning and delivery of the event.\nNonetheless, the formation of WGs had largely remained informal: after existing streams of work had been identified, community members engaged with the work were formally recognised and encouraged to develop ways of working that aligned with their needs.\n\nHowever, as the community has grown, WGs have been more formally established and explicit pathways are being created to formalise WGs. \n\n**Guidelines and resources for  WGs are shared in the Community Handbook.** <-- At the time of writing, this chapter is under review ([see preview](https://deploy-preview-3499--the-turing-way.netlify.app/community-handbook/working-groups)).\n```\n\n#### Decisions at the maintenance level\n\nDecisions at the maintainer level may include the following:\n\n* Setting up, leading or representing a  WG in different types of roles as leads, co-leads, secretaries and contributing members. \n* Facilitating the creation of a new  WG\n* Decisions for planning and hosting the WG meetings and recurrence of the meetings.\n* Organising and distributing the responsibilities within each  WG.\n* Proposing which conferences to participate in or apply to represent their work in _The Turing Way_.\n* Proposing funding ideas/proposals or responding to a call for applications to support their work in _The Turing Way_.\n* Suggesting changes in ongoing processes or current working models through discussions.\n* Organising a [Fireside Chat event](#ch-fireside-chat) in conversation with the Community Management Working Group.\n* Clarifying unclear processes that guide the work of a  WGs.\n* Escalating issues that can not be addressed at the maintainer level.\n\n### 3. Constitution Level - Steering Committee\n\nThe constitution level is represented by _The Turing Way_ Steering committee, which is comprised of the 1) chairs of Working Groups, and 2) leads of Delivery Groups of projects in _The Turing Way_, both with defined goals and deliverables.\nWorking Group chairs or Delivery Group leads may also appoint another member from their group or team to represent their work within the committee.\nThe aim is to ensure consistent representation in the Steering Committee by a stable group of individuals who can provide continuity in knowledge and leadership, contributing effectively to the committee’s shared objectives.\n\nGovernance at this level encompasses strategic decisions and significant project changes, including project goals, governance processes, funding, recruitment and shared leadership.\n\n#### Responsibilities of the Steering Committee\n\nSteering Committee members are responsible for escalating project- and community-wide decisions to the constitution level and participating in the decision-making processes.\nThey actively engage community members by transparently sharing decisions and outcomes from the constitution level discussions.\n\nTheir responsibility includes ensuring that the community engagement, contribution and decision-making process, which affects the broader project and the community functioning, is developed and kept transparent and where possible, involves the rest of the community.\nThey solicit feedback via GitHub issues and newsletters and approve changes that improve project and community functioning.\n\n```{note}\nBetween 2019 and 2025, the project was hosted and funded by The Alan Turing Institute and governed by the Project Delivery Team that supported the formalisation of the three level governance - now represented by the constitution level Steering Committee.\n```\n\n#### Decisions at the constitution level\n\nDecisions at the constitution level may include the following, but are not limited to:\n- Providing leadership and strategic directions in the project.\n- Providing advice and ensure accountability for community- and maintenance level efforts.\n- Building clarity around resources available for the maintainers and community members.\n- Process whereby the chair/representatives of the WGs can represent community and WG interests at this level of decision-making.\n- Supporting the application for core funding, staff recruitment and budget allocation.\n- Ensuring that the project's directions is informed by the community.\n- Designing additional community representation roles such as through an Advisory Group.\n- Supporting other members in developing process documentation for their decision-making process, and identifying resources they need to continue their work.\n- Supporting project-wide and community-wide concerns and communicating them transparently to the community.\n\n#### Community Forums\n\nSince 2024, the constitution level group has been hosting open/public community events called 'Community Forums' to discuss governance-related matters with our community members and anyone who is interested in understanding the community and project management aspects of _The Turing Way_.\nModelled off a political town hall event, these online sessions are an opportunity to better understand activities across the project and how decisions are made.\nOur aim is to leverage the expertise across our community, and we explicitly invite you to review our processes and recommend improvements.\n\nPlease join Community Forums to stay up to date with the development.\n\n- Recordings from all Community Forums have been published on our [YouTube channel](https://www.youtube.com/watch?v=QFjXbvylGp8&list=PLBxcQEfGu3DkB1cLjSD5nEFvb_JkMPVqf).\n- You can find out about our next Community Forums in the [monthly newsletters](https://buttondown.email/turingway/archive/).\n\n```{note}\nSince 2019, {ref}`Collaboration Cafés<ch-community-calls-collabcafe>` and {ref}`Book Dash<ch-bookdash>` have become dedicated spaces for coworking for community members for all levels of governance (even when these levels were not formally described for _The Turing Way_).\nThese spaces have allowed different groups to form around shared ideas and work of interests, several becoming [Communities of Practice](https://en.wikipedia.org/wiki/Community_of_practice) within _The Turing Way_.\n\nInitially, some community members self-organised themselves into groups to work together, collaborated with the Project Delivery Teams, supported/mentored members from the broader community and represented the project in different contexts.\nIn 2022-2023, the Project Delivery Team organised regular meetings with these core contributors to discuss the maintenance-related norms and decisions in _The Turing Way_, while maintaining transparency of their work through open communication via Slack, newsletters, presentations and reports for the broader community.\nThese conversations were instrumental in adopting the current governance model, particularly, through the formalisation of different WGs in close collaboration with the research community manager.\n\nThese meetings in 2024 transitioned into a series of community calls, called Community Forums, hosted by project delivery team, now maintained by Steering Committee to discuss governance-related matters openly.\n```\n\n_Join us in building this community together!_\n"
  },
  {
    "path": "book/website/foreword/guiding-principles.md",
    "content": "(guiding-principles)=\n# Guiding Principles for _The Turing Way_\n\nAll activity and community members in *The Turing Way* should align with and uphold our guiding principles: inclusion, transparency, and empowerment.\nYou will also find useful background context on the philosophical underpinnings for _the Turing Way_ and it's Guiding Principles in [Embracing Digital Commons](#fw-embracing-digital-commons) and [Emergence as _The Turing Way’s_ Strategy](#fw-emergent-strategy).\n\n:::{important}\n:name:guiding-principles-summary\nEmpowerment\n: All community members are empowered to participate in the community and play an active role in decision-making processes.\n\nTransparency\n: Decisions, actions, and the processes that led to them should all be open to inspection and review.\n\nInclusion\n: We will not discriminate or block participation based on a person's background, and we will strive to involve a diversity of perspectives in all areas of the project.\n:::\n\n(guiding-principles-empowerment)=\n## Empowerment\n\nThe project is deliberately structured to encourage agency and create opportunities and pathways for people to make autonomous decisions about how and when to participate, as long as they align with our other values, [Code of Conduct](#ch-coc) and [Contributing Guidelines](#ch-contributing).\nWe aim to maximize the amount of agency that the community members hold and minimize the authority of the highest governance levels.\n\n(guiding-principles-transparency)=\n## Transparency\nWe commit to the approach \"As open as possible, as closed as necessary\".\nWe design our processes and activities to be open and transparent, and review as needed.\nMaking information transparent is necessary to allow the community to engage, particularly with project processes. \nFurthermore, a commitment to documenting decisions and outcomes ensures that those with authority remain accountable.\n\nThere are, of course, some instances where openness is not appropriate. \nIn order to make people feel safe and confident, or to comply with legal obligations, it might be necessary to protect information. \nFor example, the process for dealing with a Code of Conduct violation report is open and transparent to the community, but the details of any particular report may not be.\n\n(guiding-principles-inclusion)=\n## Inclusion\nWe are intentionally inclusive. \nWe don't only reject discrimination, we believe in inclusion by design.\nWe believe inclusion means actively pushing to involve a greater diversity of voices and backgrounds in _The Turing Way_.\nFurthermore, when we say diversity, we mean a broad range of characteristics that people may hold, and which may introduce barriers to participation. \nThis is formally laid out in our [accessibility policy](https://book.the-turing-way.org/community-handbook/accessibility/accessibility-policy/).\nWe recognize and value the benefits of a diverse community and believe a more welcoming and inclusive community will, beyond being a moral good, produce a better book.\n"
  },
  {
    "path": "book/website/foreword/navigate.md",
    "content": "(fw-navigating)=\n# Navigating _The Turing Way_\n\n_The Turing Way_ handbook is a collection of different guides on data science practices and additional sections to cover different aspects of the project and community approaches.\nEach section contains multiple chapters, and each chapter is divided into smaller, self-contained sub-chapters to allow you to navigate the book and its content easily at your own pace.\n\n## _The Turing Way_ Guides \n\nAll community-developed resources on research and data science practices are organised into five guides.\nThe book started with a guide on research reproducibility, that contains tools, methods and practices from computational aspects of data science.\nOther guides contain different socio-technical aspects that should be considered to make data science open, collaborative and ethical, hence, ultimately enhancing the reproducibility of a project.\n\n* {ref}`rr`\n* {ref}`pd`\n* {ref}`cm`\n* {ref}`cl`\n* {ref}`er`\n\n```{figure} ../../figures/theturingway-chapters.*\n---\nname: theturingway-chapters\nalt: >\n  _The Turing Way_ Guide to reproducible research and its structure illustrated to show a set of doors with linking pathways to more doors that represents how it is built on chapters and sub-chapters of the different areas of the guide. \n  There are three doors to represent chapters with each chapter door having 3 more doors linking to it to represent sub-chapters. \n  There is a small magnifying glass at the side with text saying review, edit and improve the existing resources.\n---\n_The Turing Way_ project illustration by Scriberia. Original version on Zenodo. http://doi.org/10.5281/zenodo.3695300.\n```\n\nThe decision to integrate different chapters into specific guides is made by community members through open discussions via GitHub issues and Slack.\nHowever, their positions within the book are simply for organisation and access purposes; the guide itself doesn't limit the scope of the chapters and hence can be edited and updated by anyone (including you!) at any time with relevant information.\n\n```{admonition} Reminder\n_The Turing Way_ is not meant to be read from beginning to end!\n```\n\n### Community Handbook\n\nAll community processes are captured in {ref}`ch` to provide workflows, guidelines, participatory methods, templates and resources used in various aspects of community management in _The Turing Way_.\n\n### Foreword and Afterword\n\nWe have also developed {ref}`fw` and {ref}`aw` to share contexts, backgrounds and supplementary resources from and about _The Turing Way_.\n\nChapters in the Community Handbook, Foreword and afterword are written by the previous project delivery team (now replaced by maintainers and Steering Committee) and community members involved in the different leadership, maintenance or community support roles. \n\n*Browse the different guides and sections that make up the book, or use the search box to search for whatever you would like to learn about first.*\n\n## Areas of Work and Scope\n\n_The Turing Way_ is continually evolving to meet the needs and interests of the community across the following areas of work:\n\n1. Engage diverse stakeholders in _The Turing Way_ through open, inclusive and collaborative efforts, **fostering a community** that collectively shapes research and scientific discourse in data science and AI.\n2. Co-create, maintain, and sustain an open-source, **community-driven handbook** on data science, providing tools, practices and real-world examples of **open and reproducible research**.\n3. Advocate for **responsible and ethical practices**, promoting transparency, fostering accountability and embedding human rights principles throughout the lifecycle of research, data science and AI projects. \n4. Champion best practices in **communication, collaboration, and project design** as fundamental pillars for making data science and AI accessible, comprehensible, and beneficial for all stakeholders.\n\n### Scope of _The Turing Way_\n\nThe scope of _The Turing Way_ can be broadly described across six categories, with practices and resources shared openly in the book:\n\n1. **_The Turing Way_ Book:** Disseminating best practices, examples, and recommendations openly in chapters covering reproducible research, communication, collaboration, project design, ethics, and community.\n2. **_The Turing Way_ Community:** Fostering a diverse and international community, encouraging contributions, building upon existing knowledge, and collaboratively advancing best practices in data science.\n3. **Open Leadership:** Promoting open leadership by providing community infrastructure, processes, and resources for individuals from diverse backgrounds and interests to lead and connect a decentralised network of actors and their efforts.\n4. **Domain Expertise:** Collaborating with representatives and experts who contextualise and share _The Turing Way_ resources in their respective domains.\n5. **Project Partnership:** Proactively partnering with organisations and projects aligned with our vision and mission, combining knowledge, expertise, and resources for the shared benefits of our communities.\n6. **Global Impact:** Extending the impact of _The Turing Way_ by conducting global outreach, engaging with different sectors, supporting the localisation of resources, advocating for policy changes and facilitating cross-community efforts\n\n**Get Involved:** If you have ideas and plans for _The Turing Way_, please reach out to _The Turing Way_ maintainers and Steering Committee by emailing [theturingway@gmail.com](mailto:theturingway@gmail.com). Your input is valuable to the ongoing development of the project.\n\n"
  },
  {
    "path": "book/website/index.md",
    "content": "(welcome)=\n# Welcome\n\n*Welcome to The Turing Way handbook to reproducible, ethical and collaborative data science.*\n\n_The Turing Way_ is an open science, open collaboration, and community-driven project.\nWe involve and support a diverse community of contributors to make data science accessible, comprehensible and effective for everyone.\nOur goal is to provide all the information that researchers, data scientists, software engineers, policymakers, and other practitioners in academia, industry, government and the public sector need to ensure that the projects they work on are easy to reproduce and reuse.\n\n```{admonition} Top Tip\n:class: tip\n_The Turing Way_ is not meant to be read from start to finish.\nStart with a concept, tool or method that you need now, in your current work.\nBrowse the different guides that make up the book, or use the search box to search for whatever you would like to learn about first.\n```\n\nAll stakeholders from any level of experience or domain expertise are encouraged to use _The Turing Way_ to understand their roles and responsibility of reproducibility in data science and research.\nYou can inspect our resources on [GitHub](https://github.com/the-turing-way/the-turing-way), contribute to the project as described in our [contribution guidelines](#ch-contributing) and re-use all materials ([see the License](https://github.com/the-turing-way/the-turing-way/blob/main/LICENSE.md)).\n\nIn the {ref}`Foreword Section<fw>` of this book, we provide meta-level information about _The Turing Way_, including guidance on how to use and navigate this project, how to cite the book and opportunities to get involved.\n\n```{figure} ../figures/theturingway-pathway.*\n---\nname: welcome-image\nalt: The Turing Way project is illustrated as a road or path with shops for different data science skills. People can go in and out with their shopping cart and pick and choose what they need.\n---\n_The Turing Way_ project illustration by Scriberia. Zenodo. [http://doi.org/10.5281/zenodo.3332807](http://doi.org/10.5281/zenodo.3332807)\n```\n\nThe book is collaboratively written and built in the open from the start.\nYou can explore different opportunities to get involved on the [start page](https://the-turing-way.start.page/).\nJoin [our Slack Workspace](https://join.slack.com/t/theturingway/shared_invite/zt-2v7euwuo7-BYstHdKuTNd1ce0puDtBxA) to connect and discuss your ideas and [subscribe to our newsletter](https://buttondown.email/turingway) to follow updates from our community.\n\n(welcome-community)=\n## Our Community\n\n_The Turing Way_ community is dedicated to making collaborative, reusable and transparent research \"too easy not to do\".\nThat means investing in the socio-technical skills required to work in a team, to build something more significant than any individual could deliver alone.\n\n_The Turing Way_ is:\n\n* a book\n* a community\n* a global collaboration\n\nWe hope you find the content in the book helpful.\nEverything here is available for free under a [CC-BY licence](https://github.com/the-turing-way/the-turing-way/blob/main/LICENSE.md).\nPlease use and re-use whatever you need, for any purpose.\n\n_The Turing Way_ receives support and funding from [The Alan Turing Institute](https://www.turing.ac.uk/), however, the project is designed to be a global collaboration.\nWe have contributions from across the UK, India, Mexico, Australia, the USA, some African countries, and many European countries.\nChapters have been written, reviewed and curated by members of research institutes and universities, government departments, and industry.\nWe are committed to creating a space where people with diverse expertise and experiences can share their knowledge with others, together supporting each other in using data science to improve the world.\n\n```{admonition} Translation\n:class: tip\nCall for translators! We’re looking for contributors to help translate this space for everyone! Read more about our translation workflow and how you can contribute to it in the {ref}`translation chapter<ch-translation>`.\n```\n\nWe value the participation of every member of our community and want to ensure that every contributor has an enjoyable and fulfilling experience.\nAccordingly, everyone who participates in _The Turing Way_ project is expected to show respect and courtesy to other community members at all times.\n\nLearn more about our community members and community-level approaches in the {ref}`aw` of this book. \n\n```{figure} ../_static/videos/contributors.mp4\n---\nname: contributors-table-video\nalt: Video showing screen capture of contributors table, smiling faces and emojis representing the types of contributions in a table.\n---\n```\n\nTo make this project truly accessible and useful for everyone, we invite you to contribute your skills and bring your perspectives into this project.\n\nTo join this community, please read our [contribution guidelines](#ch-contributing) with ways to [get in touch](https://github.com/the-turing-way/the-turing-way#get-in-touch).\nAll contributions must abide by our [code of conduct](https://github.com/the-turing-way/the-turing-way/blob/main/CODE_OF_CONDUCT.md).\nMore information about the community, participation process and project management is available in the {ref}`ch`.\n\nWe look forward to expanding and building _The Turing Way_ together.\n"
  },
  {
    "path": "book/website/myst.yml",
    "content": "version: 1\nproject:\n  title: The Turing Way\n  authors:\n    - name: The Turing Way Community\n  copyright: 2019-2025\n  exclude:\n    - LICENSE.md\n  github: the-turing-way/the-turing-way\n  license:\n    code: MIT\n    content: CC-BY-4.0\n  plugins:\n    - https://github.com/the-turing-way/myst-curation/releases/download/v0.0.2/curation.mjs\n    - plugins/profile.mjs\n  error_rules:\n    - rule: link-resolves\n      severity: ignore\n      key:\n        - '{http,https}://**'\n  bibliography:\n    - references.bib\n  references:\n    myst-spec: https://mystmd.org/spec\n    myst-guide: https://mystmd.org/guide/\n  toc:\n    - file: index.md\n    - file: foreword/foreword.md\n      children:\n        - file: foreword/background.md\n          title: Background\n        - file: foreword/navigate.md\n          title: Navigating the Handbook\n        - file: foreword/guiding-principles.md\n          title: Guiding Principles\n        - file: foreword/emergent-strategy.md\n          title: Emergence as The Turing Way Strategy\n        - file: foreword/embracing-digital-commons.md\n          title: Embracing the Principles of Digital Commons\n        - file: foreword/community.md\n          title: Community and Community Roles\n        - file: foreword/governance.md\n          title: Governance\n          children:\n            - file: foreword/governance/governance-roles.md\n              title: Governance Roles\n            - file: foreword/governance/ways-of-working.md\n              title: Ways of Working\n        - file: foreword/cite.md\n          title: How to Cite\n        - file: foreword/faqs.md\n          title: Frequently Asked Questions\n    # ===== Pathways ===============================================================\n    - title: Pathways\n      file: pathways/pathways.md\n      children:\n        - file: pathways/pathways-data-science-without-borders.md\n        - file: pathways/pathways-data-stewards.md\n        - file: pathways/pathways-early-career-researchers.md\n        - file: pathways/pathways-project-leaders.md\n        - file: pathways/pathways-community-management-concepts.md\n        - file: pathways/pathways-community-management-operations.md\n        - file: pathways/pathways-research-software-engineers.md\n        - file: pathways/pathways-software-citation.md\n    # ===== Guide for Reproducible Research ========================================\n    - file: reproducible-research/reproducible-research.md\n      children:\n        - file: reproducible-research/overview.md\n          title: Overview\n          children:\n            - file: reproducible-research/overview/overview-definitions.md\n              title: Definitions\n            - file: reproducible-research/overview/overview-benefit.md\n              title: Added Advantages\n            - file: reproducible-research/overview/overview-barriers.md\n              title: Barriers\n            - file: reproducible-research/overview/overview-resources.md\n              title: Resources\n        - file: reproducible-research/open.md\n          title: Open Research\n          children:\n            - file: reproducible-research/open/open-data.md\n              title: Open Data\n            - file: reproducible-research/open/open-source.md\n              title: Open Source Software\n            - file: reproducible-research/open/open-hardware.md\n              title: Open Hardware\n            - file: reproducible-research/open/open-access.md\n              title: Open Access\n            - file: reproducible-research/open/open-notebooks.md\n              title: Open Notebooks\n            - file: reproducible-research/open/open-scholarship.md\n              title: Open Scholarship\n            - file: reproducible-research/open/open-checklist.md\n              title: Checklist\n            - file: reproducible-research/open/open-resources.md\n              title: Resources\n        - file: reproducible-research/vcs.md\n          title: Version Control\n          children:\n            - file: reproducible-research/vcs/vcs-workflow.md\n              title: Version Control Workflow\n            - file: reproducible-research/vcs/vcs-workflow-branches.md\n              title: Version Control and Branches\n            - file: reproducible-research/vcs/vcs-git-general.md\n              title: The Git Version Control Software\n            - file: reproducible-research/vcs/vcs-git-in-research.md\n              title: Git for Research Projects\n            - file: reproducible-research/vcs/vcs-git.md\n              title: Git Using the Command Line\n              children:\n                - file: reproducible-research/vcs/vcs-git-commit.md\n                  title: Git Commit Command\n                - file: reproducible-research/vcs/vcs-git-compare.md\n                  title: Retrieving and Comparing Versions\n                - file: reproducible-research/vcs/vcs-git-branches.md\n                  title: Git Branches\n                - file: reproducible-research/vcs/vcs-git-merge.md\n                  title: Merging Branches in Git\n                - file: reproducible-research/vcs/vcs-git-interactive.md\n                  title: Interactive, Visual Git\n                - file: reproducible-research/vcs/vcs-github.md\n                  title: Git Commands to Work on GitHub\n                - file: reproducible-research/vcs/vcs-git-summary.md\n                  title: Summary Table of Git Commands\n            - file: reproducible-research/vcs/vcs-data.md\n              title: Version Control for Data\n            - file: reproducible-research/vcs/vcs-personal-stories.md\n              title: Personal Stories\n            - file: reproducible-research/vcs/vcs-checklist.md\n              title: Checklist\n            - file: reproducible-research/vcs/vcs-resources.md\n              title: Resources\n        - file: reproducible-research/licensing.md\n          title: Licensing\n          children:\n            - file: reproducible-research/licensing/licensing-ip.md\n              title: Intellectual Property\n            - file: reproducible-research/licensing/licensing-floss.md\n              title: Free/Libre and Open Source Software\n            - file: reproducible-research/licensing/licensing-compatibility.md\n              title: License Compatibility\n            - file: reproducible-research/licensing/licensing-ethical-source.md\n              title: Ethics-informed Licensing\n            - file: reproducible-research/licensing/licensing-documentation.md\n              title: Licensing Documentation\n            - file: reproducible-research/licensing/licensing-data.md\n              title: Data Licenses\n            - file: reproducible-research/licensing/licensing-hardware.md\n              title: Hardware Licenses\n            - file: reproducible-research/licensing/licensing-ml.md\n              title: Machine Learning Model Licenses\n              children:\n                - file: reproducible-research/licensing/licensing-ml-case-studies.md\n                  title: 'Case Studies: Choosing an ML License'\n            - file: reproducible-research/licensing/licensing-checklist.md\n              title: Checklist\n        - file: reproducible-research/rdm.md\n          title: Research Data Management\n          children:\n            - file: reproducible-research/rdm/rdm-data.md\n              title: Research Data\n            - file: reproducible-research/rdm/rdm-find.md\n              title: Finding Data\n            - file: reproducible-research/rdm/rdm-dmp.md\n              title: Data Management Plan\n            - file: reproducible-research/rdm/rdm-smp.md\n              title: Software Management Plan\n            - file: reproducible-research/rdm/rdm-fair.md\n              title: The FAIR Principles and Practices\n            - file: reproducible-research/rdm/rdm-care.md\n              title: The CARE Principles\n            - file: reproducible-research/rdm/rdm-personal.md\n              title: Personal data management\n            - file: reproducible-research/rdm/rdm-storage.md\n              title: Data Storage and Organisation\n            - file: reproducible-research/rdm/rdm-spreadsheets.md\n              title: Data Organisation in Spreadsheets\n            - file: reproducible-research/rdm/rdm-metadata.md\n              title: Documentation and Metadata\n            - file: reproducible-research/rdm/rdm-pid.md\n              title: Persistent Identifiers (PIDs)\n            - file: reproducible-research/rdm/rdm-methods.md\n              title: Methods and Protocols\n            - file: reproducible-research/rdm/rdm-elns.md\n              title: Electronic Lab Notebooks (ELNs)\n            - file: reproducible-research/rdm/rdm-cleaning.md\n              title: Data Cleaning\n            - file: reproducible-research/rdm/rdm-data-curation.md\n              title: Data Curation\n            - file: reproducible-research/rdm/rdm-visualisation.md\n              title: Data Visualisation\n            - file: reproducible-research/rdm/rdm-repository.md\n              title: Data Repositories\n            - file: reproducible-research/rdm/rdm-sharing.md\n              title: Sharing and Archiving Data\n            - file: reproducible-research/rdm/rdm-article.md\n              title: Data Article\n            - file: reproducible-research/rdm/rdm-checklist.md\n              title: Checklist\n            - file: reproducible-research/rdm/rdm-stories.md\n              title: Personal Impact Stories\n            - file: reproducible-research/rdm/rdm-resources.md\n              title: Resources\n        - file: reproducible-research/renv.md\n          title: Reproducible Environments\n          children:\n            - file: reproducible-research/renv/renv-options.md\n              title: Capturing Computational Environments\n            - file: reproducible-research/renv/renv-package.md\n              title: Package Management Systems\n            - file: reproducible-research/renv/renv-yaml.md\n              title: YAML\n            - file: reproducible-research/renv/renv-virtualmachine.md\n              title: Virtual Machines\n            - file: reproducible-research/renv/renv-containers.md\n              title: Containers\n            - file: reproducible-research/renv/renv-resources.md\n              title: Resources and Checklist\n        - file: reproducible-research/binderhub.md\n          title: BinderHub\n          children:\n            - file: reproducible-research/binderhub/binderhub-introduction.md\n              title: Introduction to BinderHub\n            - file: reproducible-research/binderhub/binderhub-compute.md\n              title: Compute Resources\n            - file: reproducible-research/binderhub/binderhub-build.md\n              title: Build Your Own BinderHub\n            - file: reproducible-research/binderhub/binderhub-resources.md\n              title: Resources for BinderHub\n        - file: reproducible-research/code-documentation.md\n          title: Code Documentation\n          children:\n            - file: >-\n                reproducible-research/code-documentation/code-documentation-code.md\n              title: Documenting Code\n            - file: >-\n                reproducible-research/code-documentation/code-documentation-project.md\n              title: Project Documentation\n            - file: >-\n                reproducible-research/code-documentation/code-documentation-resources.md\n              title: Other Resources\n        - file: reproducible-research/code-quality.md\n          title: Code Quality\n          children:\n            - file: reproducible-research/code-quality/code-quality-style.md\n              title: Code Style and Formatting\n            - file: reproducible-research/code-quality/code-quality-robust.md\n              title: Writing Robust Code\n            - file: reproducible-research/code-quality/code-quality-naming.md\n              title: File and Variable Naming\n            - file: reproducible-research/code-quality/code-quality-readability.md\n              title: Code Readability\n            - file: reproducible-research/code-quality/code-quality-style-formatting.md\n              title: Style and Formatting Tools\n            - file: reproducible-research/code-quality/code-quality-resources.md\n              title: Checklist and Resources\n        - file: reproducible-research/testing.md\n          title: Code Testing\n          children:\n            - file: reproducible-research/testing/testing-guidance.md\n              title: General Guidance for Testing\n            - file: reproducible-research/testing/testing-overview.md\n              title: Overview of Testing Types\n            - file: reproducible-research/testing/testing-smoketest.md\n              title: Smoke Testing\n            - file: reproducible-research/testing/testing-unittest.md\n              title: Unit Testing\n            - file: reproducible-research/testing/testing-integrationtest.md\n              title: Integration Testing\n            - file: reproducible-research/testing/testing-systemtest.md\n              title: System Testing\n            - file: reproducible-research/testing/testing-acceptance-regression.md\n              title: Acceptance and Regression Testing\n            - file: reproducible-research/testing/testing-runtime.md\n              title: Runtime Testing\n            - file: reproducible-research/testing/testing-driven-development.md\n              title: Test Driven Development\n            - file: reproducible-research/testing/testing-exceptions.md\n              title: Challenges and Exceptional Cases\n            - file: reproducible-research/testing/testing-checklist.md\n              title: Checklist for Code Testing\n            - file: reproducible-research/testing/testing-resources.md\n              title: Further Recommendations\n        - file: reproducible-research/reviewing.md\n          title: Code Reviewing Process\n          children:\n            - file: reproducible-research/reviewing/reviewing-motivation.md\n              title: Motivation for code reviewing\n            - file: reproducible-research/reviewing/reviewing-recommend.md\n              title: Recommendations for code reviewing\n            - file: reproducible-research/reviewing/reviewing-workflow.md\n              title: Code review workflow\n            - file: reproducible-research/reviewing/reviewing-checklist.md\n              title: Checklist for code reviewing\n            - file: reproducible-research/reviewing/reviewing-resources.md\n              title: Resources for code reviewing\n        - file: reproducible-research/code-reuse.md\n          title: Reusable Code\n          children:\n            - file: reproducible-research/code-reuse/code-reuse-overview.md\n              title: Overview of Code Reuse\n            - file: reproducible-research/code-reuse/code-reuse-details.md\n              title: Detailed Recommendations for Code Reuse\n            - file: reproducible-research/code-reuse/code-reuse-packages.md\n              title: Reusing code by creating software packages\n        - file: reproducible-research/ci.md\n          title: Continuous Integration (CI)\n          children:\n            - file: reproducible-research/ci/ci-options.md\n              title: Intro to Continuous integration (CI)\n            - file: reproducible-research/ci/ci-github-actions.md\n              title: Getting started with GitHub actions\n            - file: reproducible-research/ci/ci-building-gh-actions.md\n              title: Building a Block of a GitHub actions\n            - file: reproducible-research/ci/ci-practices.md\n              title: Best practices and recommendations\n            - file: reproducible-research/ci/ci-resources.md\n              title: Checklist and Resources\n        - file: reproducible-research/make.md\n          title: Reproducible Research with Make\n          children:\n            - file: reproducible-research/make/make-examples.md\n              title: Learn \"Make\" by examples\n            - file: reproducible-research/make/make-debugging.md\n              title: Debugging Makefiles\n            - file: reproducible-research/make/make-casestudy.md\n              title: Case Study of a Reproducible Paper\n            - file: reproducible-research/make/make-results.md\n              title: Including numerical results and tables\n            - file: reproducible-research/make/make-resources.md\n              title: Resources for \"Make\"\n            - file: reproducible-research/make/make-appendix.md\n              title: Appendix\n        - file: reproducible-research/compendia.md\n          title: Research Compendia\n        - file: reproducible-research/risk-assess.md\n          title: Risk Assessment\n          children:\n            - file: reproducible-research/risk-assess/risk-assess-impact.md\n              title: Complexity and Impact of Risk Assessment\n            - file: reproducible-research/risk-assess/risk-assess-resources.md\n              title: Summary of Risk Assessment\n        - file: reproducible-research/case-studies.md\n          title: Case Studies\n          children:\n            - file: reproducible-research/case-studies/case-study-statistical.md\n              title: A Statistical Methods Manuscript\n    # ===== Guide for Project Design ========================================\n    - title: Guide for Project Design\n      file: project-design/project-design.md\n      children:\n        - title: Overview of Project Design\n          file: project-design/pd-overview.md\n          children:\n            - title: Planning for Project Design\n              file: project-design/pd-overview/pd-overview-planning.md\n            - title: Collaborative Project Documentation\n              file: project-design/pd-overview/pd-overview-repro.md\n            - title: Reproducibility Methods\n              file: project-design/pd-overview/pd-overview-methods.md\n            - title: Version Control and Documentation\n              file: project-design/pd-overview/pd-overview-version.md\n            - title: Sharing Your Research Work\n              file: project-design/pd-overview/pd-overview-sharing.md\n        - title: Project Design Checklist\n          file: project-design/pd-overview/pd-checklist.md\n        - title: Project Management Methodologies\n          file: project-design/project-management-methodologies/overview.md\n        - title: Creating Project Repositories\n          file: project-design/pd-overview/project-repo.md\n          children:\n            - title: README File\n              file: project-design/pd-overview/project-repo/project-repo-readme.md\n            - title: Roadmapping\n              file: project-design/pd-overview/project-repo/project-repo-roadmapping.md\n            - title: Contributors and Communication Pathways\n              file: project-design/pd-overview/project-repo/project-repo-contributors.md\n            - title: Participation Guidelines\n              file: project-design/pd-overview/project-repo/project-repo-participation.md\n            - title: Advanced Structure for Data Analysis\n              file: project-design/pd-overview/project-repo/project-repo-advanced.md\n            - title: Further Recommendations\n              file: project-design/pd-overview/project-repo/project-repo-resources.md\n        - title: Stakeholders\n          file: project-design/stakeholders.md\n          children:\n            - file: project-design/stakeholders/persona.md\n              title: Personas and Pathways\n              children:\n                - file: project-design/stakeholders/persona/persona-creation.md\n                  title: Persona Creation Tool\n                - file: project-design/stakeholders/persona/persona-contributors.md\n                  title: Contributor Pathways\n        - title: Information Management\n          file: project-design/info-management.md\n          children:\n            - file: project-design/info-management/filenaming.md\n              title: File Naming Convention\n            - file: project-design/info-management/code-styling.md\n              title: Code Styling\n              children:\n        - title: Data Security and Governance\n          file: project-design/data-security.md\n          children:\n            - file: project-design/data-security/sdp.md\n              title: Sensitive Data Projects\n              children:\n                - file: project-design/data-security/sdp/types.md\n                  title: Types of Sensitive Data\n                - file: project-design/data-security/sdp/personal.md\n                  title: Personal Data\n                - file: project-design/data-security/sdp/confidential.md\n                  title: Confidential Data\n                - file: project-design/data-security/sdp/biological.md\n                  title: Biological Data\n                - file: project-design/data-security/sdp/metadata.md\n                  title: Metadata\n                - file: project-design/data-security/sdp/combined.md\n                  title: Combined Datasets\n            - file: project-design/data-security/sdpm.md\n              title: Managing Sensitive Data Projects\n              children:\n                - file: project-design/data-security/sdpm/informed.md\n                  title: Informed consent\n                - file: project-design/data-security/sdpm/data-privacy-strategies.md\n                  title: Data Privacy Strategies\n                - file: project-design/data-security/sdpm/sharing-sensitive-data.md\n                  title: Sharing Sensitive Data\n                - file: project-design/data-security/sdpm/resources.md\n                  title: Resources\n            - file: project-design/data-security/sdpw.md\n              title: Working on Sensitive Data Projects\n              children:\n                - file: project-design/sdpw/pd-sdp-trew.md\n                  title: Working with Trusted Research Environments\n                - file: project-design/sdpw/pd-sdp-private-learning.md\n                  title: Privacy Preserving Machine Learning\n                - file: project-design/sdpw/pd-sdp-sensitive-files.md\n                  title: Keeping Sensitive Files Secure\n                - file: project-design/sdpw/pd-sdp-sensitive-code.md\n                  title: Sharing Your Jupyter Notebook\n            - file: project-design/data-security/data-governance.md\n              title: Data Governance\n              children:\n                - file: project-design/data-security/data-governance/data-gov-ml.md\n                  title: Data Governance for the Machine Learning Pipeline\n                - file: project-design/data-security/data-governance/bigcode_casestudy.md\n                  title: BigCode Data Governance Case Study\n        - file: project-design/missing-data.md\n          title: Missing Data Handling\n          children:\n            - file: project-design/missing-data/missing-data-structures.md\n              title: Missing Data Structures\n            - file: >-\n                project-design/missing-data/missing-data-visualising-missingness.md\n              title: Visualising Missingness\n            - file: project-design/missing-data/missing-data-methods.md\n              title: Missing Data Handling Methods\n            - file: >-\n                project-design/missing-data/missing-data-structured-missingness.md\n              title: Structured Missingness\n            - file: project-design/missing-data/missing-data-checklist-resources.md\n              title: Checklist and Resources\n        - file: project-design/risks-of-bias.md\n          title: Risks of Bias in Research\n          children:\n            - file: project-design/risks-of-bias/identifying-risks-of-bias.md\n              title: Identifying Risks of Bias\n            - file: project-design/risks-of-bias/confounding-variables.md\n              title: Confounding Variables\n            - file: project-design/risks-of-bias/validation-generalisability.md\n              title: Validation and Generalisability\n            - file: project-design/risks-of-bias/discrimination-bias.md\n              title: Discrimination and Bias\n    # ===== Guide for Communication ========================================\n    - file: communication/communication.md\n      children:\n        - file: communication/comms-overview.md\n          title: Overview of Guide for Communication\n          children:\n            - file: communication/comms-overview/comms-overview-principles.md\n              title: Principles of Communicating with Wider Audiences\n            - file: communication/comms-overview/comms-overview-accessibly.md\n              title: Communicating Accessibly\n            - file: communication/comms-overview/comms-overview-resources.md\n              title: Resources and Recommendations\n        - file: communication/open.md\n          title: Open Scholarship\n          children:\n            - file: communication/open/education.md\n              title: Open Education\n            - file: communication/open/curriculum-development.md\n              title: Lessons and Curriculum Development\n            - file: communication/open/embedding-ds.md\n              title: Embedding Data Science Across Disciplines\n        - file: communication/blogs.md\n          title: Blogs for Research Communication\n          children:\n            - file: communication/blogs/blogs-webpage.md\n              title: Building a Webpage for Blogs\n            - file: communication/blogs/blogs-personal-stories.md\n              title: Personal stories - Blogs\n        - file: communication/personal.md\n          title: Communication of Personal Skills and Research\n          children:\n            - file: communication/personal/personal-cv.md\n              title: Narrative CV\n            - file: communication/personal/personal-website.md\n              title: Personal Website\n        - file: communication/lay-summaries.md\n          title: Lay Summaries\n          children:\n            - file: communication/lay-summaries/lay-summaries-personal-stories.md\n              title: Personal Stories - Lay summaries\n        - file: communication/podcasts.md\n          title: Podcasts for Research Communication\n          children:\n            - file: communication/podcasts/podcasts-personal-stories.md\n              title: Personal Stories - Podcasts\n        - file: communication/presentations.md\n          title: Presenting Posters and Conference Talks\n          children:\n            - file: communication/presentations/presentations-remote.md\n              title: Presenting at Remote Events\n            - file: communication/presentations/presentations-personal-stories.md\n              title: Personal Stories - Presentations\n        - file: communication/social-media.md\n          title: Social Media for Research Communications\n          children:\n            - file: communication/social-media/social-media-twitter-tips.md\n              title: Tips for starting with X\n            - file: communication/social-media/social-media-twitter-multiple.md\n              title: Managing multiple X accounts\n        - file: communication/research-objects.md\n          title: Research Objects in Action\n          children:\n            - file: communication/research-objects/ro-concepts.md\n              title: Concepts\n            - file: communication/research-objects/ro-implementation.md\n              title: Implementation\n        - file: communication/citable.md\n          title: Making Research Objects Citable\n          children:\n            - file: communication/citable/citable-steps.md\n              title: Steps for Making Research Objects Citable\n            - file: communication/citable/citable-cite.md\n              title: Citing your own Research Objects\n            - file: communication/citable/citable-otherscite.md\n              title: Citing other peoples Research Objects\n            - file: communication/citable/citable-cff.md\n              title: Software citation with CITATION.cff\n            - file: communication/citable/citable-cffinit.md\n              title: Create a CITATION.cff using CFFinit\n            - file: communication/citable/citable-linking.md\n              title: Linking Research Objects\n            - file: communication/citable/citable-metadata.md\n              title: Connection Metadata\n            - file: communication/citable/citable-orcid.md\n              title: ORCID to Collect your Research Objects\n            - file: communication/citable/citable-versioning.md\n              title: Managing Versions Through PIDs\n            - file: communication/citable/citable-resources.md\n              title: Checklists and Resources\n        - file: communication/dif-articles.md\n          title: Publishing Different Article Types\n          children:\n            - file: communication/dif-articles/data.md\n              title: Data Papers\n            - file: communication/dif-articles/methods.md\n              title: Methods Papers\n            - file: communication/dif-articles/micro.md\n              title: Micropublishing\n            - file: communication/dif-articles/reg.md\n              title: Registered Reports\n            - file: communication/dif-articles/software.md\n              title: Software Papers\n        - file: communication/os-comms.md\n          title: Communications in Open Source Projects\n          children:\n            - file: communication/os-comms/os-comms-issue-tracking.md\n              title: Issue Tracking\n            - file: communication/os-comms/os-comms-channels.md\n              title: Communication Channels\n        - file: communication/aa.md\n          title: Authorship and Contributions on Academic Articles\n          children:\n            - file: communication/aa/aa-overview.md\n              title: Overview of Academic Authorship\n            - file: communication/aa/aa-misconduct.md\n              title: Types of Authorship Misconduct\n            - file: communication/aa/aa-traditions.md\n              title: Discipline Specific Authorship Traditions\n            - file: communication/aa/aa-equitable.md\n              title: Large and Equitable Authorships\n            - file: communication/aa/aa-tips.md\n              title: Tips on How to Get Authorship Right\n            - file: communication/aa/aa-stories-interdisciplinary.md\n              title: Personal Stories - Authorship on Interdisciplinary Projects\n            - file: communication/aa/aa-stories-community.md\n              title: Personal Stories - Large Collaborative Research Community\n            - file: communication/aa/aa-resources.md\n              title: Resources\n        - file: communication/peer-review.md\n          title: Peer Review\n          children:\n            - file: communication/peer-review/peer-review-overview.md\n              title: Peer Review\n            - file: communication/peer-review/peer-review-open.md\n              title: Open Peer Review\n            - file: communication/peer-review/peer-review-guidance.md\n              title: Guidance on Peer Review for a Journal\n            - file: communication/peer-review/peer-review-code.md\n              title: Guidance on Code Review\n            - file: communication/peer-review/peer-review-resources.md\n              title: Resources\n        - file: communication/binder.md\n          title: Binder\n          children:\n            - file: communication/binder/zero-to-binder.md\n              title: Zero-to-Binder\n    # ===== Guide for Collaboration ========================================\n    - file: collaboration/collaboration.md\n      children:\n        - file: collaboration/meetings-events-co-working.md\n          title: Meetings, Events, & Co-working\n          children:\n            - file: collaboration/meetings-events-co-working/organising-coding-cafe.md\n              title: Organising Coding Cafes\n            - file: collaboration/meetings-events-co-working/chairing.md\n              title: Chairing Events\n            - file: collaboration/meetings-events-co-working/event-tools.md\n              title: Tools for Facilitating Collaboration\n            - file: collaboration/meetings-events-co-working/hybrid-collab.md\n              title: Hybrid Collaboration\n              children:\n                - file: collaboration/meetings-events-co-working/hybrid-collab/hybrid-collab-challenges.md\n                  title: Challenges faced during Hybrid Collaboration\n                - file: collaboration/meetings-events-co-working/hybrid-collab/hybrid-collab-guidelines.md\n                  title: Guidelines for Hybrid Collaboration\n                - file: collaboration/meetings-events-co-working/hybrid-collab/hybrid-collab-resources.md\n                  title: Resources\n            - file: collaboration/meetings-events-co-working/remote-collab.md\n              title: Remote Collaboration\n              children:\n                - file: collaboration/meetings-events-co-working/remote-collab/remote-collab-guidelines.md\n                  title: Guidelines for Remote Collaboration\n                - file: collaboration/meetings-events-co-working/remote-collab/remote-collab-prosandcons.md\n                  title: Pros and Cons\n                - file: collaboration/meetings-events-co-working/remote-collab/organising-remote-meetings.md\n                  title: Organising Remote Meetings\n                - file: collaboration/meetings-events-co-working/remote-collab/event-participation.md\n                  title: Participating in Remote Events\n                - file: collaboration/meetings-events-co-working/remote-collab/coworking.md\n                  title: Organising Online Coworking Calls\n                - file: collaboration/meetings-events-co-working/remote-collab/informal-chats.md\n                  title: Informal Coffee Chats\n                - file: collaboration/meetings-events-co-working/remote-collab/remote-collab-team.md\n                  title: Managing Distributed Teams\n                - file: collaboration/meetings-events-co-working/remote-collab/remote-collab-useful-resources.md\n                  title: Useful Resources\n            - file: collaboration/meetings-events-co-working/organising-conference.md\n              title: Organising Conferences\n              children:\n                - file: collaboration/meetings-events-co-working/organising-conference/reg-forms.md\n                  title: Registration Forms\n                - file: collaboration/meetings-events-co-working/organising-conference/reg-form-template.md\n                  title: Template for Registration Form\n            - file: collaboration/meetings-events-co-working/ppie-events.md\n              title: Hosting Events with Public Contributors\n              children:\n                - file: collaboration/meetings-events-co-working/ppie-events/ppie-events-planning.md\n                  title: Planning your PPIE Event\n                - file: collaboration/meetings-events-co-working/ppie-events/ppie-events-location.md\n                  title: Location and Venue Planning\n                - file: collaboration/meetings-events-co-working/ppie-events/ppie-events-schedules.md\n                  title: Scheduling and Agenda Considerations\n                - file: collaboration/meetings-events-co-working/ppie-events/ppie-events-comms.md\n                  title: Communication Strategy and Planning\n                - file: collaboration/meetings-events-co-working/ppie-events/ppie-events-socials.md\n                  title: Inclusive Social and Networking\n                - file: collaboration/meetings-events-co-working/ppie-events/ppie-events-tech.md\n                  title: Technology Considerations\n                - file: collaboration/meetings-events-co-working/ppie-events/ppie-events-resources.md\n                  title: Additional Resources\n        - file: collaboration/github-novice.md\n          title: Getting Started With GitHub\n          children:\n            - file: collaboration/github-novice/github-novice-motivation.md\n              title: Motivation for Using GitHub\n            - file: collaboration/github-novice/github-novice-firststeps.md\n              title: First steps on GitHub\n            - file: collaboration/github-novice/github-novice-features.md\n              title: Using more GitHub features\n            - file: collaboration/github-novice/github-novice-advanced.md\n              title: Advanced GitHub features\n        - file: collaboration/maintain-review.md\n          title: Maintainers and Reviewers on GitHub\n          children:\n            - file: collaboration/maintain-review/maintain-review-maintenance.md\n              title: Project Maintenance\n            - file: collaboration/maintain-review/maintain-review-permissions.md\n              title: Ownership and Permissions\n            - file: collaboration/maintain-review/maintain-review-review.md\n              title: Reviewing Contributions\n            - file: collaboration/maintain-review/maintain-review-merge.md\n              title: Merging Contributions\n            - file: collaboration/maintain-review/maintain-review-resources.md\n              title: Resources\n        - file: collaboration/stakeholder-engagement.md\n          title: Facilitating Stakeholder Engagement\n        - title: Managing a New Community and Team\n          file: collaboration/new-community.md\n          children:\n            - file: collaboration/new-community/new-community-guide.md\n              title: Guide to Planning a Community\n            - file: collaboration/new-community/new-community-techissues.md\n              title: Addressing Technical Issues\n            - file: collaboration/new-community/new-community-differences.md\n              title: Valuing Diversity and Differences\n            - file: collaboration/new-community/new-community-teamwork.md\n              title: Teamwork\n        - file: collaboration/academic-industry.md\n          title: Academic-Industry Collaborations\n          children:\n            - file: collaboration/academic-industry/academic-industry-establish.md\n              title: Establishing an Academic-Industry Collaboration\n            - file: collaboration/academic-industry/academic-industry-community.md\n              title: Community Building in an Academic-Industry Collaboration\n            - file: >-\n                collaboration/academic-industry/intro-case-studies-and-best-practices-in-academic-industry-collaboration.md\n              title: >-\n                Case Studies and Best Practices in Academic-Industry\n                Collaboration\n              children:\n                - file: collaboration/academic-industry/case-study-library.md\n                  title: Case Study Library\n                  children:\n                    - file: >-\n                        collaboration/academic-industry/case-studies/turing-roche-case-study.md\n                      title: Turing-Roche Case Study\n                    - file: >-\n                        collaboration/academic-industry/case-studies/practitioners-hub-case-study.md\n                      title: Practitioner's Hub Case Study\n                    - file: >-\n                        collaboration/academic-industry/case-studies/BridgeAI_IndependentScientificAdvice.md\n                      title: BridgeAI - Independent Scientific Advice\n                - file: >-\n                    collaboration/academic-industry/online-resources-best-practices.md\n                  title: Online Resources\n        - file: collaboration/ambassador-schemes.md\n          title: Ambassador Schemes\n          children:\n            - file: collaboration/ambassador-schemes/ambassador-schemes-establish.md\n              title: Establishing and Running an Ambassador Scheme\n            - file: >-\n                collaboration/ambassador-schemes/ambassador-schemes-personal-story.md\n              title: Turing-Roche Community Scholar Scheme Personal Story\n        - file: collaboration/team-manual.md\n          title: Team Manual\n          children:\n            - file: collaboration/team-manual/team-manual-on-off-boarding.md\n              title: On and Offboarding Team Members\n        - file: collaboration/leadership.md\n          title: Open Leadership in Data Science\n          children:\n            - file: collaboration/leadership/leadership-features.md\n              title: Important Features of Leadership\n            - file: collaboration/leadership/leadership-building.md\n              title: Building Healthy Leadership Skills\n            - file: collaboration/leadership/leadership-opportunities.md\n              title: Creating Leadership Opportunities\n            - file: collaboration/leadership/leadership-story-hackathon.md\n              title: Personal Story from Running a Hackathon\n            - file: collaboration/leadership/leadership-story-data-librarian.md\n              title: Personal Story of Leadership by a Data Librarian\n        - file: collaboration/research-infrastructure-roles.md\n          title: Research Infrastructure Roles\n          children:\n            - file: collaboration/research-infrastructure-roles/community-manager.md\n              title: Research Community Managers Overview\n            - file: collaboration/research-infrastructure-roles/research-community-manager-personal-story-1.md\n              title: Research Community Manager Personal Story 1\n            - file: collaboration/research-infrastructure-roles/data-steward.md\n              title: Data Stewards Overview\n            - file: >-\n                collaboration/research-infrastructure-roles/data-steward-personal-story.md\n              title: Data Steward Personal Story\n            - file: collaboration/research-infrastructure-roles/data-wrangler.md\n              title: Data Wrangler Overview\n            - file: collaboration/research-infrastructure-roles/rse.md\n              title: Research Software Engineers Overview\n            - file: >-\n                collaboration/research-infrastructure-roles/rse-personal-story.md\n              title: Research Software Engineering Personal Story\n            - file: collaboration/research-infrastructure-roles/ram.md\n              title: Research Application Manager Overview\n            - file: >-\n                collaboration/research-infrastructure-roles/research-infrastructure-developer.md\n              title: Research Infrastructure Developer Overview\n        - file: collaboration/shared-ownership.md\n          title: Shared Ownership in Open Source Projects\n          children:\n            - file: collaboration/shared-ownership/shared-ownership-projects.md\n              title: Project Ownership\n            - file: collaboration/shared-ownership/shared-ownership-models.md\n              title: Shared Ownership Models\n            - file: collaboration/shared-ownership/shared-ownership-challenges.md\n              title: Challenges with Applying Ownership Models Retroactively\n            - file: collaboration/shared-ownership/shared-ownership-defaults.md\n              title: Nudging for a Better Default\n        - file: collaboration/oss-sustainability/oss-sustainability-challenges.md\n          title: Sustainability of Open Source Projects\n          children:\n            - file: collaboration/oss-sustainability/oss-sustainability-examples.md\n              title: Examples of Open Source Business Models\n    # ===== Guide for Ethical Research ========================================\n    - file: ethical-research/ethical-research.md\n      children:\n        - file: ethical-research/ethics-intro.md\n          title: Introduction to Research Ethics\n        - file: ethical-research/ethics-committees.md\n          title: Research Ethics Committees Workflows\n        - file: ethical-research/preclinical-research.md\n          title: Ethical Decisions in Preclinical Research\n        - file: ethical-research/law-policy.md\n          title: Law, Policy and Human Rights in Ethics\n          children:\n            - file: ethical-research/law-policy/law-policy-ethics.md\n              title: Ethics and law\n            - file: ethical-research/law-policy/law-policy-rights.md\n              title: Human rights\n            - file: ethical-research/law-policy/law-policy-resources.md\n              title: Further Recommendations\n        - file: ethical-research/social-data.md\n          title: Research Ethics for Social Data\n        - file: ethical-research/data-feminism.md\n          title: Data Feminism\n          children:\n            - file: ethical-research/data-feminism/data-feminism-power.md\n              title: Examining Power\n        - file: ethical-research/activism.md\n          title: Activism for Researchers\n          children:\n            - file: ethical-research/activism/activism-unionisation.md\n              title: Unionisation\n            - file: ethical-research/activism/activism-whistleblowing.md\n              title: Whistleblowing\n            - file: ethical-research/activism/activism-env-impact.md\n              title: The Environmental Impact of Digital Research\n            - file: ethical-research/activism/activism-robodebt.md\n              title: Case study - Robodebt\n            - file: ethical-research/activism/activism-case-study-google.md\n              title: Case study - Google Workers\n        - file: ethical-research/cultural-change.md\n          title: Cultural Change\n          children:\n            - file: ethical-research/cultural-change/cc-examples.md\n              title: Culture Change Models & Examples\n            - file: ethical-research/cultural-change/alt-models-discussion.md\n              title: Alternative Models of Culture Change in Open Research\n        - file: ethical-research/internal-policy.md\n          title: Internal Policy Advocacy\n        - file: ethical-research/self-reflection.md\n          title: Self-Reflection\n          children:\n            - file: ethical-research/self-reflection/sr-positionality.md\n              title: Identity and Positionality\n            - file: ethical-research/self-reflection/sr-power.md\n              title: Power and Privilege\n            - file: ethical-research/self-reflection/sr-prompts.md\n              title: Self-Reflection Prompts\n            - file: ethical-research/self-reflection/sr-resources.md\n              title: Resources\n        - file: ethical-research/data-hazards.md\n          title: Data-Hazards\n          children:\n            - file: ethical-research/data-hazards/dh-intro.md\n              title: Introduction\n            - file: ethical-research/data-hazards/dh-how-to-use.md\n              title: How To Use\n            - file: ethical-research/data-hazards/dh-case-study.md\n              title: Case Study\n        - file: ethical-research/ethics-open-source-governance.md\n          title: Ethical Considerations for Open Source Governance Models\n    # ===== Community Handbook ========================================\n    - file: community-handbook/community-handbook.md\n      children:\n        - file: community-handbook/coc.md\n          title: Code of Conduct\n          children:\n            - file: community-handbook/coc/coc-details.md\n              title: Code of Conduct in Detail\n            - file: community-handbook/coc/coc-reporting.md\n              title: Incident Reporting Guideline\n            - file: community-handbook/coc/coc-enforcement.md\n              title: Enforcement Manual\n            - file: community-handbook/coc/coc-acknowledgement.md\n              title: Acknowledgements\n        - file: community-handbook/contributing.md\n          title: Contributing to The Turing Way\n        - title: Community Calls\n          file: community-handbook/community-calls.md\n          children:\n            - file: community-handbook/community-calls/calendar.md\n              title: Community Calendar\n            - file: community-handbook/community-calls/community-calls-motivation.md\n              title: Background, Motivations, and Techniques\n            - file: community-handbook/community-calls/community-calls-forums.md\n              title: Community Forums\n            - file: community-handbook/community-calls/community-calls-collabcafe.md\n              title: Collaboration Cafes\n            - file: community-handbook/community-calls/community-calls-working-groups.md\n              title: Working Group Meetings\n        - file: community-handbook/style.md\n          title: Style Guide\n          children:\n            - file: community-handbook/style/style-writing-markdown.md\n              title: Writing Markdown\n            - file: community-handbook/style/style-citing.md\n              title: Citing and Referencing External Resources\n            - file: community-handbook/style/style-crossref.md\n              title: Cross-Referencing Sections and Chapters\n            - file: community-handbook/style/style-figures.md\n              title: Using Figures\n            - file: community-handbook/style/style-videos.md\n              title: Videos\n            - file: community-handbook/style/style-glossary.md\n              title: Glossary\n            - file: community-handbook/style/style-blocks.md\n              title: Special Blocks\n            - file: community-handbook/style/style-custom-roles-and-directives.md\n              title: Custom Roles and Directives\n            - file: community-handbook/style/style-consistency.md\n              title: Maintaining Consistency\n              children:\n                - file: community-handbook/style/consistency/consistency-formatting.md\n                  title: Formatting\n                - file: community-handbook/style/consistency/consistency-structure.md\n                  title: Structure\n                - file: community-handbook/style/consistency/consistency-language.md\n                  title: Language\n        - file: community-handbook/local-build.md\n          title: Build the Turing Way Book locally\n        - file: community-handbook/github-gardening.md\n          title: GitHub Gardening\n          children:\n            - file: community-handbook/contributing-chapters/contributing-templates.md\n              title: Templates\n            - file: community-handbook/contributing-chapters/contributing-workflow.md\n              title: Workflow\n        - file: community-handbook/contributing-chapters.md\n          title: Contributing and Developing Chapters - Templates and Workflow\n        - file: community-handbook/acknowledgement.md\n          title: Acknowledging Contributors\n          children:\n            - file: community-handbook/acknowledgement/acknowledgement-members.md\n              title: Community Members and Shared Ownership\n            - file: community-handbook/acknowledgement/acknowledgement-record.md\n              title: Record of Contributions\n            - file: community-handbook/acknowledgement/acknowledgement-examples.md\n              title: Different Contributions and Acknowledgements\n        - file: community-handbook/pathways.md\n          title: Pathways Feature\n          children:\n            - file: community-handbook/pathways/pathways-creation.md\n              title: Creating Learning Pathways\n            - file: community-handbook/pathways/pathways-example.md\n              title: Examples from Developing Pathways\n        - file: community-handbook/translation.md\n          title: Translation and Localisation\n          children:\n            - file: community-handbook/translation/translation-localisation.md\n              title: Translation of Open Source Projects\n            - file: community-handbook/translation/translation-workflow.md\n              title: Welcome to the localisation team of The Turing Way!\n            - file: community-handbook/translation/translation-getting-started.md\n              title: Embark on Your Localisation Journey\n            - file: community-handbook/translation/translation-hello-crowdin.md\n              title: Your Gateway to Crowdsourced Localisation\n        - file: community-handbook/infrastructure.md\n          title: Infrastructure\n          children:\n            - file: community-handbook/infrastructure/infrastructure-contributors.md\n              title: Publishing Contributors\n            - file: community-handbook/infrastructure/infrastructure-teams-as-code.md\n              title: Teams as Code\n            - file: >-\n                community-handbook/infrastructure/infrastructure-external-link-check.md\n              title: External Link Checking\n            - file: community-handbook/infrastructure/infrastructure-dns.md\n              title: DNS\n            - file: community-handbook/infrastructure/infrastructure-redirects.md\n              title: Redirects\n            - file: community-handbook/infrastructure/infrastructure-pathways.md\n              title: Pathways\n            - file: community-handbook/infrastructure/infrastructure-plugins.md\n              title: MyST Plugins\n        - file: community-handbook/accessibility.md\n          title: Accessibility\n          children:\n            - file: community-handbook/accessibility/accessibility-policy.md\n              title: Accessibility Policy\n            - file: >-\n                community-handbook/accessibility/accessibility-event-organising.md\n              title: Event Organising\n            - file: community-handbook/accessibility/accessibility-alt-text.md\n              title: Alt text\n            - file: >-\n                community-handbook/accessibility/accessibility-comms-platforms.md\n              title: Communication Platforms\n        - file: community-handbook/communication-channels.md\n          title: Communication Platforms\n          children:\n            - file: community-handbook/communication-channels/slack-start-guide.md\n              title: Slack Start Guide\n            - file: community-handbook/communication-channels/slack-welcome-guide.md\n              title: Slack Welcome Guide\n        - file: community-handbook/newsletters.md\n          title: Monthly Newsletters\n          children:\n            - file: community-handbook/newsletters/newsletters-process.md\n              title: A Process of Creating a newsletter\n            - file: community-handbook/newsletters/newsletters-style.md\n              title: Newsletter's Style Guide\n            - file: community-handbook/newsletters/newsletters-template.md\n              title: The Turing Way Newsletter Template\n        - file: community-handbook/bookdash.md\n          title: Book Dash Events\n          children:\n            - file: community-handbook/bookdash/bookdash-application.md\n              title: Application and Review Process\n            - file: community-handbook/bookdash/bookdash-logistics.md\n              title: Book Dash Logistics\n            - file: community-handbook/bookdash/bookdash-illustrator.md\n              title: Working With an Illustrator\n            - file: community-handbook/bookdash/bookdash-selection.md\n              title: Participant Selection Process\n            - file: community-handbook/bookdash/bookdash-events.md\n              title: Book Dash Main Event Plans\n            - file: community-handbook/bookdash/bookdash-after.md\n              title: After the Book Dash\n        - file: community-handbook/onboarding-offboarding.md\n          title: Onboarding and Offboarding\n          children:\n            - file: community-handbook/onboarding-offboarding/onboarding-general-calls.md\n              title: General Onboarding\n            - file: community-handbook/onboarding-offboarding/onboarding-core-team.md\n              title: Core Team Onboarding\n            - file: community-handbook/onboarding-offboarding/offboarding-core-team.md\n              title: Core Team Offboarding\n        - file: community-handbook/fireside-chat.md\n          title: Fireside Chat Series\n          children:\n            - file: community-handbook/fireside-chat/fireside-chat-checklist.md\n              title: Fireside Chat Planning Checklist\n            - file: community-handbook/fireside-chat/fireside-chat-roles.md\n              title: Fireside Chat Roles and Responsibilities\n        - file: community-handbook/presenting.md\n          title: Giving a Turing Way Talk\n        - file: community-handbook/templates.md\n          title: Template Collection\n          children:\n            - file: community-handbook/templates/template-bookdash-index.md\n              title: Book Dash Main Shared Document\n            - file: community-handbook/templates/template-bookdash-precall.md\n              title: Book Dash Pre-event Onboarding\n            - file: community-handbook/templates/template-bookdash-github.md\n              title: Book Dash GitHub Session\n            - file: community-handbook/templates/template-bookdash-notes.md\n              title: Book Dash Template for Shared Notes\n            - file: community-handbook/templates/template-bookdash-feedback.md\n              title: Book Dash Template for Feedback\n            - file: community-handbook/templates/template-coworking-collabcafe.md\n              title: Online Collaboration Cafe Templates\n            - file: community-handbook/templates/template-newsletter-draft.md\n              title: Template for Drafting Newsletters\n            - file: community-handbook/templates/template-fireside-chat.md\n              title: Template for Fireside Chat Shared Notes\n    # ===== Afterword ========================================\n    - file: afterword/afterword.md\n      children:\n        - file: afterword/legal-disclaimer.md\n          title: Legal Disclaimer\n        - file: afterword/data-usage-statement.md\n          title: Data Usage Statement\n        - file: afterword/contributors-record.md\n          title: Contributors Record\n          children:\n            - file: afterword/contributors/profiles.md\n              title: Individual Contributors\n            - file: afterword/contributors/all-contributors.md\n              title: All Contributors\n            - file: afterword/contributors/translators.md\n              title: Translators\n        - file: afterword/collaborators.md\n          title: Collaborators\n        - file: afterword/subprojects.md\n          title: Sub-projects, Working Groups, Informal Initiatives\n        - file: afterword/glossary.md\n          title: Glossary\n        - file: afterword/bibliography.md\n          title: Bibliography\nsite:\n  options:\n    logo: ../figures/logo-detail-with-text.svg\n    favicon: ../figures/logo/favicon-32x32.png\n    analytics_google: UA-167881009-1\n    folders: true\n  template: book-theme\n"
  },
  {
    "path": "book/website/pathways/pathways-community-management-concepts.md",
    "content": "(pw-community-management-concepts)=\n# Community Management Concepts\n:::{curation} Community Management Concepts\n---\ndepth: 2\ndescription: >\n   Research Community Managers work to engage and organise groups of scientists, researchers and/or patients and the public around shared research topics and objectives.\n   This curated set of chapters will allow them to gain awareness and knowledge of relevant best practices in open data science and concepts important to community building.\nlabel: pathway-community-management-concepts\n---\n- item: ../reproducible-research/reproducible-research.md\n  children:\n    - item: ../reproducible-research/overview.md\n    - item: ../reproducible-research/open.md\n    - item: ../reproducible-research/licensing.md\n    - item: ../reproducible-research/rdm.md\n    - item: ../reproducible-research/rdm/rdm-sharing.md\n    - item: ../reproducible-research/code-documentation.md\n    - item: ../reproducible-research/reviewing.md\n    - item: ../reproducible-research/compendia.md\n- item: ../project-design/project-design.md\n  children:\n    - item: ../project-design/pd-overview.md\n- item: ../communication/communication.md\n  children:\n    - item: ../communication/comms-overview.md\n      children:\n        - item: ../communication/comms-overview/comms-overview-principles.md\n        - item: ../communication/comms-overview/comms-overview-accessibly.md\n- item: ../collaboration/collaboration.md\n  children:\n    - item: ../collaboration/research-infrastructure-roles/community-manager.md\n    - item: ../collaboration/stakeholder-engagement.md\n- item: ../ethical-research/ethical-research.md\n  children:\n    - item: ../ethical-research/ethics-intro.md\n    - item: ../ethical-research/cultural-change.md\n- item: ../community-handbook/community-handbook.md\n  children:\n    - item: ../community-handbook/accessibility.md\n    - item: ../community-handbook/acknowledgement.md\n:::\n\n"
  },
  {
    "path": "book/website/pathways/pathways-community-management-operations.md",
    "content": "(pw-community-management-how-to)=\n# Community Management How-to\n:::{curation} Community Management How-to\n---\ndepth: 2\ndescription: >\n    Community management often requires designing processes within the community to streamline aspects of collaboration, communication, and public engagement.\n    This curated set of chapters will allow community managers and community management enthusiasts to dive into the operational aspects of building, sustaining and expanding their communities.\nlabel: pathway-community-management-how-to\n---\n- item: ../reproducible-research/reproducible-research.md\n  children:\n    - item: ../reproducible-research/open.md\n    - item: ../reproducible-research/open/open-checklist.md\n- item: ../project-design/project-design.md\n  children:\n    - item: '#pd-checklist'\n- item: ../collaboration/collaboration.md\n  children:\n    - item: ../collaboration/new-community/new-community-guide.md\n    - item: ../collaboration/team-manual/team-manual-on-off-boarding.md\n    - item: ../collaboration/meetings-events-co-working/event-tools.md\n    - item: ../collaboration/meetings-events-co-working/remote-collab/organising-remote-meetings.md\n    - item: ../collaboration/meetings-events-co-working/chairing.md\n    - item: ../collaboration/meetings-events-co-working/remote-collab/coworking.md\n    - item: ../collaboration/meetings-events-co-working/ppie-events.md\n    - item: ../collaboration/meetings-events-co-working/remote-collab.md\n    - item: ../collaboration/meetings-events-co-working/hybrid-collab.md\n- item: ../community-handbook/community-handbook.md\n  children:\n    - item: ../community-handbook/communication-channels.md\n    - item: ../community-handbook/newsletters.md\n    - item: ../community-handbook/community-calls.md\n    - item: ../community-handbook/fireside-chat.md\n    - item: ../community-handbook/presenting.md\n    - item: ../community-handbook/templates.md\n:::\n"
  },
  {
    "path": "book/website/pathways/pathways-data-science-without-borders.md",
    "content": "(pw-data-science-without-borders)=\n# Data Science Without Borders\n\n:::{curation} Data Science Without Borders\n---\ndepth: 2\ndescription: >\n  For effective collaboration among international groups, such as in the Data Science Without Borders project, it is essential to learn, adopt, and implement best practices in open, reproducible, ethical, and inclusive data science.\n  These curated chapters will provide starting points, helping you navigate a broader set of practices in The Turing Way.\nlabel: pathway-data-science-without-borders\n---\n- item: ../reproducible-research/reproducible-research.md\n  children:\n    - item: ../reproducible-research/overview.md\n      children:\n        - item: ../reproducible-research/overview/overview-definitions.md\n    - item: ../reproducible-research/vcs.md\n      children:\n        - item: ../reproducible-research/vcs/vcs-checklist.md\n    - item: ../reproducible-research/open.md\n      children:\n        - item: ../reproducible-research/open/open-source.md\n        - item: ../reproducible-research/open/open-data.md\n        - item: ../reproducible-research/open/open-hardware.md\n        - item: ../reproducible-research/open/open-access.md\n        - item: ../reproducible-research/open/open-scholarship.md\n    - item: ../reproducible-research/licensing.md\n    - item: ../reproducible-research/rdm.md\n      children:\n        - item: ../reproducible-research/rdm/rdm-dmp.md\n        - item: ../reproducible-research/rdm/rdm-fair.md\n        - item: ../reproducible-research/rdm/rdm-metadata.md\n        - item: ../reproducible-research/rdm/rdm-spreadsheets.md\n        - item: ../reproducible-research/rdm/rdm-data-curation.md\n        - item: ../reproducible-research/rdm/rdm-sharing.md\n        - item: ../reproducible-research/rdm/rdm-checklist.md\n    - item: ../reproducible-research/code-documentation.md\n    - item: ../reproducible-research/testing.md\n      children:\n        - item: ../reproducible-research/testing/testing-overview.md\n        - item: ../reproducible-research/testing/testing-checklist.md\n    - item: ../reproducible-research/code-quality.md\n      children:\n        - item: ../reproducible-research/code-quality/code-quality-style.md\n    - item: ../reproducible-research/reviewing.md\n      children:\n        - item: ../reproducible-research/reviewing/reviewing-workflow.md\n        - item: ../reproducible-research/reviewing/reviewing-checklist.md\n    - item: ../reproducible-research/code-reuse.md\n      children:\n        - item: ../reproducible-research/code-reuse/code-reuse-details.md\n- item: ../project-design/project-design.md\n  children:\n    - item: '#pd-overview'\n      children:\n        - item: '#pd-checklist'\n        - item: '#pd-project-repo'\n    - item: ../project-design/info-management.md\n      children:\n        - item: ../project-design/info-management/filenaming.md\n        - item: ../project-design/data-security/sdp.md\n    - item: ../project-design/data-security.md\n      children:\n        - item: ../project-design/data-security/sdp/metadata.md\n        - item: ../project-design/data-security/sdpm.md\n        - item: ../project-design/data-security/sdpw.md\n        - item: ../project-design/data-security/data-governance.md\n    - item: ../project-design/missing-data.md\n    - item: ../project-design/risks-of-bias.md\n- item: ../communication/communication.md\n  children:\n    - item: ../communication/os-comms.md\n    - item: ../communication/dif-articles.md\n    - item: ../communication/presentations.md\n    - item: ../communication/research-objects.md\n    - item: ../communication/citable.md\n      children:\n        - item: ../communication/citable/citable-steps.md\n    - item: ../communication/aa.md\n- item: ../community-handbook/community-handbook.md\n  children:\n    - item: ../community-handbook/translation.md\n      children:\n        - item: ../community-handbook/translation/translation-localisation.md\n- item: ../collaboration/collaboration.md\n  children:\n    - item: ../collaboration/meetings-events-co-working/remote-collab.md\n    - item: ../collaboration/github-novice.md\n    - item: ../collaboration/maintain-review.md\n    - item: ../collaboration/meetings-events-co-working/remote-collab/organising-remote-meetings.md\n    - item: ../collaboration/meetings-events-co-working/remote-collab/coworking.md\n    - item: ../collaboration/meetings-events-co-working/organising-conference.md\n    - item: ../collaboration/meetings-events-co-working/chairing.md\n    - item: ../collaboration/meetings-events-co-working/event-tools.md\n    - item: ../collaboration/collaboration.md\n    - item: ../collaboration/shared-ownership.md\n    - item: ../collaboration/team-manual.md\n    - item: ../collaboration/stakeholder-engagement.md\n- item: ../ethical-research/ethical-research.md\n  children:\n    - item: ../ethical-research/ethics-intro.md\n    - item: ../ethical-research/law-policy.md\n    - item: ../ethical-research/ethics-open-source-governance.md\n    - item: ../ethical-research/cultural-change.md\n:::\n"
  },
  {
    "path": "book/website/pathways/pathways-data-stewards.md",
    "content": "(pw-data-stewards)=\n# Data Stewards\n\n:::{curation} Data Stewards\n---\ndepth: 2\ndescription: >\n    Data Steward is an umbrella term for numerous support roles that involve the creation, management and usage of research data.\n    These can be very hands-on roles involving daily data analysis or roles that are more policy and advising-focused.\n    Data Stewards are an important part of scientific communities, supporting recommended data management practices and saving researchers time by supporting them in these efforts.\n    Data Stewards tend to have scientific backgrounds and can have the technical skills needed to analyse and manage both data and software (see also the resources curated for Research Software Engineers).\n    This curated set of chapters will point.\n    Data Stewards to topics and practices important for working with data and communicating with researchers.\nlabel: pathway-data-stewards\n---\n- item: ../reproducible-research/reproducible-research.md\n  children:\n    - item: ../reproducible-research/overview.md\n      children:\n        - item: ../reproducible-research/overview/overview-definitions.md\n        - item: ../reproducible-research/overview/overview-benefit.md\n        - item: ../reproducible-research/overview/overview-barriers.md\n        - item: ../reproducible-research/overview/overview-resources.md\n    - item: ../reproducible-research/rdm.md\n      children:\n        - item: ../reproducible-research/rdm/rdm-sharing.md\n    - item: ../reproducible-research/open.md\n      children:\n        - item: ../reproducible-research/open/open-data.md\n        - item: ../reproducible-research/open/open-source.md\n        - item: ../reproducible-research/open/open-hardware.md\n        - item: ../reproducible-research/open/open-access.md\n        - item: ../reproducible-research/open/open-notebooks.md\n        - item: ../reproducible-research/open/open-scholarship.md\n    - item: ../reproducible-research/vcs.md\n      children:\n        - item: ../reproducible-research/vcs/vcs-workflow.md\n        - item: ../reproducible-research/vcs/vcs-data.md\n    - item: ../reproducible-research/licensing.md\n      children:\n        - item: ../reproducible-research/licensing/licensing-compatibility.md\n        - item: ../reproducible-research/licensing/licensing-ethical-source.md\n        - item: ../reproducible-research/licensing/licensing-data.md\n    - item: ../reproducible-research/rdm.md\n      children:\n        - item: ../reproducible-research/rdm/rdm-data.md\n        - item: ../reproducible-research/rdm/rdm-find.md\n        - item: ../reproducible-research/rdm/rdm-dmp.md\n        - item: ../reproducible-research/rdm/rdm-fair.md\n        - item: ../reproducible-research/rdm/rdm-personal.md\n        - item: ../reproducible-research/rdm/rdm-storage.md\n        - item: ../reproducible-research/rdm/rdm-spreadsheets.md\n        - item: ../reproducible-research/rdm/rdm-metadata.md\n        - item: ../reproducible-research/rdm/rdm-methods.md\n        - item: ../reproducible-research/rdm/rdm-elns.md\n        - item: ../reproducible-research/rdm/rdm-data-curation.md\n        - item: ../reproducible-research/rdm/rdm-visualisation.md\n        - item: ../reproducible-research/rdm/rdm-repository.md\n        - item: ../reproducible-research/rdm/rdm-sharing.md\n        - item: ../reproducible-research/rdm/rdm-article.md\n        - item: ../reproducible-research/rdm/rdm-checklist.md\n        - item: ../reproducible-research/rdm/rdm-stories.md\n        - item: ../reproducible-research/rdm/rdm-resources.md\n    - item: ../reproducible-research/renv.md\n    - item: ../reproducible-research/compendia.md\n    - item: ../project-design/project-design.md\n      children:\n        - item: ../project-design/pd-overview.md\n        - item: '#pd-project-repo'\n        - item: ../project-design/info-management/filenaming.md\n        - item: ../project-design/data-security/sdp.md\n        - item: ../project-design/data-security/sdpm.md\n        - item: ../project-design/data-security/sdpw.md\n        - item: ../project-design/data-security/data-governance.md\n        - item: ../project-design/missing-data.md\n        - item: ../project-design/risks-of-bias.md\n    - item: ../communication/communication.md\n      children:\n        - item: ../communication/comms-overview.md\n          children:\n            - item: ../communication/comms-overview/comms-overview-principles.md\n            - item: ../communication/comms-overview/comms-overview-accessibly.md\n        - item: ../communication/open.md\n        - item: ../communication/blogs.md\n        - item: ../communication/presentations.md\n        - item: ../communication/research-objects.md\n        - item: ../communication/citable.md\n        - item: ../communication/dif-articles.md\n    - item: ../collaboration/collaboration.md\n      children:\n        - item: ../collaboration/stakeholder-engagement.md\n        - item: ../collaboration/leadership.md\n        - item: ../collaboration/research-infrastructure-roles.md\n          children:\n            - item: ../collaboration/research-infrastructure-roles/data-steward.md\n            - item: ../collaboration/research-infrastructure-roles/data-steward-personal-story.md\n    - item: ../ethical-research/ethical-research.md\n      children:\n        - item: ../ethical-research/ethics-intro.md\n        - item: ../ethical-research/ethics-committees.md\n        - item: ../ethical-research/cultural-change.md\n        - item: ../ethical-research/data-hazards.md\n    - item: ../community-handbook/accessibility.md\n:::\n"
  },
  {
    "path": "book/website/pathways/pathways-early-career-researchers.md",
    "content": "(pw-early-career-researchers)=\n# Early Career Researchers\n\n:::{curation} Early Career Researchers\n---\ndepth: 2\ndescription: >\n  Early Career Researchers (ECRs) are students, PhDs and early-stage postdocs who may not have a lot of experience in contributing to research projects from start to finish.\n  This curated set of chapters will allow them to understand what best practices apply at different stages of development to ensure research reproducibility.\nlabel: pathway-early-career-researchers\n---\n- item: ../project-design/project-design.md\n  children:\n    - item: ../project-design/pd-overview.md\n      children:\n        - item: '#pd-checklist'\n        - item: '#pd-project-repo'\n- item: ../collaboration/github-novice.md\n- item: ../reproducible-research/reproducible-research.md\n  children:\n    - item: ../reproducible-research/overview.md\n      children:\n        - item: ../reproducible-research/overview/overview-definitions.md\n        - item: ../reproducible-research/overview/overview-benefit.md\n        - item: ../reproducible-research/overview/overview-barriers.md\n        - item: ../reproducible-research/overview/overview-resources.md\n    - item: ../reproducible-research/rdm.md\n    - item: ../reproducible-research/vcs.md\n- item: ../project-design/project-design.md\n  children:\n    - item: ../project-design/pd-overview.md\n      children:\n        - item: ../project-design/pd-overview/pd-overview-methods.md\n    - item: ../project-design/data-security/sdp.md\n- item: ../communication/communication.md\n  children:\n    - item: ../communication/comms-overview.md\n      children:\n        - item: ../communication/comms-overview/comms-overview-principles.md\n    - item: ../communication/dif-articles.md\n    - item: ../communication/presentations.md\n    - item: ../communication/social-media.md\n- item: ../collaboration/collaboration.md\n  children:\n    - item: ../collaboration/github-novice/github-novice-advanced.md\n- item: ../ethical-research/ethical-research.md\n  children:\n    - item: ../ethical-research/ethics-intro.md\n:::\n"
  },
  {
    "path": "book/website/pathways/pathways-project-leaders.md",
    "content": "(pw-project-leaders)=\n# Project Leaders\n\n:::{curation} Project Leaders\n---\ndepth: 2\ndescription: >\n  Project leaders are people who are responsible for project planning, resource allocation and other decision-making for and with the involvement of their project team.\n  This curated set of chapters will point them to relevant tools and practices that they can use for managing their projects while ensuring transparency, reproducibility, collaboration and ethical practices throughout the lifecycle of research.\nlabel: pathway-project-leaders\n---\n- item: ../collaboration/collaboration.md\n  children:\n    - item: ../collaboration/leadership.md\n- item: ../project-design/project-design.md\n  children:\n    - item: ../project-design/pd-overview.md\n      children:\n        - item: ../project-design/pd-overview/pd-overview-planning.md\n        - item: ../project-design/pd-overview/pd-overview-repro.md\n        - item: ../project-design/pd-overview/pd-overview-methods.md\n        - item: ../project-design/pd-overview/pd-overview-version.md\n        - item: '#pd-checklist'\n        - item: '#pd-project-repo'\n- item: ../reproducible-research/reproducible-research.md\n  children:\n    - item: ../reproducible-research/overview.md\n      children:\n        - item: ../reproducible-research/overview/overview-definitions.md\n        - item: ../reproducible-research/overview/overview-barriers.md\n    - item: ../reproducible-research/open.md\n      children:\n        - item: ../reproducible-research/open/open-data.md\n        - item: ../reproducible-research/open/open-source.md\n- item: ../communication/communication.md\n  children:\n    - item: ../communication/aa.md\n      children:\n        - item: ../communication/aa/aa-tips.md\n:::\n"
  },
  {
    "path": "book/website/pathways/pathways-research-software-engineers.md",
    "content": "(pw-reserach-software-engineers)=\n# Research Software Engineers\n\n:::{curation} Research Software Engineers\n---\ndepth: 2\ndescription: >\n  Research Software Engineers are programmers working in an academic context who play crucial roles in projects involving data and technology.\n  This curated set of chapters will point them to open source and reproducibility practices important for working with data and developing software tools.\nlabel: pathway-research-software-engineers\n---\n- item: ../communication/communication.md\n  children:\n    - item: ../communication/citable.md\n      children:\n        - item: ../communication/citable/citable-otherscite.md\n        - item: ../communication/citable/citable-cite.md\n- item: ../collaboration/collaboration.md\n  children:\n    - item: ../collaboration/research-infrastructure-roles.md\n      children:\n        - item: ../collaboration/research-infrastructure-roles/rse.md\n        - item: ../collaboration/research-infrastructure-roles/rse-personal-story.md\n    - item: ../collaboration/maintain-review.md\n- item: ../project-design/project-design.md\n  children:\n    - item: '#pd-overview'\n      children:\n        - item: '#pd-project-repo'\n        - item: '#pd-overview-repo-advanced'\n- item: ../reproducible-research/reproducible-research.md\n  children:\n    - item: ../reproducible-research/overview.md\n    - item: ../reproducible-research/open.md\n      children:\n        - item: ../reproducible-research/open/open-data.md\n        - item: ../reproducible-research/open/open-source.md\n    - item: ../reproducible-research/vcs.md\n    - item: ../reproducible-research/licensing.md\n    - item: ../reproducible-research/code-quality.md\n    - item: ../reproducible-research/testing.md\n    - item: ../reproducible-research/reviewing.md\n    - item: ../reproducible-research/renv.md\n    - item: ../reproducible-research/binderhub.md\n    - item: ../reproducible-research/ci.md\n:::\n"
  },
  {
    "path": "book/website/pathways/pathways-software-citation.md",
    "content": "(pw-software-citation)=\n# Software Citation\n\n:::{curation} Software Citation\n---\ndepth: 2\ndescription: >\n  From research to government, every sector strongly relies upon the use of\n  research software. This curated set of chapters guides the sharing and\n  citation of software components from source code to computational workflows\n  and executables while attributing all contributors fairly.\nlabel: pathway-software-citation\n---\n- item: ../communication/citable.md\n  children:\n    - item: ../communication/citable/citable-steps.md\n    - item: ../communication/citable/citable-cite.md\n    - item: ../communication/citable/citable-cff.md\n    - item: ../communication/citable/citable-cffinit.md\n    - item: ../communication/citable/citable-linking.md\n    - item: ../communication/citable/citable-orcid.md\n    - item: ../communication/citable/citable-resources.md\n    - item: ../communication/citable/citable-otherscite.md\n- item: ../reproducible-research/reproducible-research.md\n  children:\n    - item: ../reproducible-research/overview.md\n    - item: ../reproducible-research/open.md\n      children:\n        - item: ../reproducible-research/open/open-source.md\n    - item: ../reproducible-research/licensing.md\n    - item: ../reproducible-research/rdm/rdm-metadata.md\n    - item: ../reproducible-research/rdm/rdm-sharing.md\n    - item: ../reproducible-research/code-reuse.md\n      children:\n        - item: ../reproducible-research/code-reuse/code-reuse-overview.md\n:::\n"
  },
  {
    "path": "book/website/pathways/pathways.md",
    "content": "(pw)=\n# Pathways\n\nThe Pathways section of *The Turing Way* presents a community-curated collection of chapters based on different roles and themes in research and data science.\n\nThis section has been developed to facilitate multiple entry points that people can select to find information most relevant to them, without having to browse different guides.\n\nYou can read more about the background and reason for developing this feature in our {ref}`Community Handbook<ch-pathways>`.\n\nThis feature is enabled by a (MyST plugin) developed and maintained by our infrastructure Working Group, details for which are provided in our {ref}`infrastructure chapter<ch-pathways-creating>`.\n\nIf there is a persona or user profile that you think is missing, please help us curate that!\nLearn more about the {ref}`process of curation<ch-pathways-creating>` and join us in improving this section. 🎉\n"
  },
  {
    "path": "book/website/plugins/profile.mjs",
    "content": "const gitHubUserRole = {\n  name: \"githubuser\",\n  alias: [\"ghu\"],\n  doc: \"Create a link to a GitHub profile\",\n  body: {\n    type: String,\n    doc: \"The GitHub username, not including an @\",\n    required: true,\n  },\n  run(data) {\n    const node = {\n      type: \"link\",\n      url: `https://github.com/${data.body}`,\n      children: [\n        {\n          type: \"text\",\n          value: data.body,\n        },\n      ],\n    };\n    return [node];\n  },\n};\n\nconst orcidRole = {\n  name: \"orcid\",\n  doc: \"Create a link to an ORCID profile\",\n  body: {\n    type: String,\n    doc: \"The ORCID\",\n    required: true,\n  },\n  run(data) {\n    const node = {\n      type: \"link\",\n      url: `https://orcid.org/${data.body}`,\n      children: [\n        {\n          type: \"text\",\n          value: data.body,\n        },\n      ],\n    };\n    return [node];\n  },\n};\n\nconst twitterRole = {\n  name: \"twitter\",\n  doc: \"Create a link to a Twitter profile\",\n  body: {\n    type: String,\n    doc: \"The Twitter profile name, not including an @\",\n    required: true,\n  },\n  run(data) {\n    const node = {\n      type: \"link\",\n      url: `https://twitter.com/@${data.body}`,\n      children: [\n        {\n          type: \"text\",\n          value: \"@\" + data.body,\n        },\n      ],\n    };\n    return [node];\n  },\n};\n\nconst mastodonRole = {\n  name: \"mastodon\",\n  doc: \"Create a link to a Mastodon profile\",\n  body: {\n    type: String,\n    doc: \"The Mastodon profile and instance tag, without a leading @. For example username@mastodon.social\",\n    required: true,\n  },\n  run(data) {\n    var items = data.body.split(\"@\");\n    var user = items[0];\n    var instance = items[1];\n    const node = {\n      type: \"link\",\n      url: `https://${instance}/@${user}`,\n      children: [\n        {\n          type: \"text\",\n          value: \"@\" + data.body,\n        },\n      ],\n    };\n    return [node];\n  },\n};\n\nconst websiteRole = {\n  name: \"website\",\n  doc: \"Create a link to a personal website\",\n  body: {\n    type: String,\n    doc: \"The website URL\",\n    required: true,\n  },\n  run(data) {\n    // Strip http or https\n    var name = data.body.replace(new RegExp(\"(http|https):\\/\\/\", \"g\"), \"\");\n    const node = {\n      type: \"link\",\n      url: data.body,\n      children: [\n        {\n          type: \"text\",\n          value: name,\n        },\n      ],\n    };\n    return [node];\n  },\n};\n\nconst communityRolesRole = {\n  name: \"communityroles\",\n  docs: \"Create a list of your roles in the community\",\n  body: {\n    type: String,\n    doc: \"A semicolon-separated (;) list of roles\",\n    required: true,\n  },\n  run(data) {\n    const roles = data.body.split(\";\");\n    let node = {};\n    if (roles.length == 1) {\n      node = {\n        type: \"text\",\n        value: roles[0],\n      };\n    } else {\n      let items = [];\n      for (const role of roles) {\n        items.push({\n          type: \"listItem\",\n          spread: true,\n          children: [{ type: \"text\", value: role }],\n        });\n      }\n      node = {\n        type: \"list\",\n        ordered: false,\n        spread: false,\n        children: items,\n      };\n    }\n\n    return [node];\n  },\n};\n\nconst profileDirective = {\n  name: \"profile\",\n  doc: \"Build a user profile for our contributors record.\",\n  arg: {\n    type: String,\n    doc: \"Your name\",\n    required: true,\n  },\n  // body: {},\n  options: {\n    bio: {\n      type: String,\n      doc: \"A short biography.\",\n    },\n    github: {\n      type: String,\n      doc: \"Your GitHub username, not including an @\",\n    },\n    highlights: {\n      type: String,\n      doc: \"Your personal highlights from working in The Turing Way\",\n    },\n    mastodon: {\n      type: String,\n      doc: \"Your Mastodon profile and instance tag, without a leading @. For example username@mastodon.social\",\n    },\n    more: {\n      type: String,\n      doc: \"Any extra information you would like on your profile\",\n    },\n    orcid: {\n      type: String,\n      doc: \"Your ORCID\",\n    },\n    quote: {\n      type: String,\n      doc: \"A personal quote for your profile\",\n    },\n    roles: {\n      type: String,\n      doc: \"Your role(s), or previous role(s), in The Turing Way\",\n    },\n    twitter: {\n      type: String,\n      doc: \"The Twitter profile name, not including an @\",\n    },\n    website: {\n      type: String,\n      docs: \"Your personal website\",\n    },\n  },\n  run(data, vfile, ctx) {\n    // Process options\n    const bio = data.options?.bio ?? null;\n    const github = data.options?.github ?? null;\n    const highlights = data.options?.highlights ?? null;\n    const mastodon = data.options?.mastodon ?? null;\n    const more = data.options?.more ?? null;\n    const orcid = data.options?.orcid ?? null;\n    const quote = data.options?.quote ?? null;\n    const roles = data.options?.roles ?? null;\n    const twitter = data.options?.twitter ?? null;\n    const website = data.options?.website ?? null;\n\n    const name = data.arg;\n\n    // Card children\n    let card_children = [];\n\n    // Profile name\n    card_children.push({\n      type: \"cardTitle\",\n      children: [\n        {\n          type: \"text\",\n          value: name,\n        },\n      ],\n    });\n\n    // List items\n    let list_items = [];\n\n    for (const [prefix, role, data] of [\n      [\"Role\", communityRolesRole, roles],\n      [\"GitHub\", gitHubUserRole, github],\n      [\"ORCID\", orcidRole, orcid],\n      [\"Mastodon\", mastodonRole, mastodon],\n      [\"Twitter\", twitterRole, twitter],\n      [\"Website\", websiteRole, website],\n    ]) {\n      if (data) {\n        list_items.push(listItem(prefix, role, data));\n      }\n    }\n\n    if (list_items.length != 0) {\n      card_children.push({\n        type: \"list\",\n        ordered: false,\n        spread: false,\n        children: list_items,\n      });\n    }\n\n    // Card items\n    for (const [title, data] of [\n      [\"Short biography\", bio],\n      [\"Personal higlights\", highlights],\n      [\"More information\", more],\n    ]) {\n      if (data) {\n        // Parse data as MyST to allow Markdown formatting\n        card_children.push(cardItem(title, ctx.parseMyst(data)));\n      }\n    }\n\n    // Quote\n    if (quote) {\n      card_children.push({\n        type: \"blockquote\",\n        children: [\n          {\n            type: \"paragraph\",\n            children: [{ type: \"text\", value: quote }],\n          },\n          {\n            type: \"paragraph\",\n            children: [{ type: \"text\", value: `-- ${name}` }],\n          },\n        ],\n      });\n    }\n\n    // Create label from name\n    const label = \"profile-\" + name.replaceAll(\" \", \"-\").toLowerCase();\n\n    // Create card\n    let card = {\n      type: \"card\",\n      label: label,\n      identifier: label,\n      html_id: label,\n      children: card_children,\n    };\n\n    let nodes = [];\n    nodes.push({\n      type: \"block\",\n      children: [card],\n    });\n\n    return nodes;\n  },\n};\n\nfunction listItem(prefix, role, data) {\n  return {\n    type: \"listItem\",\n    spread: true,\n    children: [\n      {\n        type: \"text\",\n        value: `${prefix}: `,\n      },\n      role.run({ body: data })[0],\n    ],\n  };\n}\n\nfunction cardItem(title, nodes) {\n  return {\n    type: \"card\",\n    children: [\n      {\n        type: \"cardTitle\",\n        children: [{ type: \"text\", value: title }],\n      },\n      nodes,\n    ],\n  };\n}\n\nconst plugin = {\n  name: \"Profile\",\n  directives: [profileDirective],\n  roles: [\n    gitHubUserRole,\n    orcidRole,\n    twitterRole,\n    mastodonRole,\n    websiteRole,\n    communityRolesRole,\n  ],\n};\n\nexport default plugin;\n"
  },
  {
    "path": "book/website/project-design/data-security/data-governance/bigcode_casestudy.md",
    "content": "(pd-dg-bigcode)=\n\n# BigCode Data Governance Case Study\n\n```{admonition} Info\n:class: info\nThis case study was adapted from the [BigCode Governance card](https://huggingface.co/datasets/bigcode/governance-card) in May 2023.\nLearn more about tools and best practices for data governance activities in the [](#pd-dg-ml) chapter.\n```\n \n[BigCode](https://www.bigcode-project.org/) is an open scientific collaboration working on the responsible development and use of large language models (LLM) for code, aiming to empower the machine learning and open source communities through open governance.\nCode LLMs enable the completion and synthesis of code, both from other code snippets and natural language descriptions, and can be used across a wide range of domains, tasks, and programming languages. \nThese models can, for example, assist professionals and hobbyists with building new LLM applications.\nAs part of BigCode, the team created the [StarCoder and StarCoderBase Large Language Models for Code](https://huggingface.co/blog/starcoder). \n\n## Data Collection and Management Plan\n\n### Overview \nThe primary training dataset used for the BigCode project is The Stack, which was obtained by gathering public code files, issues, and commits from GitHub. \nFor more information on The Stack dataset, visit [this page](https://huggingface.co/datasets/bigcode/the-stack) to request access and view the dataset card.\nTo collect Github repositories, they first extracted a list of repositories from [GHArchive](https://www.gharchive.org/) and subsequently cloned all of them using a large CPU cluster. \nThey also used the data from GHArchive to extract the Github issues. \nThe git commits were gathered from a public BigQuery service. \nAdditionally, they collected a dataset of annotations of several kinds of private information on a subset of The Stack to support our privacy risk mitigation efforts.\n\nThe legal basis for data collection under fair use and with regards to GDPR and the corresponding case law are still evolving. \nIn this context, the data collection and data management plans were carefully crafted with support from leading experts in the open source and legal tech community that participated in the BigCode Legal, Ethics, Governance Working Group in a best-effort approach to reflect current understandings of legal requirements for data collection and management.\n\nThe following sections will dive into the details of how the team approached key data governance activities like data collection, data management & opt-out, and data processing.\n\n### Data Collection\nThe StarCoder model was trained on The Stack v1.2, which exclusively contains 6.4TB of permissively licensed data from GitHub repositories, processed from an original source dataset of 102TB. \nSelecting repositories based on licenses is only the first step, however, so this approach is complemented by also giving repository owners the ability to opt out of having their repositories included in The Stack, described further in the Data Management & Opt-out section.\n- **Data selection**: One of the goals of BigCode is to give developers agency over their source code and let them decide whether or not it can be used to develop and evaluate LLMs.\n  Software developers typically rely on licenses to express how they want their work to be re-used.\n  In particular, developers who choose Open Source licenses often do so because they want their code to be broadly re-used.\n  This motivated us to start by selecting data from repositories that met the following criteria:\n    - The repository has an open source license attached - open source, while chosen for very different reasons by different people, typically indicates a willingness to have one's work reused or adapted\n    - The license does not have an attribution clause - attribution is a difficult technical problem for code LLMs.\n      Since they cannot guarantee that the model will be used in a way that attributes its generations to specific training data in a way that satisfies the intent of the licensor, they chose to only keep licenses without an attribution clause\n- **Data updates**: For as long as the BigCode team is maintaining The Stack dataset, they will provide regular updates to the dataset to remove data that has been flagged since the last version.\n  This includes data that has been opted out, and data that was flagged as containing PII, malicious code or using a non-permissive license since the previous release.\n  The current plan is to update the dataset every 3 months, although the schedule may change based on the volume of requests received.\n  If the team is no longer in a position to continue maintaining the dataset, they plan to stop distributing it in its current format and update its terms of use to limit its range of applications further.\n\n### Data Management & Opt-Out\n\n#### Data Access\n- **What data can be accessed**: the 6.4TB of processed data can be accessed through the Hugging Face Hub, while the original 102TB are only accessible to the stewards of the project for the purposes of enabling the research and to support future internal and external requirements that may arise, for example to search the full dataset to recall licenses, determine code provenance, and attribution.\n- **Conditions for data access**: users are able to inspect the dataset via the [Dataset Card](https://huggingface.co/datasets/bigcode/the-stack#dataset-card-for-the-stack), but are required to agree to the Terms of Use for The Stack before being able to download it.\n  This includes the requirements to:\n    1. abide by the terms of original source code licenses, including attribution clauses when required (The Stack provides provenance information for each data point)\n    2. agree to update copies of The Stack to the most recent usable version specified [here](https://huggingface.co/datasets/bigcode/the-stack/discussions/7)\n    3. include the Terms of Use and require users to agree to it if a copy is to be hosted, shared, or otherwise provided.\n    As of May 3, 2023, The Stack had been downloaded 50,200 times\n\n#### Data Opt-Out\n- **How a data subject request that their data be removed:** Developers that find that their data is in The Stack by using the [Am I In the Stack? website](https://huggingface.co/spaces/bigcode/in-the-stack) can use a custom link that automatically generates an issue in the BigCode opt-out repository for an official opt-out request.\n  You can choose which repos you’d like to remove, as well as your commits and issues. After submitting the issue, your request is added to the queue for removal from all future iterations of The Stack.\n  Additionally, anyone who is concerned about specific data they have encountered in The Stack, for example relating to PII, malicious code, or code that has an incorrect license or attribution can email contact@bigcode-project.org.\nAt the time of the data processing for the StarCoder model training, 44 people had opted out of The Stack and associated repositories were removed.\n\n### Data Processing\nOne significant concern with respect to privacy was the risk that the code LLM may generate private information found in its training data, including private tokens or passwords matched with identifiers or email addresses. \nAdditionally, while users can (and have) requested that data be removed from The Stack dataset because it contains personal data, removing specific information from trained model weights after the fact remains an open technical challenge. \nIn order to minimize this risk, they chose to apply automated PII redaction at the pre-processing stage during training.\n\nThe PII redaction process consisted of the following steps:\n- **Creating an annotated dataset for PII:** they found that neither regular expression-based approaches nor existing commercial software for PII detection met our performance requirements.\n  In doing so, they aimed to balance the constraints of costs (fair compensation), time (the timing and time to complete the work was on the critical path for the project), and quality (to ensure that PII Detection Model training was not impacted). \n- **Collaborating with crowd-workers in a responsible way:** While traditional data annotation services using salaried employees were considered, they decided to work with crowd-workers through Toloka after reviewing several service providers and their compensation practices - and finding that most would not provide sufficient transparency and guarantees about worker compensation.\n  We selected pay and eligible countries of crowd-workers to ensure that:\n    - Absolute hourly wage was always higher than the US federal minimum wage ($7.30)\n    - Hourly wage was equivalent to the highest state minimum wage in the US in terms of purchasing power parity ($16.50 at the time of writing)\n- **Training a PII detection model:** We engaged 1,399 crowd-workers across 35 countries in annotating a diverse dataset for PII in source code.\n  Our PII detection model, trained on 22,950 secrets, achieves 90% F1 score surpassing regex-based tools, especially for secret keys.\n  The PII annotations are available to approved individuals, and researchers and developers that are granted access are expected to uphold ethical standards and data protection measures.\n  By making it accessible, our aim is to encourage further research and development of PII redaction technology.\n\nLearn more about the PII redaction process through this [blog post from Toloka](https://toloka.ai/blog/bigcode-project/).\n\n## Acknowledgments\n\nThis case study is based on the BigCode Governance card, thanks to the efforts of the [hundreds of BigCode participants](https://huggingface.co/bigcode), a living document that will evolve over time with the BigCode project. \nPlease leave any comments in the [HuggingFace Community space](https://huggingface.co/datasets/bigcode/governance-card/discussions) to ask a question or start a conversation about BigCode project governance. \n"
  },
  {
    "path": "book/website/project-design/data-security/data-governance/data-gov-ml.md",
    "content": "(pd-dg-ml)=\n\n# Data Governance for the Machine Learning Pipeline\n\nA Machine Learning (ML) pipeline consists of a series of activities including the collection of data, training of an ML model, and the deployment of the model into use. \nData is integral throughout the ML process and the methods for which data is collected, annotated, processed, and shared will impact individuals and communities who may be represented in or the creators of the data, as well as data users who would like access to the data. \n\nIn addition to the technical decisions and team members involved in data governance, it is also important to think about the wider community involved in an ML project, including the data contributors, data subjects, data stewards, data annotators, and communities impacted by the model outputs.\nWhen possible, a ML team should consider how this wider community can be involved in data, model, and project governance.\nThis can empower more people involved in and impacted by the machine learning pipeline and ensure more effective, sustainable, and equitable practices.\nThe following framework can support the understanding of different community governance opportunities in the ML pipeline.\n\n\n```{figure} ../../../../figures/ml-pipeline-governance-opps.jpg\n---\nheight: 400px\nname: ml-pipeline-governance-opps\nalt: Image of a black coloured pipeline with the title Governance Opportunities in the Machine Learning (ML) Pipeline. The pipeline has a funnel on the left and right side and is divided in three main sections representing the process of building an ML model, which are data collection, model training, and model deployment. At the top, the pipeline includes black boxes with different activities throughout the pipeline such as procure dataset, process and filter data, define the model architecture and training objectives, evaluate the model, and monitor real world use cases. At the bottom of the pipeline in bright blue boxes there are a series of questions like \"whose data is used for training/evaluation? whose is missing?\" These are opportunities to invite the community into data governance to answer the questions together and make group decisions on how to address the questions.\n---\nGovernance Opportunities in the Machine Learning Pipeline. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.11485301](https://zenodo.org/records/11485302).\n```\n\nThis chapter will cover examples of data governance practices for ML for different steps in the pipeline, which may include but not be exclusive to:\n- Data Collection\n- Data Management\n- Data Processing\n\n(pd-dg-ml-dc)=\n## Data Collection\n\nMany ML models are trained using datasets collected by a research team, which may be proprietary, or by using an open dataset that is available for download (sometimes with restrictions on its usage, such as only being available for use in academic settings).\nThe deep learning (DL) family of models, in particular, relies on massive corpuses of data such as text, code, images, sound, and other media.\nThe process of data collection depends on the type and volume of data required and sources for acquisition.\nFor example, a project that uses patient health record data versus a project that uses a dataset of millions of social media posts will require different processes for gaining access to data as well as actually collecting and storing the data.\nMany DL models rely on data scraped from the internet due to the sheer volume of digital content that is available on the web. \nFor example, [ImageNet datasets](https://www.image-net.org/about.php) are sourced from web images from image hosting websites like Flickr, and [LAION datasets](https://laion.ai/faq/) come from web crawling sources like Common Crawl.\nThese methods of data collection through web scraping have raised issues regarding data quality and bias due to the nature of using uncurated Internet data, as well as issues of data rights as web scraped data sets often include copyrighted data or data obtained without consent that may be in violation of the data license and terms of use.\nTo address issues related to respecting data licenses, ML teams should be mindful of using data only when compatible with the license, including open source or permissively licensed data.\nThis can be challenging to accomplish with data that does not have explicit licenses, or for data scraped from the web which may not have the license included in the metadata.\n\n### Governance Tool: [Datasheets for Datasets](https://www.microsoft.com/en-us/research/uploads/prod/2019/01/1803.09010.pdf)\n\nDatasheets are resources accompanying datasets that can provide key information about the motivation to create the dataset, \nthe data collection process, the dataset composition and pre-processing, and legal and ethical considerations when using the data.\nDatasheets help contextualise the resource and are an opportunity for dataset creators to share any concerns, suggestions,\nand other advice regarding responsible use of the dataset.\nThe [Datasheets for Datasets paper](https://www.microsoft.com/en-us/research/uploads/prod/2019/01/1803.09010.pdf) contains a list of example questions that data creators should ask themselves and document in their datasheet.\n\n(pd-dg-ml-dm)=\n## Data Management\n\nOnce data collection is complete, challenges emerge around data storage, access, and making changes to the dataset.\nBecause state-of-the-art ML datasets are very large, they tend to be stored in a central location, often a cloud provider database, and made available for download under certain circumstances.\nIn addition to creating a governance structure for managing access to the dataset to certain users, there is also the challenge of creating a governance structure to allow data creators to request to opt-out their data from the dataset, if the team is interested in providing that capability.\nBecause opting out occurs after a dataset has already been created, it will not remove the data from original versions of the dataset, but can facilitate removal from future versions.\n\n### Governance Tool: [Am I In the Stack?](https://huggingface.co/spaces/bigcode/in-the-stack)\nThis tool was developed by the [BigCode](https://www.bigcode-project.org/) team to help developers inspect The Stack dataset so they can see whether any of their repositories have been included and might be used for training ML models. \nIf that is the case and they would prefer for their data to be removed, developers receive a custom link on the Am I In the Stack? website that automatically generates an issue in the [BigCode opt-out repository](https://github.com/bigcode-project/opt-out-v2) for an official opt-out request. You can choose which repos you'd like to remove, as well as your commits and issues. After submitting the issue, your request is added to the queue for removal from all future iterations of The Stack.\n\n### Governance Tool: [Have I Been Trained?](https://haveibeentrained.com/)\n\nThis tool was developed by [Spawning](https://spawning.ai/) to help artists check if their work is a part of common datasets used to train AI art models and to opt-in or \nopt-out to future training. They maintain a \"registry of non-consenting data\" where individuals and companies can check to see if their data is a part of these datasets.\n\n(pd-dg-ml-dp)=\n## Data Processing\n\nIn order to address some of the problematic aspects of datasets, such as biased or harmful content or existence of personal information, some data processing should be done before the dataset is used for model training, released to a wider audience, or ideally, even before stored on a database.\nAddressing these data quality and privacy issues may be motivated by regulatory compliance like GDPR or a team’s norms and best practices.\nBecause this work, particularly identifying and removing harmful content, may be contextual or reliant on the expertise of specific communities, these tasks should be performed in collaboration with community experts.\nAs an example, when identifying sensitive information for removal from a dataset, a team may identify clear targets regarding an individual's data such as usernames, passwords, and emails.\nHowever, a community from a specific country, or who speak a specific language, or who face a specific disability or form of discrimination may be able to identify additional criteria that should be removed to protect their community members.\nIndividuals from specific geographical or language contexts may also provide expertise on what metadata, such as source attribution or permitted use cases, can support informed and responsible use of a dataset.\n\n### Governance Tool: [BigScience Catalogue of Language Data and Resources](https://oecd.ai/en/catalogue/tools/bigscience-catalogue-of-language-data-and-resources)\n\nThe catalogue visualises through an [interactive world map](https://huggingface.co/spaces/bigscience/SourcingCatalog) the 192 data sources gathered as part of the BigScience project and its natural language text dataset. \nThrough organized public hackathons with resource custodians from around the world, the team collected metadata on 432 different language tags associated with the dataset (each entry can have multiple language tags).\nThe metadata added, such as language location, resource custodian and contact, and license type, was based on the expertise of the local residents and resource experts (primarily librarians) who can provide essential information on the context and content on data in their language. \nLearn more about the methodology from their paper: [Documenting Geographically and Contextually Diverse Data Sources: The BigScience Catalogue of Language Data and Resources](https://arxiv.org/abs/2201.10066).\n\n### Governance Tool: [PII Redaction Dataset](https://huggingface.co/datasets/bigcode/bigcode-pii-dataset)\n\nFiltering out Personally Identifiable Information (PII) such as email addresses and passwords is an important data processing set.\nRather than trying to remove this information from trained model weights after the fact, which is an open technical challenge, teams can choose to remove PII from the datasets before training.\nIn order to perform automated PII redaction, it can help to build a dataset of PII that can be used to develop a rules-based or classifier-based approach to removing PII.\nIn practice, the BigCode project found that neither regular expression-based approaches or commercial software for PII detection met their performance requirements, so they collaborated with Toloka crowd-workers to curate and annotate a PII in source code dataset.\nThis dataset is available to approved individuals, researchers, and developers who are granted access to use this for their own R&D, as long as they uphold ethical standards and data protection measure.\nTo learn more about this work with Toloka crowd workers, read their [blog post on the collaboration](https://toloka.ai/blog/bigcode-project/).\n"
  },
  {
    "path": "book/website/project-design/data-security/data-governance.md",
    "content": "(pd-dg)=\n\n# Data Governance\n\n(pd-dg-prerequisites)=\n## Prerequisites\n\n| Prerequisite | Importance | \n| -------------|----------|\n| [](#rr-rdm) | Helpful |\n\n(pd-dg-summary)=\n## Summary\n\nAs researchers and data practitioners, we need to consider how to make decisions as individuals and within teams and communities for how we collect, manage, apply, and grant access to the datasets we work with.\n\nIn this chapter, we give an overview of data governance best practices for different contexts such as [machine learning](#pd-dg-ml). \nWe will provide guidance for different workflows and give examples of tools demonstrating how different teams have approached data governance activities such as data collection and data processing, which can support the adoption of practices for reproducible and responsible work with data.\n\n(pd-dg-motivation)=\n## Motivation\n\nTeams working with or managing datasets can benefit from tools and best practices for making decisions about the data.\nTo address the array of challenges associated with managing data, data governance tools and frameworks can support this process and also afford more rights to individuals who may be the subjects in or creators of the data as well as communities represented in the data.\n\n"
  },
  {
    "path": "book/website/project-design/data-security/sdp/biological.md",
    "content": "(pd-sdp-biological)=\n# Biological data\n\n(pd-sdp-biological-def)=\n## Definition of biological data\n\nSensitive biological data comes from two specific areas: \n* Nature conservation and biodiversity data\n* Biosafety (biosecurity) data\n\n### Nature conservation and biodiversity data\n\nConservation and biodiversity data could be related to endangered species, protection regulations, international environmental agreements, time and location sensitive disturbances such as during breeding periods.\n\nThese organisms often appear on a sensitive species lists such as the [National Biodiversity Network Atlas sensitive species list for the UK](https://docs.nbnatlas.org/sensitive-species-list/) that has been approved by the UK’s statutory bodies and relevant experts. \nThere could also be species identified on [Biodiversity Action Plans (BAP)](https://jncc.gov.uk/our-work/uk-bap-priority-species/) or red lists of endangered species. \nFor example the [Butterfly Red list of Great Britain](https://butterfly-conservation.org/sites/default/files/red-list.pdf) or the International Union for Conservation of Nature’s Red List of Threatened Species [(IUCN Red list)](https://www.iucnredlist.org/).\n\nBeing on these lists does not necessarily mean that data about these species cannot be shared openly as some organisms may be less harmed if more information is shared about them. \nAn individual risk assessment must be done in each case.\n\nHowever, some examples of threats that could result from sharing biological data and therefore this data needing to be restricted are:\n        \n* **Collection for the pet trade and international wildlife market** - for example, nesting locations of rare birds that might lead to poaching of eggs or the collection of a new species such as fish from a coral reef.\n        \n* **Killing of organisms for recreational hunting, for food and for cultural, social or belief reasons** - for example, killing sharks to reduce human-shark interactions or for shark-fin soup. \n        \n* **Threat of habitat destruction or disturbance by humans for recreational purposes, farming, housing or to stop conservation efforts** - for example, disturbance of habitats by bird watchers leading to a decline in breeding or destruction of forests for monoculture farming. \n        \n### Biosafety\n\nCertain organisms can pose a direct threat to humans, animals, and plants such as diseases or pests. \nThis can also include newly developed organisms such as genetically-modified plants.\nThe whereabouts and the methods of development of these organisms may be considered sensitive.\nAt the same time, it must be considered that it may be important to share this data openly to prevent harm. \n\nSome biosafety data may fall under the confidential data category due to a need to protect the commercial interests of these developed organisms. \nHowever, this unnecessarily limits transparency and public peer review of these datasets, which are then submitted to regulatory authorities @Nielsen2013biosafety. \n\n(pd-sdp-biological-benefits)=\n## Benefits of opening up sensitive biological data\n\nThere are clear benefits to making biological data freely available, including for not-for-profit decision making, education, research and other public benefit. \nTherefore data should only be restricted when harm to the environment, harm to people, or harm to sustainability is possible. \n\nSome types of biological data, particularly related to biodiversity, should not be shared openly. \nThese data should be kept partially or completely private. \nHowever, attempts should be made to provide access to researchers or individuals who can prove a need for these data such as reuse for research purposes or to peer review research.\nResearchers should conduct an assessment of the risks versus benefits of publishing biological data to decide whether (part of the) data can be shared. \n\nEach country will have specific legal restrictions for rare and endangered species, as well as biosafety regulations, that have to be taken into account for each dataset.\n\nThe majority of the biodiversity community feel there are more benefits publishing open datasets as its future reuse could lead to greater conservation opportunities, promote community engagement and reduce duplication of survey efforts @tulloch2018decision.\n\n(pd-sdp-biological-opening)=\n## Opening up sensitive biological data\nThe types of data that need to be considered sensitive include occurrence data surrounding the exact location of rare, endangered or commercially valuable organisms.\n\nIn order to protect sensitive biological data, several measures can be taken: \n- Exact locations for organisms can be generalised in different ways to minimise or take away the potential harm (see [Thorpe et al. 2026](https://doi.org/10.5281/zenodo.17588795)\n  - Decreasing the precision or resolution of the coordinates, for example by 0.1 degree.\n  - Using hexagons around the location (the Discrete Global Grid System) ([Caspari et al. 2024](https://doi.org/10.1038/s41597-024-03354-5))\n  - Obscuring the location by adding a buffer around the point or polygon.\n  - Replacing the coordinates by the name of an administrative unit.\n- Different levels of access can be provided, by providing a general location to the public and more detailed information under restricted access only available to other researchers. \n\nCurrent best practice is discussed by [](https://doi.org/10.15468/doc-5jp4-5g10) [pdf](https://docs.gbif.org/sensitive-species-best-practices/master/en/current-best-practices-for-generalizing-sensitive-species-occurrence-data.en.pdf), who sets out 10 principles for generalising sensitive species occurrence data to enable data sharing.\n\n(pd-sdp-biological-examples)=\n## Examples of projects and issues with biological data\n\n- [Cooke et al. 2017](https://10.1111/cobi.12895) on animal conservation and management\n"
  },
  {
    "path": "book/website/project-design/data-security/sdp/combined.md",
    "content": "(pd-sdp-combined)=\n# Combination of different datasets\n\n(pd-sdp-combined-def)=\n## Definitions of combinations of different datasets\n\nEven when data may not seem sensitive, it can become sensitive through triangulation or data linkage.\n\nIn triangulation, pieces of information within the same dataset are not identifiable on their own, but become identifiable when combined with other data. \nFor example, merging information about a participant's age with information about a particular medical condition may make them identifiable.\n\nIn data linkage, two or more anonymised datasets containing the same individuals are combined, which in turn increases the risk of identification. \nFor example, combining a dataset of hospital episode statistics with a dataset of educational information may make it possible to identify individuals within the dataset.\n\nA useful link about this issue is the section on planning, and particularly triangulation, in the guide for [Research Data and Information management](https://www.jcu.edu.au/rdim/step-1-plan) by James Cook University.\n\n(pd-sdp-combined-examples)=\n## Examples of projects with a combination of different datasets\n\n* [Hardelid 2014](https://doi.org/10.1136/bmjopen-2014-005331) on chronic conditions in children in the UK\n\n## Resources\n* [Privacy Meter](https://github.com/privacytrustlab/ml_privacy_meter), a Github repository with resources that enable users to evaluate the privacy risk of algorithms.\n"
  },
  {
    "path": "book/website/project-design/data-security/sdp/confidential.md",
    "content": "(pd-sdp-confidential)=\n# Confidential data\n\n(pd-sdp-confidential-def)=\n## Definition of confidential data\n\nConfidential data is sensitive data that doesn't identify someone personally, but it is information that still needs to remain private. \n\nConfidential data should not be shared when there are: \n- Commercial constraints (for example, information about how commercial businesses are operated or analyses of commercial products).\n- Security constraints (such as military information that could pose a risk to national security).\n- Ethical considerations (including the question of who needs to have a say in the management of the data, see CARE).\n- Risk of harm to subjects of research (see [](#pd-sdp-biological) for more detailed considerations).\n- Legal constraints (such as data protection acts or copyright regulations).\n\nSome ways to recognise confidential data are:\n* information considered private by an individual. \n* the need to limit availability of the data for specific functions, groups or roles. \n* the need to limit data to certain users based on a 'need to know' basis for business operations.\n\nFor us as individuals, confidential data is information such as passwords, financial information, and phone numbers. \nAll of the information in our medical records that does not personally identify us would also be considered confidential, such as the notes doctors make when we visit them or test results.\n\nFor businesses, confidential data includes trade secrets, investigations, and data protected by intellectual property rights. \nIt can also include security information that relates to national security and military information.\n\nDatasets often contain combinations of personal and confidential data.\n\n## Data sharing agreements\n\nTo exchange or manage confidential data, it may be needed to set up a data sharing agreement covering points such as: \n- (the duration of) data access\n- data transfer\n- ‘ownership’ of and responsibility for resulting collated or aggregated data, as well as an authorship.\n- Accessing the data via secure environments\n\n## More information \n- [Thorpe et al. 2026](https://doi.org/10.5281/zenodo.17588795)\n"
  },
  {
    "path": "book/website/project-design/data-security/sdp/metadata.md",
    "content": "(pd-sdp-metadata)=\n# Metadata\n\n(pd-sdp-metadata-def)=\n## Definition of sensitive metadata\n\n[Metadata](#rr-rdm-metadata-metadata) is the data that provides information about other data. \nThe 'data about data'.\n\nSome examples of metadata are: \n* Information about how the data was created\n* Purpose of the data\n* Times and dates of creation\n* Information about the author of the data\n* Location on a computer network where the data was created\n* Standards used\n* File size\n* Data quality\n* Source of the data\n* Process used to create the data\n\nThese are sometimes categorised into different types of metadata such as:\n* Descriptive metadata: information such as the titles and authors of the data.\n* Structural metadata: Descriptions of types or versions of the data.\n* Legal metadata: Information about copyright and licenses that is on the data.\n* See the [Wikipedia metadata page](https://en.wikipedia.org/wiki/Metadata#:~:text=Metadata%20is%20%22data%20that%20provides,used%20for%20discovery%20and%20identification) for more detailed information.\n\nMetadata can be sensitive if it can personally identify someone, for example the person the data is collected about or the person collecting the data. \nOther sensitive metadata may be information that could lead to identification of where and when the data was collected. \nThis could include geo-location information that is linked to the data.\n\nThere are occasions when metadata is being captured automatically. \nFor example, in digital photos the camera captures information, including exposure information and descriptive information about the photo location. \nTherefore, data owners, collectors and users need to be aware of what metadata is being captured with the data to make sure that they treat any sensitive metadata in line with legal and ethical restrictions. \n\n(pd-sdp-metadata-examples)=\n## Examples of projects with sensitive metadata\n* [Metaphone project](https://threatpost.com/stanford-researchers-find-connecting-metadata-with-user-names-is-simple/103272/) to demonstrate the ease of connecting phone metadata to users names.  \n* [MIT Project to protect sensitive metadata](https://news.mit.edu/2020/protecting-sensitive-metadata-from-surveillance-0226).\n\n"
  },
  {
    "path": "book/website/project-design/data-security/sdp/personal.md",
    "content": "(pd-sdp-personal)=\n# Personal data\n\n(pd-sdp-personal-def)=\n## Definition of personal data\n\nPersonal data is information about living people who can be identified using the data that you are processing, either directly or indirectly.  \nFor example, a person’s name, address or other unique identifier such as their Social Security number. \n\n[“Data related to the deceased are not considered personal data in most cases under the GDPR.”](https://gdpr.eu/eu-gdpr-personal-data/) \n\n### Direct identifiers\n\n[\"A person is directly identifiable if it’s possible to identify them using nothing but information (identifiers) at hand, controlled and processed, without introducing additional data from external sources (for example, first and last name).\"](https://infranet.hr/infranet-blog/direct-identification-of-an-individual-using-personal-data/)\n\nThe information would particularly include, but not limited to:\n* date of birth\n* place/city of birth\n* names of the parents\n* photograph of the face\n\nThe set of attributes would clearly be able to identify the individuals by means of their common traits (like their name, and address) and distinguishable or unique traits (like eye colour, hair colour, or height), even depending on certain contexts (like membership information).\n\n### Indirect identifiers\n\nIndirect identifiers could include health, economic, cultural or social characteristics. \nAny information that, either alone or in aggregate could allow people to identify individuals. \nEspecially when a certain combination of these identifiers and additional ones are used to identify a person, care must be taken to manage the data properly. \nAdditional identifiers could include information from a third party or a different source.\n\n## What does sensitive data look like and how do we deal with it?\n\nParticularly sensitive data include data relating to a person’s:\n* racial/ethnic identity\n* political opinions\n* religious/philosophical beliefs\n* trade union membership\n* genetic and biometric data\n* physical or mental health\n* sexual life or orientation\n\nAs per the design of the [UK data protection](https://www.gov.uk/data-protection), anyone responsible for using personal data is instructed to follow a set of ‘data protection principles’. \nThey should ensure that the information is:\n* used fairly, lawfully and transparently\n* used for specified, explicit purposes\n* used in a way that is adequate, relevant and limited to only what is necessary\n* accurate and, where necessary, kept up to date\n* kept for no longer than is necessary\n* handled in a way that ensures appropriate security, including protection against unlawful or unauthorised processing, access, loss, destruction or damage\n\n(pd-sdp-personal-policies)=\n## Personal data policies\n\nThere are various policies in place in different countries to protect the rights of individuals over their personal data. \n\nFor example, in Australia personal data is regulated under the [Australian Privacy Act 1988](https://www.oaic.gov.au/privacy/the-privacy-act).\nIn the European Union, the [GDPR (General Data Protection Regulation)](https://gdpr.eu/) applies to the processing of personal data. \nSimilarly, in the UK, it falls under the regulation of the [UK Data Protection Act 2018](https://www.legislation.gov.uk/ukpga/2018/12/contents/enacted), which is the UK’s implementation of the GDPR, and may be required to carry out a [Data Protection Impact Assessment (DPIA)](https://ico.org.uk/for-organisations/guide-to-data-protection/guide-to-the-general-data-protection-regulation-gdpr/data-protection-impact-assessments-dpias/what-is-a-dpia/) as a part of their accountability obligations.\nIn the US the protection of sensitive health information is covered in the Health Insurance Portability and Accountability Act (HIPAA), see @filip2023hipaa for a [pdf](https://www.sjsu.edu/research/docs/irb-data-management-handbook.pdf) with detailed guidance.\n\nProcessing means doing anything with a person’s information, including collection, storage, analysis, sharing, deletion and destruction. \nTo ensure that you are up to date with the requirements of managing sensitive data, please review the national/institutional policies that apply to your research. \nSee @Smith2015participantdata for recommended practices for sharing clinical trial data.\n\n(pd-sdp-personal-information)=\n## More information\n* [Data Privacy Handbook](https://utrechtuniversity.github.io/dataprivacyhandbook/) by Utrecht University. \n* CESSDA webinar on [Want to collect personal data? An introduction to processing personal data for research purposes ](https://www.youtube.com/watch?v=B-amFT6DZuU)\n* DARIAH webinar on [Legal&ethical aspects of processing personal data in research](https://www.youtube.com/watch?v=Soe8FnUh4mk&t=592s), particularly 9:50 – 33 min\n\n"
  },
  {
    "path": "book/website/project-design/data-security/sdp/types.md",
    "content": "(pd-sd-types)=\n# Types of Sensitive Data - overview\n\nSensitive data is information that must be protected against unauthorised access.\nThis could be data that personally identifies someone, information that we would not want to openly share with others, or data that might bring harm to other people or organisms.\nProtection of this data may therefore be required for legal or ethical reasons.\n\nWhen measuring how sensitive a data is, different organizations may follow (or be required to follow) certain structure in identifying different levels of sensitive data and information, based on frameworks. \nIn general, the sensitivity levels are broadly classified into three categories:\n* **High sensitivity / highly restricted data** - could include details like sensitive personal data, salary information, bank details, research data with significant commercial value or obligations. \nIf this kind of data is compromised or destroyed in an unauthorized way, it could greatly impact the organizations/individuals involved and they could face repercussions. \nUnauthorized disclosure may result in fines, legal action, reputational damage, economic losses, and other consequences.\n* **Medium sensitivity / restricted data** - could include details like personal data that is not classified as 'sensitive', student/alumni contact details, staff contact details. \nThis kind of data is usually for internal usages only, and if compromised or destroyed in an unauthorized way, would not be as impactful as high sensitivity data on the organizations/individuals involved.\n* **Low sensitivity / internal data** - could include details like non-confidential internal correspondence, working group minutes, internal policies and procedures. \nThis kind of data could also comprise of data intended for public use, like public website contents or press releases.\n\nAccording to the information guidelines provided by [Imperva](https://www.imperva.com/learn/data-security/data-classification/), data could be classified based on content, context or user-based. \n* **Content-based classification** -  involves inspecting and interpreting files and documents looking for sensitive information while reviewing them, and classifying based on that.\n* **Context-based classification** -  involves looking into the metadata to classify, such as the application which created the file, person/people involved in its creation, or the location of its authorization. \nSome questions one can ask while looking for this classification are:\n  * How is the data being used? \n  * Who has the access to it? \n  * When are they accessing it? \n* **User-based classification** -  involves the expertise of judgement made by one or more knowledgeable users in classifying the file or document. \nHence, they would be advising on specifying how sensitive the data is and make necessary changes or edits before they release it.\n\nIn terms of research the most common reasons data falls under the high sensitivity data are:\n* Research data containing personal identifying information, 'personal data' and special categories data as defined in UK and European data protection legislation. \nSuch as involvement of human participants, particularly where the research involves sensitive personal data such as health records\n* Involvement of commercial collaborators, particularly where the data could be construed as competitive intelligence\n* Data relating to species of plants or animals where the release of data may adversely affect rare or endangered species\n* Data likely to harm an individual or community or have a significant negative public impact if released\n* Working under the terms of a non-disclosure agreement\n\nOrganizations usually share guidances and links on storing sensitive data, controlling access to sensitive data, encrypting sensitive data, anonymising sensitive data, transferring sensitive data, and disposing of sensitive data. \nAdhering to the safety protocols are highly essential for ensuring data safety and security. \nYou can learn more about this in the section on [}(#pd-sdpm-privacy).\n\nReproducible research is often thought to require open data or open workflows, but it is possible to work reproducibly within sensitive data projects to demonstrate research quality and create a transparent research record to enable reproducibility.\nThere are a number of ways to do this that still fulfill the legal and ethical requirements of working with sensitive data such as using advanced version control tools within private repositories or data safe havens throughout the project, and considering carefully how the project can be published to protect the privacy needs of the data but demonstrate research quality.\nThese are versions of inner source working in which open collaboration and open communication practices are used to form and record the research lifecycle creating a transparent record.\nTherefore each research project needs to find the best solution for their needs.\n\nThe following sub-chapters give an overview of the types of sensitive data and metadata that need to be identified in datasets and therefore handled securely in research projects.\n\nHere is a short video introducing sensitive data by ELIXIR-UK.\n\n::: {iframe} https://www.youtube.com/embed/2PXFu33IGVU\n:width: 100%\n:::\n"
  },
  {
    "path": "book/website/project-design/data-security/sdp.md",
    "content": "(pd-sdp)=\n# Sensitive Data Projects\n\n(pd-sdp-prerequisites)=\n## Prerequisites\n\n| Prerequisite | Importance | Skill Level | Notes |\n| -------------|----------|------|----|\n| [](#rr-rdm) | Helpful | Beginner |  |\n\n(pd-sdp-summary)=\n## Summary\n\nAs researchers, we need to learn how to work with sensitive data so that we can tackle challenging research questions related to sensitive data. \nIt can often be harder to work with sensitive data due to the regulations and restrictions that are required to protect both the participants and researchers involved in this type of research.\nAbiding by these legal requirements can come with added technical steps such as de-identification of the data or the use of trusted research environments. \n\nThere are considerations that need to be taken as to how to work in an inner source[{term}`def<inner source>`] manner, which builds a closed but transparent research record enabling reproducible research.  \nIn addition, researchers must also plan how to publish sensitive data projects in a [FAIR](#rr-rdm-fair) and as open as possible way.\n\nIn this chapter, we give an overview of [different types of sensitive data](#pd-sd-types). \nWe then go on to describe tools and practices that can help you manage, as well as, work reproducibly in these types of research projects. \n\n(pd-sdp-motivation)=\n## Motivation\nResearchers who are part of sensitive data projects may think that the nature of their data prohibits them from working in an open and reproducible manner. \nWe want to show that, while it may require a bit of extra thinking and management, working openly with sensitive data is possible and should be encouraged.\n\n\n"
  },
  {
    "path": "book/website/project-design/data-security/sdpm/data-privacy-strategies.md",
    "content": "(pd-sdpm-privacy)=\n# Data Privacy Strategies\n\nThere are a number of strategies that you can adopt to **safeguard the privacy** of your research subjects:\n\n(pd-sdpm-privacy-minimisation)=\n## 1. Data minimisation\n* If personal information isn't needed, don't collect it.\n* Periodically review whether you are retaining unnecessary identifying information.\n* When identifying information is no longer needed, safely remove, delete or destroy it.\n\n(pd-sdpm-privacy-retention)=\n## 2. Data retention limits\n* Decide how long you will retain identifiable data before removing direct identifiers, applying more complex anonymisation techniques, or deleting the data altogether.\n* When deleting sensitive data you need to be aware that standard methods for deleting files (for example moving files to the recycle bin and emptying it) are not secure.\nThese deleted files may be recovered. \nUse **software** like BleachBit (Linux, Windows), BC Wipe, DeleteOnClick and Eraser (Windows) or Permanent Eraser or 'secure empty trash' (Mac) to safely delete the data.\nAn alternative is the **physical destruction** of the storage media.\n**Degaussing** disturbs the magnetic alignment of magnetic storage media (such as hard drives and tapes) and may render those unusable. \nIf you [encrypted](#pd-sdpm-privacy-encryption) the data, you can also **delete the encryption key**.\n\n(pd-sdpm-privacy-transfer)=\n## 3. Secure data transfer\n* Before deciding to transfer personal data, you should consider whether the transfer of identifiable data is necessary.\nFor example, can data be de-identified or anonymised? \n* If data cannot be made unidentifiable then you must ensure you have authority to transfer the personal data, and that there are appropriate safeguards in place to protect the data before, during and after transit.\n* Keeping data in one place is safer than transferring it elsewhere. \nConsider whether it is possible to provide access to the data, instead of transferring them outside of your institution.\n* Often your university or institute will provide solutions for secure file transfer. \nContact your research data, privacy or IT support team for guidance.\n* Trusted Research Environment (TRE) platforms can provide secure and transparent access to lsensitive data, such as the [Secure Data Environment](https://digital.nhs.uk/services/secure-data-environment-service) and [OpenSAFELY](https://www.opensafely.org/).\n\n(pd-sdpm-privacy-encryption)=\n## 4. Encryption\n* Encryption provides protection by ensuring that only someone with the relevant encryption key (or password) will be able to access the contents.\n    * Protect on disk level: Bitlocker for Windows, FileVault for MacOS\n    * Protect on “container” level (a folder containing multiple files):  Veracrypt (or Archive for MacOS)\n    * Portable storage: Bitlocker\n    * File level / Exchange information:\n      * Simple method: use 7zip, and pack with a password\n      * More complicated to setup: use PGP tooling (can also be used to securely send email)\n    * See the [Ghent University Encryption for Researchers manual](https://osf.io/nx8km/) for more details and step-by-step guides\n\n(pd-sdpm-privacy-access)=\n## 5. Access permissions\n* Control who has access to which parts of the data, and which type of permissions they have, such as \"read\" vs. \"write\" access.\n* Deny access to sensitive data if that access is no longer needed.\n* Password protection.\n\n(pd-sdpm-privacy-anonymisation)=\n## 6. Anonymisation\nAnonymisation is a process by which identifying information in a dataset is removed. \nIt is used primarily to allow data to be shared or published without revealing the confidential information it contains.\n* Where possible, direct identifiers (such as names, addresses, telephone numbers and account numbers) should be removed as soon as the identifying information is no longer needed. \nYou can delete the data or replace it with pseudonyms. \nFor qualitative data you should replace or generalise identifying characteristics when transcribing interviews.\n* De-identified data that can be re-identified using a linkage file (for example, information linking data subjects to identifiable individuals) is known as pseudonymised data. \nNOTE: In this instance, the linkage file should be encrypted and stored securely and separately from the de-identified research data.\n  * Identification of individuals in pseudonymised or de-identified data may still be possible using combinations of indirect identifiers (such as age, education, employment, geographic area and medical conditions). \nFurther, data and outputs containing small cell counts may be potentially disclosive, particularly where samples are drawn from small populations or include cases with extreme values or relatively rare characteristics.\n   * As such, when intending to share potentially identifiable data or the outputs generated from the data, you may need to consider more advanced anonymisation techniques such as statistical disclosure control (SDC, see [this handbook](https://securedatagroup.org/sdc-handbook/) for more information).\n\n(pd-sdpm-privacy-anonymisation-information)=\n### More anonymisation information  \n* Watch [this webinar by Enrico Glerean](https://www.youtube.com/watch?v=JpMvdddunqI) \n* Watch a presentation on [Amnesia – Data Anonymisation Made Easy](https://www.youtube.com/watch?v=9wu_xGeYsQw) or a webinar on [Amnesia - a tool to make anonymisation easy](https://www.youtube.com/watch?v=9wu_xGeYsQw)\n* Or read an [explanation by the Finnish social science data archive](https://www.fsd.tuni.fi/en/services/data-management-guidelines/anonymisation-and-identifiers/)\n* [Anonymisation step-by-step](https://ukdataservice.ac.uk/learning-hub/research-data-management/anonymisation/anonymisation-step-by-step/)\n*  McGill Data Anonymization Workshop Series: [Reducing Risk: An Introduction to Data Anonymization](https://www.youtube.com/watch?v=IAmxErXPvHU&list=PLfMfJihLOASUMZwKQ32OQkOfTEv20spmH&index=1) and [Ethically sharing qualitative data](https://www.youtube.com/watch?v=eSZzUD4EVMQ&list=PLfMfJihLOASUMZwKQ32OQkOfTEv20spmH&index=3)\n*  [Anonymisation](https://ukdataservice.ac.uk/learning-hub/research-data-management/#anonymisation) by UK Data Services\n*  [Anonymisation and open data: an introduction to managing the risk of re-identification](https://theodi.hacdn.io/media/documents/OPEN-RDP8-Anonymisation-and-open-data_-An-introduction-to-managing-the-risk-of_thVQCgw.pdf) by the Open Data institute (2019)\n* Tools for anonimisation\n   * [Amnesia](https://amnesia.openaire.eu/) (tabular data)\n   * [ARX](https://arx.deidentifier.org/) (tabular data)\n   * [Cornell Anonymization Toolkit](https://sourceforge.net/projects/anony-toolkit/) (tabular data)\n   * [mri_deface](https://surfer.nmr.mgh.harvard.edu/fswiki/mri_deface) (MRI data)\n   * [MITRE Identification Scrubber Toolkit (MIST)](http://mist-deid.sourceforge.net/) (free text medical records)\n   * [Stanford Named Entity Recognizer (NER)](https://nlp.stanford.edu/software/CRF-NER.html) (for unstructured text)\n\n## 7. Synthethic data\nIt is also possible to generate a synethic dataset that mimics a real dataset. \nA syntethic dataset preserves some of the aspects and characteristics of the real data, yet generates a different dataset which can safeguard the original senstive data.\n\n### More synthethic data information\n- Read more about [syntethic data on the Data Impact Blog](https://blog.ukdataservice.ac.uk/not-real-but-really-useful-synthetic-data-a-cost-benefit-analysis-of-its-practical-value/)\n- A webinar on [The Practices of Sharing Synthetic Dataset](https://www.youtube.com/watch?v=0epApx2S5-o) or [Using agent-based models as a simulation tool to generate synthetic data](https://www.youtube.com/watch?v=wk9jd9u9mRY)\n- Tools:\n   - [synthcity](https://github.com/vanderschaarlab/synthcity): A library for generating and evaluating synthetic tabular data\n   - [synthea](https://synthetichealth.github.io/synthea/)\n   - [metasyn](https://github.com/sodascience/metasyn)\n   - [Pointblank](https://posit.co/blog/building-realistic-fake-datasets-with-pointblank/) (Python library)\n\n## More information\n- [Data minimization and de-identification](https://www.rug.nl/digital-competence-centre/privacy-and-data-protection/data-protection/guide-on-data-minimization-and-de-identification-v0-2.pdf) by the University of Groningen\n\n\n"
  },
  {
    "path": "book/website/project-design/data-security/sdpm/informed.md",
    "content": "(pd-sdpm-informed)=\n# Informed consent\n\nInformed, voluntary and fair consent to participate in a study is very important for any [ethical research project](#er) involving human participants.\nIt is through this consent process that research participants can understand what taking part in a specific study will mean for them, and how their data will be handled during the research project.\nEach person can then choose whether to participate using the consent form.\n\nNote that the informed consent form is considered to be personal data and should therefore be handled with the same care as other personal data.\nDo not store the consent forms where you store the rest of the data you collect; use a separate locked cabinet or an encrypted folder for example.\nSee [Digitizing Paper Informed Consent Forms](https://fgb-rdm.nl/rdm/archiving/DigitizingICFs.html) for some considerations when digitising informed consent forms.\n\nIn case you cannot use a written consent form, try to make a recording of verbal consent.\n\n**Consent documentation should include:**\n\n* a participant information sheet and\n\n* a consent form signed by the participant.\n\nThe **participant information sheet** is used to inform participants about the study.\nThe information should be clear and easy to understand and should cover the following:\n* What the project is about.\n* What their participation will involve and what (types of) data you will be collecting.\n* Any risks involved for participants and safeguards to minimise those risks.\n* Assurances about data security and participant confidentiality.\n   * Mention who has access to the data.\n* How the data will be used in the study (for published articles, reports and presentations).\n* Proposed plans for archiving data at the end of the study and potential future secondary reuse of data.\n    * Tiered consent may be a solution here, by allowing the participants to choose what type of information will be shared for reuse.\n* If you work under the General Data Protection Regulation (GDPR), describe participants' rights and how they can exercise those rights, such as the right to data erasure and the right to contact the institution's Data Protection Officer (if present).\n* Details of the organisation overseeing the research.\n* Whom to contact for more information about the study.\n\nThe **consent form** is used to verify that the research participant understands and agrees to participate in the study.\nThe consent form should cover the following points at a minimum:\n* The participant\n    * has read and understood the participant information sheet\n    * has been given the opportunity to ask questions\n    * understands that participation is voluntarily\n    * understands that they may withdraw from the study at any time without giving reasons and without penalty\n    * understands how the data will be managed, shared and archived (as detailed in the information sheet)\n       * to increase the chance of your data to be re-used, do not promise to delete the data but instead ask for consent to retain and share the data (see @Meyer2018personaldata)\n* An action of providing consent.\nThis is often a signatures of both the participant and the researcher, and the date of signing.\nHowever, ticking a simple check box can sometimes also suffice, depending on the type of research.\n\nThink ahead and plan how you will:\n\n* collect, store and manage the data (see [](#rr-rdm-storage))\n\n* control access permissions (see this [short video on access concerns when handling data](https://www.youtube.com/watch?v=seauAMsFizI))\n\n* prepare data for archiving/sharing at the end of the project if possible (see [](#rr-rdm-sharing))\n\n\n(pd-sdpm-informed-resources)=\n## Additional resources and templates\n\n* [Data User Agreement, Open Brain Consent](https://open-brain-consent.readthedocs.io/en/latest/gdpr/data_user_agreement.html)\n* [Ultimate consent form, Open Brain Consent](https://open-brain-consent.readthedocs.io/en/latest/ultimate.html)\n* [Ultimate consent form - GDPR edition, Open Brain Consent](https://open-brain-consent.readthedocs.io/en/stable/gdpr/ultimate_gdpr.html)\n* Webinar on [Consent issues in data sharing](https://www.youtube.com/watch?v=6ji1ceY0eZI) by UK Data Services\n* [Informed Consent](https://qdr.syr.edu/guidance/human-participants/informed-consent) by the Qualitative Data Repository\n* [What is valid consent?](https://ico.org.uk/for-organisations/uk-gdpr-guidance-and-resources/lawful-basis/consent/what-is-valid-consent/) by ICO\n\n\n"
  },
  {
    "path": "book/website/project-design/data-security/sdpm/resources.md",
    "content": "(pd-sdpm-resources)=\n# Resources for working with sensitive data \n\n## Presentations and webinars\n\n* [Presentations](https://www.youtube.com/watch?v=J9kWkzK83i4&list=PLyeHH3bEQqIbgbw75gheV27nFF2ctPPpR&index=1) by [Zosia Beckles](https://youtu.be/J9kWkzK83i4), [Michele Voznick](https://youtu.be/w5v5d6r6irs) and [Tessa Darbyshire](https://youtu.be/jEFu1ykVI_I) on Responsible Data Management: Legal & Ethical Aspects as part of the [Fail to Nail it sessions](https://www.youtube.com/c/AI4ScientificDiscovery).\n* [Presentation](https://www.youtube.com/watch?v=H2mv6q4WwOU&) by Rob Gommans on GDPR and the Processing of (Identifiable) Image, Audio, and Video Data for Scientific Research Purposes.\n* [Presentation](https://youtu.be/_3bufely0c0) by Stephan Heunis on Brain research data and personal data privacy: practical tips to share and protect.\n* [Presentation](https://youtu.be/eAKhI0qde2w?t=1104) by Walter Scholger on the GDPR with resources such as informed consent templates (18:30 - 38:50).\n* [Presentation](https://www.youtube.com/watch?v=PSe2V1KTQ8w&) on handling personal data by Enrico Glerean and Päivi Lindström from Aalto University. \nSee [here](https://www.aalto.fi/en/services/rdm-training) for the full course.\n* [Presentation](https://www.youtube.com/watch?v=J457qBdQ3xo) on the GDPR by Rosalie Salameh.\n* [Presentation](https://vimeo.com/362161972) and [article](https://www.smashingmagazine.com/2017/07/privacy-by-design-framework/ ) on **privacy by design**.\n* [Presentation](https://www.youtube.com/watch?v=2WebuDlzEIw&list=PLG87Imnep1Sln3F69_kBROUrIbT5iderf&index=2) on Ethical and legal issues in data sharing by Hina Zahid.\n* [Slides](https://osf.io/5xhya/) by Hanne Elsen on Privacy and the GDPR in the Research Life Cycle. \n* [Slides](https://www.rd-alliance.org/slides-webinar-how-share-qualitative-data-videos-and-interviews-october-27-2021) on 'How to share qualitative data: videos and interviews'.\n* [Workshop materials](https://osf.io/em3da/) on data de-identification procedures for data sharing.\n* [Presentation](https://www.youtube.com/watch?v=9wu_xGeYsQw) by Manolis Terrovitis on data anonymisation made easy.\n\n## Reading\n\n* [Data Privacy Handbook](https://utrechtuniversity.github.io/dataprivacyhandbook/) by Utrecht University. \n* [Sensitive Data](https://rdmkit.elixir-europe.org/sensitive_data) - from Elixir's RDMKit.\n* [Protecting sensitive data course](https://mantra.ed.ac.uk/protectingsensitivedata/) by [MANTRA](https://mantra.ed.ac.uk/). \n* [Anonymisation and Personal Data](https://www.fsd.tuni.fi/en/services/data-management-guidelines/anonymisation-and-identifiers/) by the Finnish Social Science Data Archive.\n* @Meyer2018personaldata\n* @Tsai2016qualdata\n* ARDC guide on [Publishing Sensitive Data](https://doi.org/10.5281/zenodo.7259742).\n\n* Qualitative Data Repository Guidance on [Human Participants](https://qdr.syr.edu/guidance/human-participants).\n\n* [Data Privacy Handbook](https://utrechtuniversity.github.io/dataprivacyhandbook) for researchers dealing with personal data at Utrecht University (NL) and beyond (work in progress).\n\n"
  },
  {
    "path": "book/website/project-design/data-security/sdpm/sharing-sensitive-data.md",
    "content": "(pd-sdpm-sharing)=\n# Sharing Sensitive Data\n\nIf you plan to share or publish your data you must ensure that your data are appropriate and safe to share. \nFor example, you should consider whether the data can be adequately anonymised, and whether anonymised data will remain useful (see also [](#rr-open-data-barriers)).\n\nAfter applying methods to de-identify and anonymise sensitive data, there may still be a risk of re-identification (see @Meyer2018personaldata). \n\nAn additional safety measure, or alternative to anonymisation, is **applying access controls** to ensure the data are shared appropriately and securely. \nThis may involve finding a data repository that can provide suitable access controls (see [here](https://osf.io/tvyxz/wiki/8.%20Approved%20Protected%20Access%20Repositories/) for a list of protected Access Repositories).\nThese repositories can provide access to the metadata of the project, which allows others to find and [cite the data]( #cm-citable-otherscite-how). \nRestricted or conditional access also provides potential re-users with the information they need to access the data, making the data [FAIR](#rr-rdm-fair). \n\nFor example, conditions to access the data could require the potential data re-user to: \n  * Register and/or provide contact details to ensure reusers are genuine and aware of their responsibilities.\n  * Provide information about how they use the data.\n  * Agree to specific conditions such as data security, privacy, and restrictions included in consent forms.\n\nEven if research involves sensitive data an increasing number of journals now request, or even require, access to underlying research data as part of the article submission process. \n\nFor example: \n* The BMJ [requires authors to make anonymised individual patient data available upon on request](https://www.bmj.com/content/350/bmj.h2373) for all clinical trials. \n* Similarly PLOS journals [require authors to make the data necessary to replicate the study's findings publicly available at the time of publication](https://journals.plos.org/plosone/s/data-availability).\n\n## More information\n* [Reproducibility when data are confidential](https://labordynamicsinstitute.github.io/reproducibility-confidential/#1)\n* [Legal and ethical considerations for sharing research data](https://www.youtube.com/watch?v=7M4_YR7wcFs)\n* [](doi:10.5281/zenodo.17588822)\n* [Assessing risk when sharing data: a guide](https://theodi.org/insights/guides/assessing-risk-when-sharing-data-a-guide/)\n* [](doi:10.1177/25152459251336130); which includes examples and elaborate reasoning for why certain steps are taken\n"
  },
  {
    "path": "book/website/project-design/data-security/sdpm.md",
    "content": "(pd-sdpm)=\n# Managing Sensitive Data Projects\n\n```{figure} ../../../figures/sensitive-data.jpg\n---\nheight: 500px\nname: Dealing with sensitive data\nalt: The image shows a training taking a different track when delaying with sensitive data. This includes encryption, consent, de-identification, synthetic data and data safe havens.\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n## Prerequisites\n\n| Prerequisite |  Importance  |  Skill Level | Notes |\n| ------------ |------------- | ------|----|\n| [](#pd-sdp) | Helpful | Beginner |  |\n\n(pd-sdpm-summary)=\n## Summary\n\nIn this chapter, we describe specific ways that you can manage sensitive data. \n\nThis includes:\n* Informed consent\n* Data Privacy Strategies\n* Sharing sensitive data\n\n(pd-sdpm-motivation)=\n## Motivation\n\nResearchers need to conform to legal and ethical restrictions when working with sensitive data.\nThere are many ways that you can do this and it will depend on the type of data that you are analysing. \n"
  },
  {
    "path": "book/website/project-design/data-security/sdpw.md",
    "content": "\n(pd-sdpw)=\n# Working on Sensitive Data Projects\n\n(pd-sdpw-prerequisites)=\n## Prerequisites\n\n| Prerequisite | Importance | Skill Level | Notes |\n| -------------|----------|------|----|\n| [](#rr-rdm) | Helpful | Beginner |  |\n\n(pd-sdpw-summary)=\n## Summary\n\nIn this chapter, we describe how you can work with sensitive data in a practical way.\nWe cover working on projects that use [trusted research environments (TREs)](#pd-sdpw-trew) such as data safe havens, including writing code and version control in TREs. \n\nThere are also sub-chapters that describe steps that are good to think about at the start of your project, such as how to [ensure that your sensitive files remain secure](#pd-sdpw-sensitive-files) when using GitHub.\nWe also show how you can [safely share your code](#pd-sdpw-sensitive-code), even though it uses sensitive data.\n\n(pd-sdpw-motivation)=\n## Motivation\n\nWorking in sensitive data projects can be challenging and it often requires the development of a bespoke way of working for each project.  \n\nResearchers need to consider how they are going to work collaboratively using Trusted Research Environments and how they can enable reproducible research and publish as openly as possible. \nWe must also consider how to keep our data secure and prevent unintentional sharing of data. \n\n"
  },
  {
    "path": "book/website/project-design/data-security.md",
    "content": "(pd-data-security)=\n# Data Security\n"
  },
  {
    "path": "book/website/project-design/info-management/code-styling.md",
    "content": "(pd-code-styling)=\n# Code Styling\n\nHave you ever opened a code file two years after running an analysis only to find that you have no immediate memory of what it does?\nHave you received analysis files from a collaborator with meaningless file names like `analysis_1final_FINAL.R`, or variables named `x1`, `x2`, `temp`?\n\nConsistent code styling makes your research code easier to read, maintain, and share with collaborators.\nWell-formatted code reduces errors and makes it easier for others (including your future self) to understand your work.\nThis is an important aspect of information management in collaborative research projects.\n\n\nConventions and tools to improve code quality are discussed in detail in [](#rr-code-quality) in [](#rr).\n"
  },
  {
    "path": "book/website/project-design/info-management/filenaming.md",
    "content": "(pd-filenaming)=\n# Naming files, folders and other things\n\n## Prerequisites / recommended skill level\n\nNone.\n\n## Summary\n\nBy naming your files, folders, and other research components consistently and descriptively, you can make your work findable, understandable and reusable by yourself, your collaborators, and other people interested in your research.\nIt allows others to understand what the digital object is about: What the files contain and where to find them. Moreover, by following simple tips for file naming, you can make your files easy for computers to identify and process.\n\n## Motivation and Background\n\nUsing good names is probably the easiest way to improve reproducibility and reusability of your research project.\n\n## Chapter content\n\nThere are three principles to naming things; the first two apply to all kinds of things and the third is optional but valuable for keeping track of your files {cite:ps}`Bryan2015Filenaming`.\n\nFile names should be:\n1. Machine readable\n2. Human readable\n3. Optional: Play well with default ordering\n\n\nBefore we dive into the details of what they mean, let's look at some examples of bad and good file names.\n\n| ❌ Bad          | ✔️ Good |\n| -----------------|-------------------------|\n|`Myabstract.docx` | `2020-06-08_abstract-for-sla.docx` |\n|`Joe’s Filenames Use Spaces and Punctuation.xlsx` | `Joes-filenames-are-getting-better.xlsx` |\n|`figure 1.png` | `Fig01_scatterplot-talk-length-vs-interest.png` |\n|`fig 2.png` | `Fig02_histogram-talk-attendance.png` |\n|`JW7d^(2sl@deletethisandyourcareerisoverWx2*.txt` | `1986-01-28_raw-data-from-challenger-o-rings.txt` |\n\n\n### Machine readable\n\nNames of digital components should be easy to understand for computers.\nComputers like names to have no spaces, deliberate use of delimiters, and no special or accented characters.\nAlso computers (or rather their operation systems) may be case sensitive, so for them `cat.txt` and `Cat.txt` may be different files.\n\nThe file names `Joe´s Filenames Use Spaces and Punctuation.xlsx` and `JW7d^(2sl@deletethisandyourcareerisoverWx2*.txt` shown above use empty spaces and special characters (`´`, `^`, `(`, `@`,`*`), which can lead to difficulties, for example when you want to send it someone else's computer.\n\nGood file/folder names are easy to search for (also using regular expressions) and easy to compute on (for example by splitting on `_` or `-` characters).\n\n### Human readable\n\nTo achieve human readability, it is helpful to have short (< 25 characters) but descriptive names that contain information on the content of the file/folder.\nWord boundaries in the file name can be indicated by using medial capitalization called camel case, for example \"FileName\", or underscore, for example \"file_name\".\nFile names should not have any spaces or other special characters.\n\nFor web links or Uniform Resource Locator (URL), this concept is called [clean URL](https://en.wikipedia.org/wiki/Clean_URL).\n\n### Play well with default ordering\n\nTo create a good default ordering adding a number or date at the beginning of the name is often a good idea.\nThis keeps our files sorted in ascending order based on file versions or in chronological order.\nFor instance, we often organize all our slide decks created on different dates in the same folder.\nTo sort them by their date of creation, we can start the file names with `year-month-day` (for example `2020-02-21`).\nWe recommend using something like the [ISO 8601 standard: YYYY-MM-DD](https://en.wikipedia.org/wiki/ISO_8601) for dates.\nIf you use other numbers, we recommend left padding them with zeros, because your computer will order `003 < 004 < 020 < 100` as opposed to `100 < 20 < 3 < 4`.\n\nNaming folders according to a logical number can lead to a mess if the ordering changes in the future.\nFor example, there is a folder with the book chapters `01_introduction`, `02_naming_files`, and `03_naming_folders`. The author writes a preface of the book and decides to squeeze it before the introduction chapter. This would mean that they will have to rename all the files to maintain the intended order.\nThis happens a lot and clearly, this has more downsides than upsides.\n\n## Checklist\n\nHere are some tips for naming files within a research project, which are both human- and machine-readable {cite:ps}`Cowles2019Filenaming,Hodge2015Filenaming`:\n\n- Name your files consistently\n- Keep it short but descriptive\n- Avoid special characters or spaces to keep it machine-compatible\n- Use capitals or underscores to keep it human-readable\n- Use consistent date formatting, for example ISO 8601: `YYYY-MM-DD` to maintain default order\n- Include a version number when applicable\n- Share/establish a naming convention when working with collaborators\n- Record a naming convention in your data management plan\n\n\n## What to learn next\n\nWant to build a folder with all the files from your research project?\nCheck out our chapter on {ref}`research compendia<rr-compendia>`.\n"
  },
  {
    "path": "book/website/project-design/info-management.md",
    "content": "(pd-information-management)=\n# Information Management\n"
  },
  {
    "path": "book/website/project-design/missing-data/missing-data-checklist-resources.md",
    "content": "(pd-missing-data-checklist-resources)=\n# Checklist and Resources\n\n## Checklist \n- Identify whether your dataset has missing data; use visualisation tools to help you {ref}`pd-missing-data-visualising-missingness` \n- Try to determine what type of missing data there is (MCAR/MAR/MNAR) as described in {ref}`pd-missing-data-structures`, and don't forget about {ref}`pd-missing-data-structured-missingness`\n- Choose an appropriate missing data handling method; you can use {ref}`pd-missing-data-methods` as a starting point for ideas\n- Apply the missing data handling method and then continue with your analyses! \n\n<!-- Below commented out as I am not sure it is necessary: \n\n## References by Sub-Chapter\n{ref}`pd-missing-data`\n.. bibliography::\n   :filter: False\n\n   Pederson2017missingdata\n   Buuren2018imputation\n\n- {cite:ps}`Pederson2017missingdata`\n- {cite:ps}`Buuren2018imputation` \n\n{ref}`pd-missing-data-structures`\n- {cite:ps}`Rubin1976missingdata`\n\n{ref}`pd-missing-visualising-missingness`\n- [missingno python package](https://github.com/ResidentMario/missingno)\n- ggplot, visdat, and naniar\n-  \n\n{ref}`pd-missing-data-methods`\n- {cite:ps}`Joel2022missingdatahandling\n- {cite:ps}`Woods2024multipleimputation`\n- {cite:ps}`Pigott2001missingdatamethods`\n- {cite:ps}`vanBuuren2011mice`\n- {cite:ps}`Azur2011mice`\n- {cite:ps}`Wulff2017mice`\n- {cite:ps}`White2011mice`\n\n{ref}`pd-missing-data-structured-missingness`\n- {cite:ps}`Mitra2023structuredmissingness`\n- {cite:ps}`Jackson2023structuredmissingness`\n--> \n\n## References\n\nCoding segments of this chapter were in part created thanks to several online tutorials which were used as a reference: \n- [Visualizing Missing Data](https://www.kaggle.com/code/selahattinsanli/visualizing-missing-data/notebook): A python notebook exploring the use of the missingno library. \n- [Gallery of Missing Data Visualisations](https://cran.r-project.org/web/packages/naniar/vignettes/naniar-visualisation.html): A tutorial on missing data visualisation in R. \n- [Imputing Missing Data with R; MICE package](https://datascienceplus.com/imputing-missing-data-with-r-mice-package/) \n- [Intro to MICE: An Imputation Strategy](https://www.kaggle.com/code/shilongzhuang/intro-to-mice-an-imputation-strategy/notebook): A short notebook introducing implementing MICE in python. \n- Lastly, the scikit-learn documentation is incredibly helpful and detailed with regards to implementing missing data handling in python: \n  - [6.4. Imputation of missing values](https://scikit-learn.org/stable/modules/impute.html)\n  - [Imputing missing values with variants of IterativeImputer](https://scikit-learn.org/stable/auto_examples/impute/plot_iterative_imputer_variants_comparison.html)\n  \nOther textbook and paper references used, that have not been previously directly cited: \n- On types of missing data {cite:ps}`Bland2015medicalstatistics,Mack2018patientregistries`\n- On multiple imputation {cite:ps}`deGoeij2013multipleimputation,Austin2021multipleimputation`\n\n\n(pd-missing-data-learn)=\n## What to Learn Next\n\nIf you happen to be handling sensitive data in your project, check out the {ref}`pd-sdpw` chapter. \n\nAlternatively, if you want to make your research project and data analysis pipeline more reproducible, see the chapter on {ref}`rr-make`, a build automation tool.  \n\n\n(pd-missing-data-reading)=\n## Further Reading\n\n- [Flexible Imputation of Missing Data](https://stefvanbuuren.name/fimd/): This is a much more in-depth look at missing data imputation that goes into further characterising data, including mathematical definitions, and describing data imputation methods. \n- [Getting Started with naniar](https://naniar.njtierney.com/articles/naniar.html#tidy-missing-data-the-shadow-matrix): More R functions to visualise Data Missingness, including one using decision trees to map out the proportion of missingness in a variable based on all other variables. \n- The papers cited throughout this chapter are all good resources for further reading. The original paper on MICE {cite:ps}`vanBuuren2011mice` and the review papers on missing data handling {cite:ps}`Pigott2001missingdatamethods, Joel2022missingdatahandling` are especially great resources.  \n- For more R visualisation and imputation packages see:\n   - [mi](https://cran.r-project.org/web/packages/mi/index.html)\n   - [Amelia](https://cran.r-project.org/web/packages/Amelia/index.html)\n   - [missforest](https://cran.r-project.org/web/packages/missForest/index.html)\n- The Turing-Roche partnership has some resources on structured missingness:\n   - See *#ExplainToMe: The Problem of Structured Missing Data* for a great animated overview\n    ::: {iframe} https://www.youtube.com/embed/nlevyS1GLlQ?si=4exk2HIvU1-5y004\n    :width: 100%\n    :::\n   - Papers on structured missingness (that were cited previously): {cite:ps}`Mitra2023structuredmissingness` and {cite:ps}`Jackson2023structuredmissingness`\n   - For more in-depth recordings from the Turing-Roche Knowledge Series see: \n     - *Modern Topics on Missing Data*, which also provides a brief overview of missing data:\n        ::: {iframe} https://www.youtube.com/embed/Cbj3X5wBeEg?si=ILs6NMeNX1FPkqnW\n        :width: 100%\n        :::\n     - *Structured Missingness Challenges in Data Integration*: \n        ::: {iframe} https://www.youtube.com/embed/lnLd7LLkmDY?si=OjFgZZhgqCBoNLA1\n        :width: 100%\n        :::\n\n"
  },
  {
    "path": "book/website/project-design/missing-data/missing-data-methods.md",
    "content": "(pd-missing-data-methods)=\n# Missing Data Handling Methods\nStudies can be designed to be robust to missing data, such that any missingness will have a limited effect and bias on any results. Frequently, this is not possible. Thus, this sub-chapter provides an overview of some missing data handling methods. Additionally, discussing these methods can quickly get very technical; we will do our best to avoid using jargon and leave the technical explanations to the great, already existing, resources out there, linked in {ref}`pd-missing-data-checklist-resources`. \n\n(pd-missing-data-methods-deletion)=\n## Deletion\nThe simplest way of handling missing data would be to remove any rows or data entries that have missing values in any variables of interest. This is also known as listwise deletion and complete-case analysis {cite:ps}`Joel2022missingdatahandling`. However, this may greatly reduce the available data for analyses, introduce or increase bias, and decrease representation {cite:ps}`Woods2024multipleimputation`. Nevertheless this is an appropriate option MCAR data. \n\nPairwise deletion, or available case analysis, only involves removing data entries as the need arises {cite:ps}`Pigott2001missingdatamethods`. This method does allow using more of your data, but has a lack of consistency in results and can result in one or more variable being explained by others (via a linear combination). \n\n(pd-missing-data-methods-imputation)=\n## Imputation\nImputation refers to \"filling in\" any missing values. Many ways of imputing missing data exist: \n\n```{figure} ../../../figures/missing-data-handling-diagram.png\n---\nheight: 500px\nname: missing-data-handling-diagram\nalt: >\n  Flowchart about Missing Data Handling Techniques, adapted from Joel and others, 2022.\n  The diagram presents three main strategies: Deletion, Imputation, and Built-in.\n  Under Deletion, two methods are listed: Listwise Deletion and Pairwise Deletion.\n  The Imputation branch splits into five subtypes: Single Imputation (for example, mean, median, mode, LOCF-Last Observation Carried Forward, NOCB-Next Observation Carried Backward), Multiple Imputation, Model-Based Imputation (for example, regression, k-nearest neighbor, hot-deck, maximum likelihood, expectation maximization), Machine Learning Imputation (for example, artificial neural networks, deep learning), and Optimization Algorithm Imputation (for example, genetic algorithm, particle swarm optimization, matrix completion).\n  The Built-in branch includes Decision Tree Methods.\n---\nDiagram of missing data handling techniques, created by Joel et al. {cite:ps}`Joel2022missingdatahandling`. Abbreviations: LOCF - Last Observation Carried Forward, NOCB - Next Observation Carried Backward.Used under a CC-BY 4.0 licence. DOI: 10.15157/IJITIS.2022.5.3.971-1005. \n```\n\nSingle imputation involves imputing a single value per missing value. These methods are easy to implement and suitable when there are a small number of missing values in a large dataset.\n\nIn contrast, multiple imputation methods can generate several values for each missing value. This means that multiple imputation methods can also have an average value and variance assigned to each imputed value, thereby giving the option to test the stability of downstream analyses. One popular multiple imputation method is Multivariate Imputation by Chained Equations (MICE), which is explained {ref}`below <pd-missing-data-methods-mice>`. \n\n<!--- \nAnother method is Hot-deck, which involves using values from matching or most similar rows, to impute missing values.\n-->\n\nThe more complicated imputation methods, such as those under the model-based, machine learning and optimization algorithm imputation headings tend to perform better when there are many missing values and can handle many types of missing data. These are harder to implement and usually require very large sample sizes to produce consistent results. \n\n```{note}\nSome model-based methods can also be used to directly estimate model parameters for further downstream analyses (rather than directly calculating values to impute). \n```\n\nGreat care should be taken with imputation methods, as they may introduce or further amplify existing bias. For instance, in our sample dataset, those with the most severe cognitive decline were unable to attend the follow-up visit to get their cognition assessed. If their values were imputed using everyone else's, their values would be considerably lower than in reality. \n\n```{note}\nIt is important to always consider whether there is a specific mechanism behind the missing data!\n```\n\n(pd-missing-data-methods-mice)=\n### MICE\n\nMICE works iteratively to impute data.\nIt uses the most complete data to inform the values of increasingly less complete entries.\nThis is done iteratively in cycles, such that at the end of each cycle there is one set of imputed values {cite:ps}`vanBuuren2011mice`.\nA slightly more detailed explanation follows below.\n\nThe first step of a cycle involves filling in the missing values of all variables, using a simple method.\nThen, the variable with the least number of missing values are set back to missing.\nThe observed values of that variable are regressed on variables in the rest of the dataset.\nImputed values are then estimated using this regression model, and the missing values are replaced {cite:ps}`Azur2011mice`.\nA different type of regression can be used for each variable, such that each variable is handled separately and can be assigned a unique distribution.\nThis imputation also includes some randomness to capture the uncertainty of the imputed  {cite:ps}`Wulff2017mice`.\nNext, the variable with the 2nd least number of missing values are set back to missing and imputed as described previously, and so on.\nThis is done iteratively, even after all missing values have been imputed.\nAt the end of a set number of iterations over all variables (for example, 50 iterations), the cycle is complete and each missing value now has an unbiased estimated imputed value.\n\nOften, MICE is done repeatedly, such that an average value and variance are obtained per imputed value.\nTherefore, 5 cycles may be completed, so that there are 5 imputed values per missing data point.\nSimulations can also be used to estimate the performance of MICE in a given dataset, and determine whether values are imputed within a certain tolerance.\nAnother method of evaluating the imputation is by comparing the distributions of the original and the imputed data.\nIf the distributions are quite similar, then the imputed values match.\n\n:::{note} Example Imputation\n:class: dropdown\n\nBelow we provide code implementation of imputing missing values in our example dataset (introduced in {ref}`pd-missing-data-structures`) using the R mice package {cite:ps}`vanBuuren2011mice`:\n\n```R\n# use mice to create 5 imputed datasets (m=5) using predictive mean matching (meth='pmm') and 50 maximum iterations\ntemporary_dataset <- mice(fictional_dataset,m=5,maxit=50,meth='pmm',seed=500)\n# impute the values using the first of the five datasets\nimputed_dataset <- complete(temporary_dataset,1)\n```\nWhich has the following output: \n\n| Participant Number | Age | Diastolic Blood Pressure | Systolic Blood Pressure | Blood Test Result | Motor Score | Cognitive Score |\n|--------------------|-----|--------------------------|-------------------------|-------------------|-------------|-----------------|\n| 1                  | 56  | 82                       | 118                     | <span style=\"color:#0a58a6;\"><strong>Positive</strong></span>          | 10          | 35              |\n| 2                  | 78  | 87                       | 134                     | <span style=\"color:#0a58a6;\"><strong>Negative</strong></span>          | 32          | 29              |\n| 3                  | 85  | <span style=\"color:#0a58a6;\"><strong>83</strong></span>                       | <span style=\"color:#0a58a6;\"><strong>134</strong></span>                     | <span style=\"color:#0a58a6;\"><strong>Negative</strong></span>          | 27          | <span style=\"color:#0a58a6;\"><strong>22</strong></span>              |\n| 4                  | 43  | 83                       | 121                     | Negative          | 15          | 36              |\n| 5                  | 67  | 86                       | 131                     | Positive          | 20          | 25              |\n| 6                  | 82  | 92                       | 133                     | Negative          | 26          | <span style=\"color:#0a58a6;\"><strong>22</strong></span>              |\n| 7                  | 88  | <span style=\"color:#0a58a6;\"><strong>92</strong></span>                       | <span style=\"color:#0a58a6;\"><strong>133</strong></span>                     | Positive          | 34          | <span style=\"color:#0a58a6;\"><strong>25</strong></span>               |\n| 8                  | 71  | <span style=\"color:#0a58a6;\"><strong>87</strong></span>                       | <span style=\"color:#0a58a6;\"><strong>133</strong></span>                     | Negative          | 33          | 22              |\n\nThe average of all 5 imputed datasets is as follows: \n\n| Participant.Number | Age | Diastolic Blood Pressure | Systolic Blood Pressure | Blood Test Result | Motor Score | Cognitive Score |\n|--------------------|-----|--------------------------|-------------------------|-------------------|-------------|-----------------|\n| 1                  | 56  | 82                       | 118                     | <span style=\"color:#0a58a6;\"><strong>Negative</strong></span>          | 10          | 35              |\n| 2                  | 78  | 87                       | 134                     | <span style=\"color:#0a58a6;\"><strong>Negative</strong></span>          | 32          | 29              |\n| 3                  | 85  | <span style=\"color:#0a58a6;\"><strong>83</strong></span>                     | <span style=\"color:#0a58a6;\"><strong>131</strong></span>                   | <span style=\"color:#0a58a6;\"><strong>Negative</strong></span>          | 27          | <span style=\"color:#0a58a6;\"><strong>28</strong></span>            |\n| 4                  | 43  | 83                       | 121                     | Positive          | 15          | 36              |\n| 5                  | 67  | 86                       | 131                     | Positive          | 20          | 25              |\n| 6                  | 82  | 92                       | 133                     | Positive          | 26          | <span style=\"color:#0a58a6;\"><strong>28</strong></span>            |\n| 7                  | 88  | <span style=\"color:#0a58a6;\"><strong>87</strong></span>                     | <span style=\"color:#0a58a6;\"><strong>127</strong></span>                   | Positive          | 34          | <span style=\"color:#0a58a6;\"><strong>29</strong></span>            |\n| 8                  | 71  | <span style=\"color:#0a58a6;\"><strong>86</strong></span>                     | <span style=\"color:#0a58a6;\"><strong>133</strong></span>                     | Positive          | 33          | 22              |\n\nwhere for the blood test results, the most common value was chosen. The variance of the missing values was:\n\n| Participant Number | Diastolic Blood Pressure | Systolic Blood Pressure | Cognitive Score |\n|--------------------|--------------------------|-------------------------|-----------------|\n| 3                  | <span style=\"color:#0a58a6;\"><strong>1.52</strong></span>                     | <span style=\"color:#0a58a6;\"><strong>5.50</strong></span>                    | <span style=\"color:#0a58a6;\"><strong>7.22</strong></span>            |\n| 6                  | 0.00                     | 0.00                    | <span style=\"color:#0a58a6;\"><strong>6.69</strong></span>            |\n| 7                  | <span style=\"color:#0a58a6;\"><strong>3.58</strong></span>                     | <span style=\"color:#0a58a6;\"><strong>7.16</strong></span>                    | <span style=\"color:#0a58a6;\"><strong>6.11</strong></span>            |\n| 8                  | <span style=\"color:#0a58a6;\"><strong>1.79</strong></span>                     | <span style=\"color:#0a58a6;\"><strong>1.22</strong></span>                    | 0.00            |\n\n\nTherefore, the variance was quite high. However, this is not the ideal dataset to be using MICE. In fact, MICE is suited best for MAR data and as we know our example dataset has all 3 types of data missingness. \n\nIn a more realistic dataset, the function parameters can be adjusted to improve the estimated values. For instance, the method of imputation can be changed to a Bayesian linear regression of multilevel model if this would be more appropriate for your data. It may also be more appropriate to create more imputed datasets, if there is a high level of missingness in the data {cite:ps}`White2011mice`. MICE has been thoroughly developed and implemented in R. It is even easy to pool the results of downstream analyses, by fitting a model to each of the imputed datasets and then combining the results together.\n\n---\n\nUsing MICE in python is also available, but is an experimental feature available in [scikit-learn](https://scikit-learn.org/stable/modules/impute.html), via the IterativeImputer class: \n\n```python\n# explicitly require this experimental feature to use IterativeImputer\nfrom sklearn.experimental import enable_iterative_imputer  \n# now you can import normally from sklearn.impute\nfrom sklearn.impute import IterativeImputer\n\n# Remap \"Blood Test Result\" column, so it is expressed as a number and is compatible with IterativeImputer\ndf_fictional_dataset['Blood Test Result'] = df_fictional_dataset['Blood Test Result'].replace({'Negative': 0, > 'Positive': 1})\n\n# initialize the imputer\nimp = IterativeImputer(max_iter=50, random_state=500, sample_posterior=True, keep_empty_features=False) \n# train and fit the imputer in one step\nimputed_values = imp.fit_transform(df_fictional_dataset)\n\n# instantiate dataframe by copying original\ndf_imputed_dataset = df_fictional_dataset.copy()\n# replace values in dataframe based on fit_transform output\ndf_imputed_dataset.iloc[:, :] = imputed_values\n\n```\nwhich gives us:\n\n Participant Number | Age | Diastolic Blood Pressure | Systolic Blood Pressure | Blood Test Result | Motor Score | Cognitive Score |\n--------------------|-----|--------------------------|-------------------------|-------------------|-------------|-----------------|\n 1                  | 56  | 82                       | 118                     | <span style=\"color:#0a58a6;\"><strong>Positive</strong></span>                 | 10          | 35              |\n 2                  | 78  | 87                       | 134                     | <span style=\"color:#0a58a6;\"><strong>Positive</strong></span>                 | 32          | 29              |\n 3                  | 85  | <span style=\"color:#0a58a6;\"><strong>85</strong></span>                       | <span style=\"color:#0a58a6;\"><strong>155</strong></span>                     | <span style=\"color:#0a58a6;\"><strong>Positive</strong></span>                 | 27          | <span style=\"color:#0a58a6;\"><strong>23</strong></span>              |\n 4                  | 43  | 83                       | 121                     | 0                 | 15          | 36              |\n 5                  | 67  | 86                       | 131                     | 1                 | 20          | 25              |\n 6                  | 82  | 92                       | 133                     | 0                 | 26          | <span style=\"color:#0a58a6;\"><strong>91</strong></span>              |\n 7                  | 88  | <span style=\"color:#0a58a6;\"><strong>107</strong></span>                      | <span style=\"color:#0a58a6;\"><strong>157</strong></span>                     | 1                 | 34          | <span style=\"color:#0a58a6;\"><strong>30</strong></span>              |\n 8                  | 71  | <span style=\"color:#0a58a6;\"><strong>64</strong></span>                       | <span style=\"color:#0a58a6;\"><strong>127</strong></span>                     | 0                 | 33          | 22              |\n\nThe IterativeImputer class allows for both univariate and multivariate imputations and encompasses many different imputation methods (function parameters specify which is being used). The training step of the imputer can also be done separately to fitting (by using the imp.fit function first, and then imp.transform). This means that the training dataset can also be different to what is then provided to be imputed. \n\nIn the example above, we are showing the results from one MICE cycle. In order to obtain several cycle results (or multiple imputed values), then you need to manually apply it several times with different random seeds when sample_posterior=True. This is not shown here for brevity. \n:::\n\n(pd-missing-data-methods-summary)=\n## Summary\n\nIndeed, this is a very vast area of research, with many proposed methods available; if you are interested in finding out more please see {ref}`pd-missing-data-checklist-resources`. Hopefully, this sub-chapter acts as a useful starting point! \n"
  },
  {
    "path": "book/website/project-design/missing-data/missing-data-structured-missingness.md",
    "content": "\n(pd-missing-data-structured-missingness)=\n# Structured Missingness \n\nAn alternative way of characterising missing data, known as structured missingness (SM), has been pioneered by researchers of the [Turing-Roche Partnership](https://www.turing.ac.uk/research/research-projects/alan-turing-institute-roche-strategic-partnership). SM arises in data that is MCAR, MAR or MNAR, and whose missingness has some structure or pattern {cite:ps}`Mitra2023structuredmissingness`. Specifically, standard definitions of missinginess mechanisms (such as those introduced in {ref}`pd-missing-data-structures`) assume that the missingness of one variable is independent of the missingness in another, when conditioning on the relevant data. In contrast, the missingness of a variable can depend on the data *and* the missingness of other variables in SM {cite:ps}`Jackson2023structuredmissingness`. \n\n\nThis is common in research contexts where data is combined from multiple studies or sources. For instance, many large-scale healthcare studies are multimodal and attempt to include a diverse set of patients, therefore capturing data for a heterogeneous group of individuals. Therefore, data is often collected at multiple time points and multiple sites, where different measurements may be taken, such as clinical, genomic or imaging measures. Our example dataset (introduced in {ref}`pd-missing-data-structures`) is also an example of SM. \n\n> **Example**: The missing values in the blood test results, blood pressure readings, and cognitive scores are all examples of SM. The blood test results (MCAR) are due to batch failure. The cognitive score missing values (MNAR) are missing in participants with significant cognitive decline. The blood pressure readings (MAR) are missing in participants that could not attend the clinic due to being older and having more motor dysfunction. Therefore, the missingness in all these variables are *not* equally likely for all individuals, even after conditioning on the relevant data. The missingness has some information that can be leveraged in further analyses and this would be also considered as SM. \n> \n> Moreover, the missingness present here is directly related to digital health equity and fairness, as certain participants were unable to attend due to differences in accessibility. Therefore, this example also demonstrates potential ethical consequences and importance of analysing data missingness by interrogating the missingness structure or patterns.  \n>\n> | Participant Number | Age | Diastolic Blood Pressure | Systolic Blood Pressure | Blood Test Result                                  | Motor Score | Cognitive Score                                  |\n> |--------------------|-----|--------------------------|-------------------------|---------------------------------------------------|-------------|-------------------------------------------------|\n> | 1                  | 56  | 82                       | 118                     | <span style=\"color:red;\"><strong>N/A</strong></span> | 10          | 35                                              |\n> | 2                  | 78  | 87                       | 134                     | <span style=\"color:red;\"><strong>N/A</strong></span> | 32          | 29                                              |\n> | 3                  | 85  | <span style=\"color:red;\"><strong>N/A</strong></span> | <span style=\"color:red;\"><strong>N/A</strong></span> | <span style=\"color:red;\"><strong>N/A</strong></span> | 27          | <span style=\"color:red;\"><strong>N/A</strong></span> |\n> | 4                  | 43  | 83                       | 121                     | Negative                                           | 15          | 36                                              |\n> | 5                  | 67  | 86                       | 131                     | Positive                                           | 20          | 25                                              |\n> | 6                  | 82  | 92                       | 133                     | Negative                                           | 26          | <span style=\"color:red;\"><strong>N/A</strong></span> |\n> | 7                  | 88  | <span style=\"color:red;\"><strong>N/A</strong></span> | <span style=\"color:red;\"><strong>N/A</strong></span> | Positive                                           | 34          | <span style=\"color:red;\"><strong>N/A</strong></span> |\n> | 8                  | 71  | <span style=\"color:red;\"><strong>N/A</strong></span> | <span style=\"color:red;\"><strong>N/A</strong></span> | Negative                                           | 33          | 22                                              |\n>\n> Not all forms of structured missingness can have the same consequences on data. For instance, a complete case analysis may have bias introduced due to the missing blood pressure readings (MAR) and cognitive score (MNAR) values, while the blood test (MCAR) values would not introduce bias, but would decrease statistical power. MAR data may introduce bias by selecting a non-representative subset of the data. This is similarly the case for MNAR, but as the mechanism behind the missingness is not apparent, handling this bias in subsequent analysis can be challenging.  \n\n\nMany datasets, fusing data from multiple sites and modalities, do take care to follow a certain design and data collection process. However, machine learning methods perform best with large datasets. It is common practice for a machine learning model to include data from many studies, often with different designs and variables. Missing values may therefore include information in and of themselves; they may be related to sampling methodologies or reflect population characteristics. Traditional imputation methods, such as those introduced in ref{`pd-missing-data-methods`}, frequently are not appropriate for handling SM and do not take advantage of the information inherent in SM {cite:ps}`Mitra2023structuredmissingness`. SM also has consequences for downstream analyses; if there is bias to the SM mechanisms, the fairness of the model would be in question. Further research is required to identify appropriate methods for universally handling SM and in defining SM within the MCAR, MAR, and MNAR framework {cite:ps}`Jackson2023structuredmissingness`. \n\n```{figure} ../../../figures/missing-data-structured-missingness.png\n---\nheight: 500px\nname: missing-data-structured-missingness\nalt: \n---\nOverview of the structured missingness (SM) life cycle [Text adapted from: {cite:ps}`Mitra2023structuredmissingness`]. **A.** In a given dataset, data may come from different sources and modalities. Some examples are electronic medical records (EMR), wearable devices, or social media. Data may not be collected at the same time or for the same individuals in each case, which may result in both random and SM when joining these data sources together. Researchers are working on developing tools to minimize the effects of SM on any downstream analysis. **B.** Unique models can be built using different combinations or portions of datasets. However, SM may affect how models learn from data and cause bias. Researchers similarly need to develop tools that handle and adapt SM appropriately. **C.** These models can then be used to perform analysis, inferences, and predictions. Effective data imputation can have a large impact on results. Therefore, it is important to evaluate and benchmark the consequences of data imputation.  **D.**  Often the end goal of a scientific exploration is to understand causality between different variables. Inferences obtained can provide the foundation for determining causality and counterfactuals, but can be compromised by the presence of SM. The SM life cycle then repeats as these insights can be used to further understand the missingness of the data.  \n\nTherefore, developing tools that address SM at every step of the cycle is important so that insights and analysis is unbiased. Researchers are trying to solve these different SM challenges. \n```\n\n\n(pd-missing-data-structured-missingness-summary)=\n## Summary\nSM is a new and expanding area of research that aims to improve large-scale statistical and machine learning analyses, by reducing model degradation and bias. "
  },
  {
    "path": "book/website/project-design/missing-data/missing-data-structures.md",
    "content": "(pd-missing-data-structures)=\n# Missing Data Structures\n\nThis subchapter introduces the main missing data structures. In order to decide on how to best handle any missing data, understanding our data and any context in how the data was acquired is important. To that end, data can be usually classified into three main types based on why the data may be missing: \n1. [Missing Completely at Random (MCAR)](#pd-missing-data-structures-mcar)\n2. [Missing at Random (MAR)](#pd-missing-data-structures-mar)\n3. [Missing not at Random (MNAR)](#pd-missing-data-structures-mnar)\n\nThese were originally proposed by Rubin {cite:ps}`Rubin1976missingdata` and are explained in more detail below. As this chapter has been created as part of the [Turing-Roche Community Scholar Scheme](https://www.turing.ac.uk/research/research-projects/alan-turing-institute-roche-strategic-partnership/community-scholars), the examples provided will be based in healthcare. \n\n> **Example Dataset**: We will be using a fictional study of health outcomes to explain the different mechanisms of missing data. For demonstration purposes, the dataset is first shown (below) as being fully complete and only has 8 participants. \n>  \n> | Participant Number | Age | Diastolic Blood Pressure | Systolic Blood Pressure | Blood Test Result | Motor Score | Cognitive Score |\n> |--------------------|-----|--------------------------|-------------------------|-------------------|-------------|-----------------|\n> | 1                  | 56  | 82                       | 118                     | Positive          | 10          | 35              |\n> | 2                  | 78  | 87                       | 134                     | Negative          | 32          | 29              |\n> | 3                  | 85  | 90                       | 130                     | Negative          | 27          | 14              |\n> | 4                  | 43  | 83                       | 121                     | Negative          | 15          | 36              |\n> | 5                  | 67  | 86                       | 131                     | Positive          | 20          | 25              |\n> | 6                  | 82  | 92                       | 133                     | Negative          | 26          | 12              |\n> | 7                  | 88  | 95                       | 140                     | Positive          | 34          | 10              |\n> | 8                  | 71  | 87                       | 126                     | Negative          | 33          | 22              |\n>\n>\n> Where generally worse health outcomes are associated with: \n> - a higher blood pressure measurement\n> - a positive blood test result\n> - a high motor score\n> - a low cognitive score \n>\n> In the examples below, any missing values will be indicated by \"N/A\" (Not Available) in red bold font. \n\n\n(pd-missing-data-structures-mcar)=\n## Missing Completely at Random (MCAR) \n\nJust as the name may suggest, missing data can be characterized as MCAR when it occurs completely randomly and is not due to an event caused by any variables of interest (whether observed or unobserved). Thus, there are no systemic differences between data entries with or without missing values, and no bias is introduced because of the missing data. \n\nIn reality, this is quite a strict classification and rarely occurs. Essentially any variable that affects the reason for why the data is missing in the first place has no affect on any of the variables in the study. Therefore, this means that the probability of a data entry being missing is the same for any given data point. \n\n> **Example**: A specific batch of blood samples were incorrectly processed, so the results were discarded. The missing data in the variable of interest (blood test result), is not explained by any observed or unobserved variables. \n>\n> | Participant Number | Age | Diastolic Blood Pressure | Systolic Blood Pressure | Blood Test Result                                  | Motor Score | Cognitive Score |\n> |--------------------|-----|--------------------------|-------------------------|---------------------------------------------------|-------------|-----------------|\n> | 1                  | 56  | 82                       | 118                     | <span style=\"color:red;\"><strong>N/A</strong></span> | 10          | 35              |\n> | 2                  | 78  | 87                       | 134                     | <span style=\"color:red;\"><strong>N/A</strong></span> | 32          | 29              |\n> | 3                  | 85  | 90                       | 130                     | <span style=\"color:red;\"><strong>N/A</strong></span> | 27          | 14              |\n> | 4                  | 43  | 83                       | 121                     | Negative                                           | 15          | 36              |\n> | 5                  | 67  | 86                       | 131                     | Positive                                           | 20          | 25              |\n> | 6                  | 82  | 92                       | 133                     | Negative                                           | 26          | 12              |\n> | 7                  | 88  | 95                       | 140                     | Positive                                           | 34          | 10              |\n> | 8                  | 71  | 87                       | 126                     | Negative                                           | 33          | 22              |\n> \n> Here, the first batch of blood samples had to be discarded. \n\n(pd-missing-data-structures-mar)=\n## Missing at Random (MAR) \n\nIn contrast, when missingness can be explained by variables with complete data (and is not random) this is known as MAR. Therefore, for a given group defined by an observed variable, the probability of being missing is the same for all individuals of that group. Such missingness may or may not result in bias; if there is bias this can be handled by accounting for the known variable correlated with the reason for missingness. \n\n> **Example**: Blood pressure readings may be missing from individuals who are older, frailer, and have less mobility, and therefore, are more likely to not attend the clinic. In this instance, the reason data is missing in the variable of interest (blood pressure), is related to other observed variables (age and mobility). \n>\n> | Participant Number | Age | Diastolic Blood Pressure | Systolic Blood Pressure | Blood Test Result                                  | Motor Score | Cognitive Score |\n> |--------------------|-----|--------------------------|-------------------------|---------------------------------------------------|-------------|-----------------|\n> | 1                  | 56  | 82                       | 118                     | <span style=\"color:red;\"><strong>N/A</strong></span> | 10          | 35              |\n> | 2                  | 78  | 87                       | 134                     | <span style=\"color:red;\"><strong>N/A</strong></span> | 32          | 29              |\n> | 3                  | 85  | <span style=\"color:red;\"><strong>N/A</strong></span> | <span style=\"color:red;\"><strong>N/A</strong></span> | <span style=\"color:red;\"><strong>N/A</strong></span> | 27          | 14              |\n> | 4                  | 43  | 83                       | 121                     | Negative                                           | 15          | 36              |\n> | 5                  | 67  | 86                       | 131                     | Positive                                           | 20          | 25              |\n> | 6                  | 82  | 92                       | 133                     | Negative                                           | 26          | 12              |\n> | 7                  | 88  | <span style=\"color:red;\"><strong>N/A</strong></span> | <span style=\"color:red;\"><strong>N/A</strong></span> | Positive                                           | 34          | 10              |\n> | 8                  | 71  | <span style=\"color:red;\"><strong>N/A</strong></span> | <span style=\"color:red;\"><strong>N/A</strong></span> | Negative                                           | 33          | 22              |\n>\n> Individuals with a high motor score (>26) and who were older (>70) were unable to attend the blood pressure clinic. \n\n\n\n(pd-missing-data-structures-mnar)=\n## Missing not at Random (MNAR)\n\nData that are MNAR are missing due to reasons that we do not know. In other words, the reason for the missingness is related to the value of the variable that is missing. This is the most complex case of data missingness to handle, as bias may occur but cannot be adjusted for as the source of the missingness is unmeasured. \n\n> **Example**: Follow-up cognitive testing may be missing for individuals who have had significant cognitive decline, as they are more likely to withdraw early from the study. Here, the reason for the missing data in the variable of interest (Cognitive Score) is correlated to unobserved data (the value of the observation itself). \n>\n> | Participant Number | Age | Diastolic Blood Pressure | Systolic Blood Pressure | Blood Test Result                                  | Motor Score | Cognitive Score                                  |\n> |--------------------|-----|--------------------------|-------------------------|---------------------------------------------------|-------------|-------------------------------------------------|\n> | 1                  | 56  | 82                       | 118                     | <span style=\"color:red;\"><strong>N/A</strong></span> | 10          | 35                                              |\n> | 2                  | 78  | 87                       | 134                     | <span style=\"color:red;\"><strong>N/A</strong></span> | 32          | 29                                              |\n> | 3                  | 85  | <span style=\"color:red;\"><strong>N/A</strong></span> | <span style=\"color:red;\"><strong>N/A</strong></span> | <span style=\"color:red;\"><strong>N/A</strong></span> | 27          | <span style=\"color:red;\"><strong>N/A</strong></span> |\n> | 4                  | 43  | 83                       | 121                     | Negative                                           | 15          | 36                                              |\n> | 5                  | 67  | 86                       | 131                     | Positive                                           | 20          | 25                                              |\n> | 6                  | 82  | 92                       | 133                     | Negative                                           | 26          | <span style=\"color:red;\"><strong>N/A</strong></span> |\n> | 7                  | 88  | <span style=\"color:red;\"><strong>N/A</strong></span> | <span style=\"color:red;\"><strong>N/A</strong></span> | Positive                                           | 34          | <span style=\"color:red;\"><strong>N/A</strong></span> |\n> | 8                  | 71  | <span style=\"color:red;\"><strong>N/A</strong></span> | <span style=\"color:red;\"><strong>N/A</strong></span> | Negative                                           | 33          | 22                                              |\n>\n> Participants with a cognitive score less than 15, withdrew early from the study due to worsening outcomes. \n\n(pd-missing-data-structures-summary)=\n## Summary\n\nWe have defined three types of missingness: MCAR, MAR, and MNAR. These definitions are particularly helpful in determining which data handling method to use. Simple implementations were used to demonstrate the types of missingness a small dataset of health outcomes. \n\nHowever, these are quite oversimplified and real-world datasets can be a lot more complex. For instance, whether a given participant may be unable to come into clinic or willing to continue participating in a study at a younger age/lower motor score/higher cognitive score than average. Alternatively, they may have missing data in a variable that helps explain the reason or mechanism of missingness. \n\nSeveral types of missingness may also be present in a given dataset, and sometimes multiple types may occur in one variable of interest. Therefore, handling missing data can be quite tricky. Here we directly observed the missing values by looking at the data, however this is a cumbersome and unrealistic task in many real datasets, which maybe have thousands of participants, and hundreds of variables (or more). Thus, visualisation methods that simplify determining any patterns of missingness are incredibly useful. These are explored in the next subchapter ({ref}`pd-missing-data-visualising-missingness`). \n\n\n\n\n<!-- IMPORTANT!\n\n- Use this template to create your chapter's subchapters.\n- Refrain from writing very long subchapters as readers may be unwilling to read them. Rather, you should split long subchapters into smaller subchapters if necessary.\n\n\n\nBEFORE YOU GO\n\n- Have a look at the Style Guide and the Maintaining Consistency chapters to ensure that you have followed the relevant recommendations on\n  - Avoiding HTML\n  - Consecutive headers\n  - Labels and cross referencing\n  - Using images\n  - Latin abbreviations\n  - References and citations\n  - Title casing\n  - Matching headers with reference in table of content\n\n-->\n"
  },
  {
    "path": "book/website/project-design/missing-data/missing-data-visualising-missingness.md",
    "content": "(pd-missing-data-visualising-missingness)=\n# Visualising Missingness\n\nVisualisation techniques can be incredibly helpful when trying to understand your data and any patterns of missingness. Different programming languages offer unique tools and packages to help with this. We will introduce *a few* visualisation tools for [python](#pd-missing-data-visualising-missingness-python) and for [R](#pd-missing-data-visualising-missingness-r). Lastly, we will use some of these tools to show simulated visualisations of the fictional dataset with all three types of data missingness, as introduced in {ref}`pd-missing-data-structures`. If you would like to try the below visualisations, please recreate the  example dataset (introduced in {ref}`pd-missing-data-structures`) in a file, which here we call \"FictionalDataset.csv\". \n\n```{note}\nFor simplicity we will be using all functions with their default parameters. However, all the functions presented have many input variables to allow for further customisation and tailoring. \n```\n\n(pd-missing-data-visualising-missingness-plottypes)= \n## Plot Types Covered and Hyperlinks\n\n1. Nullity Matrix ({ref}`Python<pd-missing-data-visualising-missingness-python1>`, {ref}`R <pd-missing-data-visualising-missingness-r1>`)\n2. Nullity by column ({ref}`Python<pd-missing-data-visualising-missingness-python2>`, {ref}`R<pd-missing-data-visualising-missingness-r2>`)\n3. Nullity Correlation ({ref}`Python<pd-missing-data-visualising-missingness-python3>`, {ref}`R<pd-missing-data-visualising-missingness-r3>`)\n4. Beyond Pairwise Nullity Correlation ({ref}`Python<pd-missing-data-visualising-missingness-python4>`, {ref}`R<pd-missing-data-visualising-missingness-r4>`)\n\n\n(pd-missing-data-visualising-missingness-python)=\n## Python\n\nThe [missingno python package](https://github.com/ResidentMario/missingno) is a great tool for visualising missing data.\nThe main functions and their usage on the fictional dataset introduced in the previous subchapter are introduced below, where our dataset is in a dataframe format and called \"df_fictional_dataset\". \n\n```python\n# Importing packages\nimport pandas as pd\nimport missingno as msno\n\n# loading in dataset\ndf_fictional_dataset = pd.read_csv(\"FictionalDataset.csv\", header = 0, index_col = 0)\n```\n\n(pd-missing-data-visualising-missingness-python1)=\n### 1. Nullity Matrix \n\n```python\nmsno.matrix(df_fictional_dataset)\n```\n\n```{figure} ../../../figures/msno_matrix.png\n---\nheight: 400px\nname: msno-matrix\nalt: >\n  A nullity matrix plot generated using the `missingno` Python package, visualising missing data in our fictional dataset.\n  Each column represents a variable (Age, Diastolic Blood Pressure, Systolic Blood Pressure, Blood Test Result, Motor Score and Cognitive Score), and each row corresponds to a data entry.\n  Present values are shown as solid dark grey blocks, while missing values are shown as white gaps.\n  On the right side, a vertical sparkline summarises the number of non-missing values in each row, allowing a quick visual comparison of how complete each row is.\n---\nNullity matrix of our fictional dataset, produced via the missingno python package. \n```\n\nData entries with missing data are indicated by white, while all complete entries are shaded a dark grey. At the right of the plot there is a sparkline which summarises data completeness by row. In this instance, the 3rd row has the most missing data (only 2 complete entries), while the 4th and 5th rows are the most complete (no missing entries).\n\n\n(pd-missing-data-visualising-missingness-python2)=\n### 2. Nullity by Column\n\n```python\nmsno.bar(df_fictional_dataset)\n```\n\n```{figure} ../../../figures/msno_bar.png\n---\nheight: 400px\nname: msno-bar\nalt: >\n  Bar plot showing the number of non-missing (complete) values per variable in a fictional dataset, created using the `missingno` Python package.\n  Each bar represents a column in the dataset: Age, Diastolic Blood Pressure, Systolic Blood Pressure, Blood Test Result, Motor Score and Cognitive Score.\n  The height of each bar corresponds to the proportion of complete entries (left y-axis), while absolute counts are labelled at the top of each bar (for example, Age and Motor Score both have all 8 values present). \n---\nBarplot of the nullity per column of our fictional dataset, produced via the missingno python package. \n```\n\nThis is a simplification of the first visualisation method; a simple bar plot showing the number of complete values per variable.\nThe absolute number of values are shown on the top, while the left y-axis indicates the percentage of values that are not missing. \n\n(pd-missing-data-visualising-missingness-python3)=\n### 3. Nullity Correlation\n\n```python\nmsno.heatmap(df_fictional_dataset)\n```\n\n```{figure} ../../../figures/msno_heatmap.png\n---\nheight: 400px\nname: msno-heatmap\nalt: >\n  Heatmap showing pairwise correlations in missingness between variables in a fictional dataset, created using the missingno Python package. \n  Cells are colour-coded from dark blue (perfect positive correlation) to red (perfect negative correlation), with white representing no correlation.\n  Systolic and Diastolic Blood Pressure have a perfect correlation of 1, indicating they are always missing together.\n  Cognitive Score shows a moderate positive correlation (0.5) with both blood pressure variables, meaning it tends to be missing when they are.\n  Blood Test Result shows weak negative correlations (−0.1) with the other variables.\n  A vertical colour bar on the right maps the correlation values from −1 to 1.\n---\nPairwise nullity correlation heatmap of our fictional dataset, produced via the missingno python package.\n```\n Visualising what data is missing may not be enough to draw any inferences and understand the mechanism behind the missingness. A nullity correlation plot is one way to look into this. In this instance, we see that systolic blood pressure is always missing when diastolic blood pressure is also missing. Additionally, the cognitive score has a 50% chance of being missing if the blood pressure readings are missing. As the motor score and age don't have any missing values these are excluded. \n\n\n(pd-missing-data-visualising-missingness-python4)=\n### 4. Beyond Pairwise Nullity Correlations, via a hierarchical clustering algorithm  \n\n```python\nmsno.dendrogram(df_fictional_dataset)\n```\n\n```{figure} ../../../figures/msno_dendrogram.png\n---\nheight: 400px\nname: msno-dendrogram\nalt: >\n  Dendrogram plot showing hierarchical clustering of missingness patterns across variables in a fictional dataset, created using the missingno Python package.\n  The horizontal axis lists variables: Motor Score, Age, Blood Test Result, Systolic Blood Pressure, Diastolic Blood Pressure, and Cognitive Score.\n  Vertical branches reflect how similarly variables tend to be missing.\n  Motor Score and Age are joined at a distance of zero, indicating identical missingness patterns.\n  Diastolic and Systolic Blood Pressure are also tightly clustered, while Cognitive Score branches from them at a greater distance (~1.3), suggesting partial but not perfect correlation.\n  Blood Test Result is more weakly linked, joining at a higher level.\n---\nNullity correlation dendrogram of our fictional dataset, produced via the missingno python package.\n```\n\nIn the dendrogram, the missingness of variables that are linked at a distance of zero, are fully correlated with each other.\nThus, we see the Motor Score and Age being connected at zero, and separately the two blood pressure measures being connected.\nVariables that branch close to zero, predict each other's missingness well, but not perfectly.\nFor instance, cognitive score branches from the blood pressure variables at around 1.30.\nThis is because 2 out of 3 missing cognitive score values, also have missing blood pressure measurements. \n\nThe strength of the above visualisations are a lot more evident in a much larger dataset.\nYou are encouraged to try them out on your own data to see for yourself! \n\nAdditionally, although these visualisations are useful, in our case, a visualisation looking at the correlation between the values and the missingness of variables would give us more information. \n\n\n(pd-missing-data-visualising-missingness-r)=\n## R\n\nThere are many readily available functions for visualising missingness in R, including many that look further into the mechanism of missingness.  A couple of libraries have useful functions, namely: [ggplot](https://ggplot2.tidyverse.org/), [visdat](https://cran.r-project.org/web/packages/visdat/readme/README.html), and [naniar](https://naniar.njtierney.com/). Similarly to the missigno package in Python, there are functions to visualise a nullity matrix or by column. For brevity, these will just be listed without the inclusion of figures. \n\n```{note}\nTake care that the missing values are recognised in the given programming language and that each column is of the right data type (for instance, numeric and not strings). \n```\n\n```R\nfictional_dataset <- read.csv(file = \"FictionalDatasetMiss.csv\")\n```\n\n(pd-missing-data-visualising-missingness-r1)=\n### 1. Nullity Matrix\n\n```R\nlibrary(visdat)\nvis_dat(fictional_dataset)\nvis_miss(fictional_dataset)\n```\n\n(pd-missing-data-visualising-missingness-r2)=\n### 2. Nullity by Column\n\n```R\nlibrary(ggplot)\ngg_miss_var(fictional_dataset)\n```\n\nAn interesting extension of the gg_miss_var function can help in pointing out the number of instances a given combination of variables all have missing data:\n\n```R\ngg_miss_upset(fictional_dataset)\n```\n\n```{figure} ../../../figures/gg-miss-upset.png\n---\nheight: 500px\nname: gg-miss-upset\nalt: >\n  UpSet plot visualising intersections of missing data across variables in a fictional dataset, generated using the `gg_miss_upset` function in R.\n  On the left, horizontal bars show the total number of missing values (set size) per variable.\n  On the right, vertical bars indicate the number of observations with shared missingness across combinations of variables (intersection size).\n  The largest intersection shows 2 observations missing both Diastolic and Systolic Blood Pressure.\n  Other bars show individual missingness in variables such as Cognitive Score or Blood Test Result.\n  Beneath the bars, a dot matrix identifies which variables are involved in each intersection.\n---\nA bar plot showing the number of intersections of missing values between different variables. The total number of missing values in a given variable are shown by the set size bar plot in the bottom left corner of the figure. A table under the main bar plot shows the intersecting variables for a given bar. \n\n```\n(pd-missing-data-visualising-missingness-r3)=\n### 3. Nullity Correlation\n\n```R\ngg_miss_fct(x = fictional_dataset, fct = Blood.Test.Result)\n```\n\nThis function works slightly differently from the one introduced in the Python subsection.\nIt shows the number of missing values per variable and per given value in a specified categorical variable.\nIn this instance, the plot shows the number of missing values for every possible blood test result value (negative, positive, or missing).\nThis could be helpful to visualise if missingness is associated with the value of a specific categorical variable (there is no relationship in our example dataset).\nFor instance, men are less likely to fill out a depression survey; this would be immediately evident if population survey data was visualised with this function against gender. \n\n(pd-missing-data-visualising-missingness-r4)=\n### 4. Beyond Pairwise Nullity Correlations\n\n<!---\nA function similar to the one presented in the Python section is:\n\n```R\nlibrary(rpart)\nlibrary(rpart.plot)\n\nfictional_dataset %>%\n  add_prop_miss() %>%\n  rpart(prop_miss_all ~ ., data = .) %>%\n  prp(type = 4, extra = 0, prefix = \"Prop. Miss = \", roundint=FALSE)\n```\n\nThis function models missingness using decision trees to predict the proportion of missingness in one variable, using all other variable values. For our example dataset, the results of this function are uninspiring (just one node), however this function would be incredibly useful in a much larger dataset. \n-->\n\n```R\nlibrary(naniar)\n\nggplot(fictional_dataset, \n       aes(x = Motor.Score, \n           y = Diastolic.Blood.Pressure)) + \n  geom_miss_point()\n```\n\n```{figure} ../../../figures/geom-miss-point.png\n---\nheight: 400px\nname: geom-miss-point\nalt: >\n  Scatterplot showing Diastolic Blood Pressure (y-axis) against Motor Score (x-axis), created using `geom_miss_point()` from the `naniar` R package.\n  Each point represents an individual in the dataset.\n  Blue points indicate complete (non-missing) values, while red points represent observations with missing Diastolic Blood Pressure.\n  Missing values are plotted at a position 10% lower than the minimum observed value for that variable, allowing them to be visualised without being removed.\n  The plot shows that individuals with higher Motor Scores are more likely to have missing blood pressure readings.\n---\nA scatterplot of diastolic blood pressure against motor score. Any missing values are plotted at 10% less than the smallest value of a given feature and are colored in red.\n```\n\nIn {ref}`pd-missing-data-structures-mar`, we mentioned that some study participants were unable to attend the blood pressure clinic due to being older and frailer. This is partially reflected in the figure, as most individuals with high Motor Scores, are missing their blood pressure readings. \n\nHowever, an relationship observed does not necessarily equate to causation. Take the next figure as an example: \n\n```R\nggplot(fictional_dataset, \n       aes(x = Age, \n           y = Cognitive.Score)) + \n  geom_miss_point()\n```\n\n```{figure} ../../../figures/geom-miss-point-age.png\n---\nheight: 400px\nname: geom-miss-point-age\nalt: >\n  Scatterplot displaying Cognitive Score (y-axis) against Age (x-axis), created using `geom_miss_point()` from the `naniar` R package.\n  Each point represents an observation in the dataset.\n  Blue points indicate complete data, while red points mark missing values for the Cognitive Score, positioned at 10% below the minimum observed score to make them visible.\n  The plot shows that individuals over age 80 are more likely to have missing cognitive scores (although this pattern results from how the fictional dataset was constructed).\n---\nA scatterplot of cognitive score against age. Any missing values are plotted at 10% less than the smallest value of a given feature and are colored in red. \n```\n\nHere, anyone above the age of 80 does not have a cognitive score, so it may seem that being unable to complete the cognitive test is associated with being older.\nHowever, when we defined our fictional dataset, we also defined the reason for any missing cognitive scores.\nSpecifically, those individuals had significant cognitive decline and had to withdraw from the study.\nTherefore, the correlation observed in the plot is just by chance (although it does theoretically make sense)! \n\n(pd-missing-data-visualising-missingness-summary)=\n## Summary\n\nIn this sub-chapter, we have explored different tools to visualise missing data.\nSome tools simplify viewing any patterns, while others can even give insight into the mechanisms behind any missing data.\nThis is by no means an exhaustive list of visualisation methods and functions available in these programming languages.\nInstead, this serves as an introduction to some useful tools and can be used as a starting point.\nThe table below summarizes the functions introduced: \n\n### Summary Table \n\n| Description                            | Python Function | R Function                   | R package               |\n|----------------------------------------|-------------------|---------------------------------|-------------------------|\n| Nullity matrix                         | {ref}`matrix<pd-missing-data-visualising-missingness-python1>`            | {ref}`vis_dat & vis_miss<pd-missing-data-visualising-missingness-r1>`                | visdat                  |\n| Nullity by column                      | {ref}`bar<pd-missing-data-visualising-missingness-python2>`                |  {ref}`gg_miss_var & gg_miss_upset<pd-missing-data-visualising-missingness-r2>`     | ggplot2                 |\n| Nullity Correlation                    | {ref}`heatmap<pd-missing-data-visualising-missingness-python3>`            | {ref}`gg_miss_fct<pd-missing-data-visualising-missingness-r2>`                    | ggplot2                 |\n| Beyond Pairwise Nullity Correlations    | {ref}`dendrogram<pd-missing-data-visualising-missingness-python4>`         | {ref}`ggplot with geom_miss_point<pd-missing-data-visualising-missingness-r1>`      | ggplot2 & naniar        |\n"
  },
  {
    "path": "book/website/project-design/missing-data.md",
    "content": "(pd-missing-data)=\n# Missing Data Handling\n\n\n(pd-missing-data-prerequisites)=\n## Prerequisites\n\n<!--\n\n>**Itemise other chapters in _The Turing Way_ or topics that readers should be familiar with to understand your chapter better.**\n> Ensure that you link to those chapters using the [Style Guide's](https://the-turing-way.netlify.app/community-handbook/style/style-crossref.html) cross referencing recommendations.\n> If the topics are only available on the web, appropriately link to them too.\n> Importance should either be `Helpful` or `Necessary`\n\n> For each prerequisite, you should also provide an indication of the skill level readers should have to understand your chapter better\n> Skill level can either be _beginner_, _intermediate_, or _advanced_.\n>\n\n None. \n\n| Prerequisite | Skill Level | Notes |\n| -------------|------|----|\n| None. | Beginner | Any useful notes the reader should know | -->\n\n| Prerequisite | Importance | Skill Level | Notes |\n| -------------|----------|------|----|\n| {ref}`Research Data Management <rr-rdm>` | Helpful | Beginner | Provides some background on general data handling and good prerequisite coding practices |\n\n\n\n(pd-missing-data-summary)=\n## Summary\n\nThis chapter aims to introduce missing data handling. Although we live in the age of \"big data\", data can often be fragmented, incomplete, and erroneous. The methods we develop and any analysis we conduct can only be as good as the data we provide. So, is there anything we can do about a dataset riddled with missing data?\n\n\n```{figure} ../../figures/missing-data-handling.*\n---\nheight: 500px\nname: missing-data-handling\nalt: Cartoon-like sketch with four people assembling puzzle pieces. There are four different buckets with puzzle pieces with blue dots in them. One bucket is labelled \"RANDOM\" and another \"NOT RANDOM\". Two of the people are holding a dotted puzzle piece. Another person is looking up at a hanging puzzle. Some pieces of the puzzle are dotted, others are filled with solid orange. The last person standing to the left of the hanging puzzle is painting an empty puzzle piece tile using paint from a bucket labelled \"DATA HANDLING\". This paint has the same dotted pattern found on the puzzle pieces in the buckets. \n---\nMissing Data Handling.\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n<!---\nTODO: change the doi above to the right one\n-->\n\nTo answer this question, this chapter will start by defining different types of {ref}`pd-missing-data-structures` and see how we can visualise these in the {ref}`pd-missing-data-visualising-missingness` subchapter. This will help readers develop a strategy on choosing the appropriate missing data handling method, of which a few are outlined in {ref}`pd-missing-data-methods`. Lastly, another subchapter will introduce introduce the relatively new field of {ref}`pd-missing-data-structured-missingness`, pioneered by researchers in the Turing-Roche partnership. This is a big area of research and this chapter is only a simple introduction to it. Therefore, if you are interested in learning more you can read on further by having a look at the {ref}`pd-missing-data-checklist-resources` page. \n\n\n(pd-missing-data-motivation)=\n## Motivation and Background\n\nMissing data can disrupt research and create challenges in results interpretation and in the validity of any conclusions {cite:ps}`Pederson2017missingdata`. Understanding missing data structures and handling missing data appropriately is important to prevent creating or worsening pre-existing biases of the dataset and to ensure fair, generalizable models {cite:ps}`Buuren2018imputation`. Both missing data itself, or how it is handled, can have a large impact on subsequent analyses. Missing data handling is one step in the process to figuring out the best use of your data, in the most efficient way possible. \n\n\n\n"
  },
  {
    "path": "book/website/project-design/pd-overview/pd-checklist.md",
    "content": "(pd-checklist)=\n# Getting Started Checklist \n\nWe can begin the project design process by identifying different parts of our research, such as main research questions, methods and materials, code and data requirements, workflow, communication channels, ways of working, collaborative practices, and so on. \nThis process allows us to be intentional from the start to ensure that our research is reproducible, well-communicated, and inclusive of all stakeholders where decisions are collaboratively made. \nWe can explore and select the right tools and methods for reproducibility in our research and promote good practices such as documentation, version control, peer-review processes, testing, workflow, archiving, and data management plans from the beginning. \nFinally, we can plan for publishing and sharing research components before, during, and after the project. \n\n**Below is a checklist you can use to help identify areas of project planning you might want to look at.**\n\n## Aims & Values \n* Define the main research questions and objectives.\n* Identify the core values and principles that guide your project.\n* Useful documentation: [project canvas](https://canvanizer.com/new/project-canvas), [values document](https://web.archive.org/web/20240523192550/https://rebelsguidetopm.com/what-are-your-project-values/), [project 1-pagers](https://www.smartsheet.com/content/project-report-templates).\n\n## Timeline & Milestones \n* Establish a project timeline with key milestones, output, and deadlines.\n* Break down the project into manageable phases or tasks.\n* Useful documentation: [Gantt charts](https://clickup.com/blog/gantt-chart-project-templates/), [roadmaps](https://www.smartsheet.com/free-product-roadmap-templates-smartsheet), or [project boards](https://teamhood.com/project-management/project-board/).\n\n## Methodology\n* Determine the appropriate research methods and materials.\n* Consider the necessary code and data requirements for your project.\n* Document the workflow for data collection, analysis, and interpretation.\n* Define data governance processes to ensure data is kept securely, used appropriately, and complies with data regulations in relevant countries/geographic areas. \n* Useful documentation: [data management plan](#rr-rdm-dmp), [code repository](#pd-project-repo), [electronic lab notebooks](#rr-open-notebooks), [Data Governance Chapter](#pd-dg)\n\n## Operations \n* Confirm the budget and any funding policies you need to follow.\n* Establish ways of working and collaborative practices for the project team.\n* Identify roles and responsibilities within the project team, using the RACI (responsible, accountable, consulted, informed) matrix or the MOCHA (manager, owner, consulted, helper, approver) matrix.\n* Complete any institutional processes for project setup, such as ethics approval or contract signing.\n* Useful documentation: [RACI matrix](https://project-management.com/understanding-responsibility-assignment-matrix-raci-matrix/), [MOCHA matrix](https://www.managementcenter.org/resources/assigning-responsibilities/#main), [risk register](https://asana.com/resources/risk-register), [project charter](https://www.projectmanager.com/blog/project-charter).\n\n## Stakeholders\n* Identify all individuals, groups, or organizations that have an interest or influence in the project. This includes both internal and external stakeholders.\n* Create a visual representation or matrix to understand the relationships between stakeholders and the project. Map their level of engagement, influence, and interest at each stage of the project. This helps prioritise engagement efforts and tailor communication strategies accordingly.\n* Utilise the [\"Facilitating Stakeholder Engagement\"](#cl-stakeholder-engagement) chapter for guidance and template resources.\n* Useful documentation: stakeholder register, stakeholder map, stakeholder analysis matrix, [personas](#pd-persona).\n\n## Community\nIf you are intending to build a community for your project or to support participatory research, make a plan!\n* Contact communities from your stakeholder mapping and invite them to discuss the project and goals during planning.\n* Agree decision making processes for the project involving the community.\n* Plan contribution pathways for new participants, establish guidelines for new content, and how you will grow a sense of community.\n* Useful documentation: [Code of Conduct](#ch-coc), [Contributing Guidelines](#cl), [READMEs](https://book.the-turing-way.org/collaboration/github-novice/github-novice-firststeps.html?highlight=readmes), [governance documentation](#er-ethics-open-source-governance), [Research Community Managers](#cl-infrastructure-community-managers), [GitHub repo for Research Community Management resources](https://github.com/alan-turing-institute/open-research-community-management)\n\n## Outputs \n* Plan for the different outputs of your research, such as publications, software, or datasets.\n* Consider licensing and copyright issues for sharing your outputs.\n* Determine how you will manage intellectual property and ownership rights using an IP register.\n* Remember to include any required reporting to funders.\n* Useful documentation: IP register, [licensing](#rr-licensing) and copyright statement, [data management plan](#rr-rdm-dmp).\n\n## Communications \n* Identify the target audience for your research.\n* Plan what you want to communicate to your audiences, when you want or need to share progress or results, and the best channels or mediums to do this.\n* Consider open and inclusive practices to involve stakeholders in decision-making.\n* Useful documentation: [The Turing Way Guide to Communication](#cm-comms-overview), communication plan.\n\n## Maintenance & Archiving \n* Develop a plan for the long-term maintenance and sustainability of your project.\n* Establish procedures for data management, including storage, backup, and access.\n* Consider archiving your project's artifacts and documentation for future reference.\n\n### Reporting & Evaluation\n* Define how you will judge your project a success (outputs produced, people engaged, milestones reached).\n* Define when you will review these metrics and what the criteria is for changing them. \n* Document and understand any external requirements for reporting such as format, timeframe, type, and audience. \n"
  },
  {
    "path": "book/website/project-design/pd-overview/pd-overview-methods.md",
    "content": "(pd-overview-methods)=\n# Reproducibility Methods\n\nDesigning a project starts by defining your research question and the methodology that will be used to answer this question.\nWhen thinking about the methodology is necessary to think about how to make your research {ref}`open<rr-open>` and {ref}`reproducible<rr-overview>`:\n- How you are going to collect the data.\n- What analysis will be used.\n- Which tools and infrastructure are needed.\n\n(pd-overview-methods-license)=\n## Choose a License\n\nGetting a license is a crucial step in open research.\nResearch does not have to be completed to be useful to others.\nHaving a license is the way to communicate how do you want your research to be used and shared.\n\nThere are different types of licenses depending on the type of project and preferences for re-use and sharing.\nThe [choosealicense](https://choosealicense.com/) website has a good mechanism to help you pick a license.\n\nTo learn more about how to add a license to your project, read the {ref}`Licensing<rr-licensing>` chapter in the Guide for Reproducible Research.\n\n(pd-overview-planning-dmp)=\n## Data Management Plan\n\nThe data collected in a research project have a longer lifespan than the research that creates it.\nTherefore, is necessary to consider how the data will be used, archived and shared.\nCreating a Data Management Plan (DMP) is a way to make important decisions about how to manage your data while providing others with information about it.\n\nRead the chapter on {ref}`DMP<rr-rdm-dmp>` To learn about what should be included in a Data Management Plan.\nComprehensive information on data management is available in the chapter {ref}`Research Data Management<rr-rdm>`.\n\n(pd-overview-methods-comprepro)=\n## Computational Reproducibility\n\nThinking about which software, tools and platforms to use will greatly affect how you analyse and process data, as well as how you share your results.\n\nThe idea is to facilitate others, and yourself, recreating the set-up process necessary to reproduce your research.\nSome tools that can be used to enable these are the following:\n- **Dependency managers**: these keep dependencies updated and make sure the same version of dependencies you used in the development environment are used when reproducing a result.\n- **Containers**: are a way to create environments that are isolated from other applications.\n- **Notebooks**: a useful online environment where you can execute your scripts, and easily add notes and additional information.\nThe added advantage is that you won't need to install anything.\n\nTo learn more about how to create a reproducible environment, the chapter on {ref}`Reproducible Environments<rr-renv>` is a good place to start.\n\n(pd-overview-methods-docs)=\n## Documenting the Design of your Study\n\nAfter you have decided how to collect your data, analyze it and which tools to use, a good way to document these decisions is by writing a Registered Report.\n\nA Registered Report highlights the importance of the research question and the methods that will be used. They are peer-reviewed before the research, switching the focus of the review from the results to the substance of the research methods. You can find out more in our {ref}`Chapter on Registered Reports<cm-dif-articles-registered-reports>`.\n\n(pd-overview-planning-help)=\n## Collaborating and Asking for Help\n\nYou don't have to work alone. Having others collaborate with your project is the best way to improve the reproducibility and quality of your work.\n\nIf you don't know where to start, a good place would be the {ref}`Guide for Communication<cm>` and the {ref}`Guide for Collaboration<cl>`.\n\n## Reference\n\nTurkyilmaz-van der Velden, Y., Dintzner, N., Teperek, M., \"Reproducibility Starts from You Today.\" Patterns, vol. 1, no. 6, 11 Sept. 2020, p. 100099, doi:10.1016/j.patter.2020.100099. [Read Online on Science Direct](https://www.sciencedirect.com/science/article/pii/S2666389920301331)\n"
  },
  {
    "path": "book/website/project-design/pd-overview/pd-overview-planning.md",
    "content": "(pd-overview-planning)=\n# Getting Started with Project Design\n\nThinking about reproducibility from the start of your project is the best way to save time and get the most out of the available tools. \nCreating connections between data, code, methodology, as well as diverse collaborators, can seem like a daunting task if it has not been planned from the beginning (see this illustration of the {ref}`Research Cycle<research-cycle>`). \nBy documenting and sharing project workflows and processes for research and researchers, we can ensure the sustainability and reusability of research for both developers and future users. \nIn addition, planning your project at the start can help you make sure that you are meeting any funder requirements.\n\nA human-centered approach in the context of the research project can lead to a better development process, maintenance, and future extension of our work. Furthermore, it will help improve the quality of future project design as we can learn lessons from what worked and what can be improved.\n\n```{note}\n**Top three 'selfish' reasons to use project design practices**\n1. **Saves time**: once the project is designed and all the connections between different parts of research can be organized with little effort.\n2. **Makes your research openly available**: having your research open from the start can help others working in similar subjects or starting research.\n3. **Get people interested**: you can get people to help you from the start since your project is documented and is easy to share.\n```\n\n(pd-overview-planning-expectation)=\n## Setting Expectations Explicitly\n\nProject design practices help provide guidance and set clear expectations by explicitly communicating norms and empowering project members at different levels of hierarchy to collaborate equitably. \nProject design for reproducible research encompasses a variety of aspects, starting from defining the purpose, main research questions, expected users or target audience, available resources, and skills required in the project. \nIt also requires researchers to explore the possible outcomes, plans to address expected challenges or risks, ensure diversity of stakeholders, and reduce possible barriers to participation.\n\nProject design practices help all stakeholders to be certain about their roles and responsibilities, skill requirements, environment, and research setup they want to create for their collaborators, values they want to promote, and how they can achieve their goals collaboratively.\n\n(pd-overview-planning-ethics)=\n## Getting Ethical and Legal Approval\n\nEvery piece of research has the capacity to generate change - this is the basis of discovery and progress. Therefore, it is necessary to consider how your investigation could impact other people's lives and under which ethical and legal standards it should be conducted.\n\nA project must be designed considering legal and ethical issues at every step: from the formulation of questions and data collection to analysis, results, and interpretation. It's important to ask yourself if your project is designed to be inclusive and sustainable, taking into account the implications and social expectations and adhering to ethical principles and professional standards.\n\nObtaining ethical and legal approval is a crucial step in the project to ensure that your research is being conducted in a responsible and ethical manner. Research ethics committees (RECs) proceed in several ways, but there are five principal topics that the ethics committee might want to know about:\n\n1. Project Description\n2. Data and Methodology\n3. Consent\n4. Privacy and Security\n5. Further Societal Consequences\n\nThe {ref}`Research Ethics Committees Processes<er-committees>` chapter provides more information about each item. Refer to other chapters in the {ref}`Guide for Ethical Research<er>` for further guidance.\n\n```{warning}\nEven if you do not need institutional ethical approval, your project will still benefit from planning using self-reflection techniques and including ethical considerations in the project design. \nEthics should not be tied to institutions, it is everyone's responsibility. \n```\n\n## Organising Files and Documents\n\nCreate a shared repository to allow easy access to information and different documents related to your project.\nA project repository can be openly available if you are developing an open source project, or can be shared only with your collaborators.\nIn the chapter {ref}`pd-project-repo`, you can learn about how to set up a repository with key documents like a landing page, contribution guidelines and communication pathways.\n\nStart by documenting your vision, mission, goals and roadmap in a README file (see the {ref}`pd-project-repo-readme` chapter), followed by a description of resources and norms for collaboration and communication.\nIn the next chapter, we discuss how project design enables good communication and collaboration in research.\nIn the subsequent chapters, we describe different methods and tools for ensuring research reproducibility.\n\n***Chapter Tags**: This chapter is curated for the `Turing Data Study Group` (`turing-dsg`).*\n"
  },
  {
    "path": "book/website/project-design/pd-overview/pd-overview-repro.md",
    "content": "(pd-overview-repro)=\n\n# Collaborative project documentation\n\nGood communication and collaboration practices are complementary to research reproducibility, and often it is hard to separate these concepts from each other.\nIn _The Turing Way_, we consider these essential for reproducible research and provide separate guides for {ref}`communication<cm>` and {ref}`collaboration<cl>`.\n\nIn this page, we highlight some of the most important recommendations for collaboration and communication to ensure that you, and everyone else in your project, understand what the project is about, who the stakeholders are and how they can participate.\nYou can visit specific chapters to gain an in-depth understanding and selection of practices that meet the specific requirements in your project.\n\n## Minimal documentation\n\nYour open source project should at a minimum provide a license together with a README file with all the basic, general information a newcomer needs to get oriented.\nThe license to apply will depend on your type of research output (text, data, software, hardware, reagents to name a few).\nSee the license chapter {ref}`rr-licensing`\nIt should contain a **recognizable name** for your project, as well as a **declaration of the licensing terms** under which it may be distributed (see the {ref}`rr-licensing-hardware` chapter).\n\nDocumentation should be shared via centralised, findable and accessible platforms.\n\n## Documenting project plans and processes\n\nDocument the **current state**, **ongoing development**, and/or any **future plans** for the project.\nAdd information on available resources and recommended practices to ensure everyone is on the same page (literally!).\nIt may also be important to make it clear what your project is not meant to be.\n\nIn addition to the above, it is interesting to document the _principal need_ for your project, especially for software and hardware project: what problem are you trying to solve ?\nThat includes a **problem description** of whatever issue sparked the project, a **functional description** of how your project is meant to address it, and a **context description** of the users and environment your project is targeting.\n\nIt is particularly important to share the **vision, mission, and milestones** clearly.\nProvide sufficient information for what the expected outcomes and deliverables are.\n\nProvide overarching as well as short-term goals and describe expected outcomes to help contributors move away from focusing on a single idea of the feature.\nDescribe the possible expansion of features in pre-determined and agreed on ways at stages beyond the initial implementation.\n\n## Project's \"Who-is-Who\"\n\nInclude a **list of contributors**, **contribution guidelines**, and information on **contact points** where to ask for help.\nIn addition,\n\n- Create an overview of the putative \"personas\" {ref}`pd-persona` (people and organisations) and how they may interact with the project.\n\nDescribe what opportunities for collaboration different members will have.\nWhen possible, such as in an open source project, provide these details for those outside the current group, especially when you want to encourage people outside the project to be involved.\nCommunicate the work culture that you want to promote and policies that ensures the safety and security of both your data and people.\n\nProvide resources on ways of working to ensure fair participation of contributors who collaborate on short- and long-term milestones within the project.\nIt reduces or addresses concerns about the project's progress towards meeting goals and prevents potential fallout between project contributors.\n\n## Participation and contribution process\n\nIn order to make your project discoverable, you may add a machine-readable metadata file, such as an [Open-Know-How manifest](https://www.internetofproduction.org/openknowhow).\n\nConsidering the variety of different backgrounds and skills your members bring, describe how they can participate and start contributing.\nYou should also **think about your audience**. Your project might be reused by people with different skills, roles, objectives, and socio-economic and cultural environments.\n\nProvide clear opportunities for contributions, review, management, mentoring, and support.\nProvide an overview of how different contributions or resources are connected and how new contributions will fit into existing materials.\nYou may also include an index of all the project's documentation, so people can easily find what they are looking for.\n\nProvide a decision-making framework to facilitate discussions and reaching a shared conclusion.\nIn the context of software and hardware, open source projects are often as much about communication as they are about coding or building (if not more).\nAllow informed discussions when a particular project design has reached the end or when it is useful to update it for efficiency and sustainability.\n\nDescribe how your research objects are available or will be published and how different contributors will be recognised.\nIt helps when everyone feel appreciated and acknowledged for their contribution to the overall vision.\n\n<!--\n(pd-overview-repro-turingway)=\n## _The Turing Way_ Chapter for Communication and Collaboration\n\nWe recommend reading the following chapters to understand effective communication and collaboration for project design.\n\n### Basic Requirements\n- {ref}`<>`\n- {ref}`<>`\n- {ref}`<>`\n\n### Advanced Requirements\n- {ref}`<>`\n- {ref}`<>`\n-->\n<!--\n(this section moved to one of the landing pages instead)\n(pd-overview-repro-mistakes)=\n## Bonus Section: Learning from Mistakes\n\n> “Building takes many, many mistakes.”\n>\n> -- Becky Chambers, [The Long Way to a Small, Angry Planet](https://www.goodreads.com/work/quotes/42270825)\n\nLearning about past design mistakes can give us insight into what we can do differently in the future.\nWe asked a group of researchers to share what they consider their project design regrets, which we have summarised here:\n\n- Not advocating for clearer goals and success criteria from the beginning.\n- Not communicating the project vision clearly/often enough to the other team members.\n- Not ensuring that all stakeholders were fully aware of the nature of the project.\n- Not understanding that project design is about people first. Designs motivate stakeholders and allow collaboration and inclusion.\n- I guess I wrote these as actions I wish I had done better - Not setting short- and long-term milestones, communicating and enforcing norms for collaborator engagement, delegating work and project management tasks.\n- Not having documentation besides final reports. When being asked about the code or dataset (raw and process), step by step process from preparing data to getting the results, lack of documented guidance in one place made it hard to trace the project with all team members (classic problem).\n- Not properly taking into account the degree to which requirements will change throughout a project - which happens a lot in academia - and the effect this has on designs that then also need to change.\n- Trying to plan too much at the beginning and never getting started.\n- Feeling like I am always taking an ad hoc approach to planning a project and then feeling like I am spending too much time on the organisation side of the project because I don’t have a set workflow to handle project planning and design. Also, not knowing how project planning fits into project design.\n- Using a very messy excel to store/process data, the shame!\n- Over-engineering a design for features that didn’t end up being implemented (in life before academia!)\n- Not implementing Git flow from the start, and not teaching collaborators how to use Git flow.\n- Not developing tests until after a significant amount of code was written.\n- Not doing code reviews.\n- Not defining use scenarios for the software from the beginning, meaning we didn’t pay enough attention to data input and output.\n- Agonising too long before switching to objectively better design (particularly translating from a largely functional codebase to more object-oriented).\n- Going with options that team members are ‘comfortable’ with (for example, using outdated languages or platform-dependent compilers), rather than teaching team members new skills. Makes life more difficult in the long run.\n- Defining governance at different stages of the project or potential scenario planning for how governance might change as the project scales up/down/gains new users and so on.\n- Not thinking about community from the start, starting with a Code of Conduct, thinking about a Contributor License Agreement (intellectual property), what processes will be used and how they will work, how they will impact future contributors and the overall project.\n-->\n\n### Preparing for Change\n\n```{note}\n**I work alone, do I need to think about project design?**\n\nThe short answer is 'yes'.\nThe project design will allow you to manage your work well for yourself (see the section: {ref}`Getting Started Checklist<pd-checklist>`).\n\nA little work and time investment early on in project design saves a lot of time later when any circumstances arise that demand change.\n```\n\nIt is really hard for a project to move from practices that were designed for one person to practices that work for a team.\nTherefore, it is essential to document and use practices that will enable collaboration if and when you have to involve others in your project.\nConsidering good team practices even for a project run by an individual makes it easy for them to effectively accomplish their goals.\nFor example, you can define goals in your project and identify tasks by asking questions like:\nhow can my work be split, how will it be reviewed, how will decisions be made, and so on.\nLearn how [agile methodologies](https://en.wikipedia.org/wiki/Agile_software_development) help adapt to changes.\nLearn about good team practices in our {ref}`section on teamwork<cl-new-community-teamwork>`.\n\nProject design does not ensure that everything will always go as planned or there will be no unexpected challenges.\nHowever, it helps you prepare in advance for risk management and to adapt to changes better.\nAlso, see [The cost of change curve](http://www.agilemodeling.com/essays/costOfChange.htm) in the context of Software Engineering.\n\n_This chapter summarises participants' notes from a short workshop called \"Good Practices for Designing Software Development Projects (The Turing Way)\" at the [Collaboration Workshop 2021](https://www.software.ac.uk/cw21) hosted by [Software Sustainability Institute](https://www.software.ac.uk). The workshop was delivered by Malvika Sharan, Emma Karoune and Batool Almarzouq on 31 March 2021. Zenodo. DOI: [10.5281/zenodo.4650221](https://doi.org/10.5281/zenodo.4650221)._\n"
  },
  {
    "path": "book/website/project-design/pd-overview/pd-overview-sharing.md",
    "content": "(pd-overview-sharing)=\n# Sharing Your Research Work\n\nIn order to make sure that (most) research outputs are available to everyone interested in analysing or reusing them, let's take some time to learn about how to share them.\nScience can only progress when we build on each other's work.\nDifferent digital research outputs or {ref}`research objects<cm-ro>`, such as data, software and code, protocols, reagents, and hardware, can be shared as open results on the web.\nThey should come with specific information such as licenses, documentation and source code (repository, online index or archive).\n\nSharing online is not enough - you should make sure that knowledge discovery and navigation process is clearly described.\nYou need to make sure that your research objects are **F**indable, **A**ccesible, **I**nteroperable and **R**eusable.\nThis is referred to as {ref}`FAIR Principles<rr-rdm-fair>` that provides guidelines to improve the Findability, Accessibility, Interoperability and Reusability of digital assets; all of which support research reproducibility.\n\nThis aspect is already considered when developing your {ref}`Data Management Plan (DMP)<rr-rdm-dmp>` (see {ref}`pd-overview-planning-dmp`).\nTherefore, it is important to revisit your DMP to make sure that the guidelines are applied when making your results available.\nYou can learn more about this in a chapter on {ref}`making data FAIR<rr-rdm-fair>`).\n\n(pd-overview-sharing-archive)=\n## Share your data\n\nWhen legally possible, your data should be archived in an open place, where people can access them.\nIf you have sensitive data, you will not be able to share the raw data, but there may be some data you can share.\nA repository is a good place to store your data.\n\nAn overview of some repositories available for archiving your data can be found in [re3data.org](https://www.re3data.org/).\n\nAnother good resource where you can read more about this topic is the chapter on {ref}`Sharing and Archiving Data<rr-rdm-sharing>`.\n\n(pd-overview-sharing-protocols)=\n## Share your Protocols\n\nOne of the reasons to do reproducible research is to provide others with the tools to build on top of it.\nIf the details of the protocols are not shared, researchers can spend months optimizing them before being able to start with their projects.\n\nA tool that can be used to avoid this is [protocols.io](https://www.protocols.io/).\nIt provides a way to ensure that your protocols are openly available, allowing you to update them while keeping track of the changes.\nFurthermore, having your protocols online makes them easier to share, creating opportunity for contributing.\nYou can also link protocol DOIs to related research outputs (datasets, papers) using connection metadata - see our [chapter on linking research outputs](#cm-citable-linking) for guidance on creating these connections.\n\nThe benefits of making protocols FAIR and citable extend beyond credit: searchable protocols help others find proven methods, DOIs enable impact tracking, and formal citations encourage rigorous protocol documentation.\nProtocols.io provides [detailed guidance on protocol DOIs](https://www.protocols.io/help/dois), and Nature Protocols offers [best practices for protocol citation](https://www.nature.com/nprot/).\nFor more information on how DOIs work, see our [chapter on persistent identifiers](#rr-rdm-pid).\n\n## Share Analysis Scripts and Research Software\n\nIf you have been using a version control system with a public repository (see the {ref}`Version Control<rr-vcs>` chapter), you have already done most of the work.\nYou should now consider putting a snapshot of your code in a repository, so you can be sure it gets archived for a relatively long time, and it become citable.\nIndeed, there is no guarantee that the repository will stay available for a long time.\n\n\nYou can integrate your version control system with a general-purpose repository.\nFor example, when integrating GitHub or Gitlab with Zenodo (see {ref}`cm-citable-cite-software`), you can get Digital Object Identifiers or DOIs for your software.\nThis automatically makes it easier to share and makes it citable.\nYou can read about DOIs in the chapter on {ref}`Making Research Components Citable<cm-citable>`.\n\n\n\n## Share Research Hardware\n\nIn absence of better solution, you may deal with your hardware documentation with the same strategy as with your software: using version control  repositories during its development, and zenodo integration for archiving.\nIf your documentation is in the form of a website, try to provide a independent html build that can run without a server.\n\n## Share reagents\n\nDepending on your research domain, you may have produced reagents (genetic material or tissue for example). \nIf there is a specific bank for these products that can share them widely, you may consider using them. \nMake sure a persistent identifier is given, an that the description of your reagents have enough metadata to make sharing useful.\n\n## Collecting your Research\n\nOnce you are done with your research you may want to collect all the digital parts of your project in one place.\nThis is called a research compendium.\nPublishing your paper along with a research compendium allows the full extent of your research: from the design of the project, through the data recollection and analysis and the resulting outputs.\n\nThis has endless advantages. It makes your work shareable and reproducible, others can build upon it and gives you more visibility.\n\nYou can read how to set up your research compendia, {ref}`this chapter<rr-compendia>`.\n\n(pd-overview-sharing-License)=\n## Add License to Research Outputs\n\nEven if you got a license at the beginning of the project you need to think about it again when sharing your outputs and final results - this allows people to have the information about how your research should be reused and shared.\n\nIf you want more information about how to choose and add a license to your project you can check the {ref}`Licensing Chapter<rr-licensing>`.\n\n(pd-overview-citation)=\n## Receive Citations\n\nAll this hard work will have its reward. Having published all your research from the design to the results adds visibility to your work and more opportunity to get credit.\n\nNot only can your results can be cited, but your methods and protocols can be reused and your design can be shared.\n\nRead {ref}`this chapter on ORCID<cm-citable-orcid>` for more information about how you can collect different research outputs in one place using ORCID and highlight them to get fair credit for your work.\n"
  },
  {
    "path": "book/website/project-design/pd-overview/pd-overview-version.md",
    "content": "(pd-overview-version)=\n# Version Control and Documentation\n\nOnce the project is designed, it is important to keep track of all the changes.\nThis will save you a lot of time and can help others understand and reuse your research - you have a record of what worked best and information to understand why.\n\n(pd-overview-version-experiments)=\n## Experimental Work\n\nIt is necessary to write down all the details about your experimental work.\nThis allows future readers, a colleague and your future self to understand and reproduce all the experimental work related to your project. \nFor more information, see [](#rr-rdm-metadata).\n\nA useful tool to do this is [Electronic Lab Notebooks](#rr-open-notebooks) (ELNs).\nELNs are digital versions of paper notebooks, with the added advantage of searchability, secure storage and remote access.\nThey also are easy to share among team members and collaborators.\n\nIt is important to document and share the methodology, analysis and procedures used, as well as data specific information.\n\n(pd-overview-version-comp)=\n## Computational Work\n\nIn the active phase of a project it is important to keep consistency in your code (read this chapter on [](#rr-code-quality), as well as documenting and creating tests for it.\n\nDocumenting your code will help others understand your work.\nSome tools that can be used to document your code more easily are:\n- \"Docstring\" in R or Python\n- \"Javadoc\" format in Java\n- Integrated software development (RStudio, Eclipse, VS Code) facilitate the comment writing process and the generation of documentation.\n\nCreating tests helps to save time and money.\nBy providing a way to know if your code works, mistakes can be easily addressed by you and others.\n\nTo read more about code testing go to [](#rr-testing).\n\n(pd-overview-version-vcs)=\n## Version Control\n\nRecording all the changes made while researching is a principal part of doing reproducible research.\nIt helps you and others understand the decisions made and makes the work reproducible - you will have all the information about the steps taken.\n\nIf working on a collaborative project, this will also help to keep track of who performed each change.\n\nThe added advantage is that everything will be neatly organized, with easy access to the current version of your project and ways to look for changes made in the past.\n\nSome systems for controlling versions are:\n- Git\n- Mercurial\n- Subversion\n\nThere is an extensive chapter about [](#rr-vcs) in the Guide for Reproducible Research that can be helpful at this stage.\n"
  },
  {
    "path": "book/website/project-design/pd-overview/project-repo/project-repo-advanced.md",
    "content": "(pd-overview-repo-advanced)=\n# Advanced Structure for Data Analysis\n\n## Prerequisites/Recommended Skill Level\n\n| Prerequisite | Importance | Notes |\n| -------------|------------|-------|\n| {ref}`Version Control<rr-vcs>` | Helpful | Knowledge of using git for version control |\n| {ref}`Open Research<rr-open>` | Helpful | Components are part of the compendium |\n| {ref}`Reproducible Environments<rr-renv>` | Helpful | Can be used to make the compendium reproducible |\n\n## Summary \n\nWhen planning out a research study, one crucial and often forgotten component is setting up a repository. \nIn this section, the benefits and considerations of designing a repository will be outlined, along with an example structure and further resources to guide your workflow.\n\nThe prerequisites for this chapter can vary depending on the organisational needs of a project. Creating a repository with a simple research project layout can require minimal technical knowledge (such as managing only input data and output results). Meanwhile, advanced repository layouts can be required for more complicated projects (such as projects with dependencies on other projects).\n\n## Background\n\nA repository (or a \"repo\") is a storage location for your research project. A repository can contain a range of digital objects and can be used to store your project by using online platforms such as GitHub. The aim of a repository is to organise your project in such a way this is both accessible to others and efficient to use. \n\nSo far, we saw the key documents that one should add when starting or setting up a project repository.\nIf you are following along, your project should contain the following files:\n\n```\nProject Folder/\n├── CODE_OF_CONDUCT          <- Code of Conduct for community projects\n├── CONTRIBUTING             <- Contribution guideline for collaborators\n├── LICENSE                  <- software license\n├── ...                      <- any other files that you may have added for your project\n└── README.md                <- information about the repo\n```\n\nIn this subchapter, we outline the benefits and considerations of designing a repository, along with an example structure and further resources to guide your workflow.\n\n```{note}\nThe main benefit of designing your repository by intentionally adding documentation, resources and relevant information allows creating an infrastructure for ethical, open and high-quality research from the get-go.\n```\n\n## Main Considerations\n\nWhen sharing your resources via your repository, consider the following aspects of reproducibility in your research:\n\n- Transparency and openness\n- Version control system (no more files like final_v1_FINAL.R, final_v2_FINAL.R, ...)\n- Make it easy to navigate so that you save time for everyone involved\n- Consider {ref}`pd-overview-repro` aspects\n- Make sure that you provide sufficient details so that others can build on your work\n\n## Main Recommendations\n\nAlways consider designing your project for collaboration by adding key documents describing project goals, vision, roadmap, contribution and communication process (as described in earlier subchapters).\n- Include details in {ref}`README file<pd-project-repo-readme>` describing _what_ the repository is for and _how_ to navigate it \n- Provide vision, goals and roadmap wherever possible (see [Kamran Ahmed's developer roadmap](https://github.com/kamranahmedse/developer-roadmap) for example)\n- General structure should separate input (data), methods (scripts) and output (results, figures, manuscript)\n- Specify what shouldn't be tracked in the `.gitignore` file, such as sensitive/private files, large dataset or personal notes \n- Include information on your computational environment {ref}`Reproducible Environments<rr-renv>` to ensure reproducibility (this can also be specified in the README)\n\n## Example Repository Structure \n\n### Example for a Research Project\n\nHere are suggestion of files and folders a research project must have.\n\n```\nProject Folder/\n├── docs                     <- documentation\n│   └── codelist.txt \n│   └── project_plan.txt\n│   └── ...\n│   └── deliverables.txt\n├── data\n│   └── raw/\n│       └── my_data.csv\n│   └── clean/\n│       └── data_clean.csv\n├── analysis                 <- scripts\n│   └── my_script.R\n├── results                  <- analysis output     \n│   └── figures\n├── .gitignore               <- files excluded from git version control \n├── install.R                <- environment setup\n├── CODE_OF_CONDUCT          <- Code of Conduct for community projects\n├── CONTRIBUTING             <- Contribution guideline for collaborators\n├── LICENSE                  <- software license\n├── README.md                <- information about the repo\n└── report.md                <- report of project\n```\n\n### Example with Every Possible Folder \n\nThis example shows different files and directory a project can contain when building a software application or research engineering tools.\n\n```\nProject Folder/                        \n├── analysis                 <- scripts\n│   └── my_script.R\n├── build                    <- built files, Makefile\n|   ├── debug\n|   └── release\n├── data\n│   └── raw/\n│       └── my_data.csv\n│   └── clean/\n│       └── data_clean.csv\n├── docs                     <- documentation\n│   └── codelist.txt \n├── project-management       <- project management related documents\n│   └── communication.md\n│   └── people.md\n│   └── project-report.md\n│   └── tools.md\n├── res                      <- static resources (images and audio files)\n│   └── figures\n├── .gitignore               <- files excluded from git version control \n├── CODE_OF_CONDUCT          <- Code of Conduct for community projects\n├── CONTRIBUTING             <- Contribution guideline for collaborators\n├── lib                      <- dependencies (shared components that can be used across an application or across projects, code that supports the core application)\n├── logs.txt                 <- history of all major updates like feature release, bug fix, updates\n├── example                  <- example code application\n├── LICENSE                  <- software license\n├── environment.yml          <- anaconda environment setup   \n├── install.R                <- R environment setup\n├── requirements.txt         <- python environment setup\n├── runtime.txt              <- R in binder setup\n├── report.md                <- report of analysis\n├── README.md                <- information about the repo\n├── src                      <- source files\n└── test                     <- unit tests  \n```\n\n## Resources\n\n### R and Python Packages\n\n|    R     | Python | \n| -------- | -------|\n|[rrtools](https://annakrystalli.me/rrresearch/10_compendium.html)|[compendium-dodo](https://pypi.org/project/compendium-dodo/)|\n|[template](https://github.com/Pakillo/template)|[css-compendium](https://pypi.org/project/ccs-compendium/)|\n|[rcompendia](https://github.com/FRBCesab/rcompendium)| |\n|[remake](https://github.com/richfitz/remake)| |\n\n### Curated Examples of GitHub Repositories\n\n- [_The Turing Way_ project repo](https://github.com/the-turing-way/the-turing-way)\n- [Jupyter Book project repo](https://github.com/executablebooks/jupyter-book)\n- [Pandas Package repo](https://github.com/pandas-dev/pandas)\n- [Atom Text Editor repo](https://github.com/atom/atom)\n\nFor more details, please follow {ref}`project-repo-recommendations-advanced`.\n"
  },
  {
    "path": "book/website/project-design/pd-overview/project-repo/project-repo-contributors.md",
    "content": "(pd-project-repo-contributors)=\n# Contributors and Communication Pathways\n\nYour project is likely to be better if what you create is used by others and they share their ideas and feedback to add new features or improvements.\nWhen designing your project, the Goals and aims are as important as their contributors.\nWhen designing your project, it is important to think about who the contributors are and how they will collaborate in the project (as described in {ref}`pd-project-repo-readme` and {ref}`pd-project-repo-roadmapping`).\n\nIt is also important to set clear expectations for your contributors and describe resources available to facilitate their participation, which discuss in this subchapter.\nThe working relationships you establish with your contributors by welcoming them, engaging with them and supporting them, makes your contributors feel valued and excited about their contributions.\n\n(pd-project-repo-contributing-contributors)=\n## Identifying Your Contributors\n\nMost collaborations in community projects are established and maintained with the contributors.\nEffective collaboration means that all contributors are given the possibility to combine their diverse perspectives and skills to create meaningful resources.\nThey contribute to the project in various ways, for example by developing documentation or code, fixing bugs, suggesting new features or supporting others.\n\nTo make sure that you target a diverse set of collaborators, start by designing {ref}`Persona<pd-persona>` for your project.\n\n```{note}\nA persona is a detail of an imaginary user or member, based on real-world observations and understandings of existing members or potential future members.\nIt is meaningful when paired with pathways through which these personas engage with a project.\n```\n\nWhen you have selected a few personas that capture your idea of contributors who want to involve, you can develop pathways that they can take to engage and contribute to your project (see {ref}`Persona<pd-persona-contributors>`).\n\n(pd-project-repo-contributing-communication)=\n## Setting Communication Pathways\n\nWhen setting up your communication pathways, there are some important things to consider such as the following:\n- How easy is it for the community to find these channels and subscribe/unsubscribe to them?\n- Are they moderated? Under-represented groups may not participate if a channel is free for all.\n- How easy is it for members of the community to find and join specific conversations they are interested in?\n- Will it be a “noisy” channel (for example, lots of notifications)?\n- Can users control or filter what kind of information they receive?\n\nSee {ref}`cm-os-comms` to understand various features you can consider for setting a communication channel for your project.\n"
  },
  {
    "path": "book/website/project-design/pd-overview/project-repo/project-repo-participation.md",
    "content": "(pd-project-repo-participation)=\n# Participation Guidelines\n\nIn addition to setting out some ground rules for communication in your project, you might want to provide some guidelines (contribution guidelines) and social norms (Code of Conduct) that potential collaborators should follow to add their contributions.\n\n(pd-project-repo-participation-guideline)=\n## Contribution Guidelines\n\nThose instructions are laid out in a CONTRIBUTING file (this is an idea borrowed from software engineering where capitalised filenames are the norm for the most important files of a project).\nA CONTRIBUTING file describes how others may contribute to the project and engage with other contributors (or a community).\n\nYour audiences for the contributing guidelines are your potential contributors who need to understand what is expected from them, project consumers who need to know how they can remix and reuse your work, and yourself who creates and maintains the file as a key part to outline interactions with your community.\n\nHere are a few suggestions of what your contributing guidelines could cover:\n\n* Your project vision.\n* A welcome to potential contributors.\n* Pointers to the Code of Conduct.\n* A list of other important resources such as the README file or your project's roadmap.\n* Communication channels where contributors can reach you.\n* How to submit changes.\n* Good first bugs or issues to start working on.\n* How to report a bug.\n* Your recognition model and how contributions will get acknowledged.\n* Where to go for help.\n\nLike other key documents, it is recommended that you look at examples of and reuse contribution guidelines of open source projects like [_The Turing Way_](https://github.com/the-turing-way/the-turing-way/blob/lottycoupat-roadmapping-casestudy/CONTRIBUTING.md) that describes how you can contribute or re-this project.\n\n(pd-project-repo-participation-coc)=\n## Code of Conduct\n\n> Code of Conduct, commonly abbreviated as “CoC”, is a set of rules outlining the social norms, rules, & responsibilities of an individual project, party or organization.\n\nIf your project is open for individuals to contribute and foster a community, your project should be designed to be welcoming and inclusive to thrive.\nOne way to establish guidelines for participating in your project is to create a CoC and Participating Guidelines.\nThese documents can be used for virtual interactions but also for any events you might host related to your project.\nCodes of Conduct serve two main purposes:\n* Establishing the kind of behaviour encouraged in the community you would like to create as well as clearly outlining unacceptable behaviour.\n* Outlining the process by which problems or violations of the guidelines will be addressed and who will be in charge of enforcing the Code of Conduct.\n\nWe should also provide clear guidelines for how to process incidents if something happens, from reporting to enforcement.\nIt is very important to enforce the CoC, the only thing that is worse than not having one, is not enforcing it.\nBy prominently displaying and practising these guidelines, you can ensure that social behaviour expectations are modelled and encouraged among all participants, including the project leadership.\n\nYou can create your own CoC by using the following process:\n* Brainstorm core words that represent community values\n* Consider behaviours to encourage/discourage\n* Think through the process for enforcement, incident reporting & response\n* Understand/accept your role as project lead and act collaboratively\n\nIt is recommended to select and adapt a well established Code of Conduct.\nMany openly developed projects have a Code of Conduct in place that often is openly licensed and can be re-used and adapted for your own project.\nThe [Turing Way Code of Conduct](https://github.com/the-turing-way/the-turing-way/blob/main/CODE_OF_CONDUCT.md) is one example of a Code of Conduct built on various existing ones and can be adapted further.\n\nYou can also consult the following references and templates to get started on a code of conduct for your project.\n- [opensource.guide for CoC](http://opensource.guide/code-of-conduct/)\n- [Contributor Covenant example of CoC](http://contributor-covenant.org/)\n- [The Carpentries CoC](https://docs.carpentries.org/topic_folders/policies/code-of-conduct.html)\n- [CSV,Conf conference CoC](https://github.com/csvconf/csvconf.com/blob/gh-pages/coc.md)\n- [PyCon CoC](https://us.pycon.org/2020/about/code-of-conduct/)\n"
  },
  {
    "path": "book/website/project-design/pd-overview/project-repo/project-repo-readme.md",
    "content": "(pd-project-repo-readme)=\n# Landing Page - README File\n\nA landing page for your project is the first thing new visitors to your project repository will see.\nOn an online repository, such as GitHub, this landing page is named 'README' which is equivalent to the main page of a website.\n\n> README files are the welcome mat for your project - it gives you a chance to hook potential contributors and users by showing the value of your project. - [Mozilla Open Leadership](https://mozilla.github.io/open-leadership-training-series/articles/opening-your-project/write-a-great-project-readme/)\n\nTo communicate your project effectively and invite your readers to contribute to your project, your README file should cover:\n* What you are doing, for whom, and why.\n* What makes your project special and exciting.\n* How to get started.\n* Where to find key resources.\n\nThink about designing a landing page that is attractive for as diverse readers as possible and provides all the useful information without overwhelming your contributors.\nFor a software project, provide instructions on installation, test, deployment and other requirements for running your software.\nSee this [template by PurpleBooth](https://github.com/PurpleBooth/a-good-readme-template).\n\nFor more details, see [this presentation](https://docs.google.com/presentation/d/e/2PACX-1vTvwtT3GddLaDr8J4ZEf8TkufiN_Wn1Kgv2xu6YSH8hgocb6LJ_WB82OzfcPeJ0b09_xyMOMSft7-Gq/pub?start=false&loop=false&delayms=3000) by the [Open Life Science](https://openlifesci.org/) training and mentoring program.\nAlso, see this [short workshop by Hao Ye](https://ha0ye.github.io/CW21-README-tips/) with a [README template](https://ha0ye.github.io/CW21-README-tips/template_README.html) to get you started.\n\n```{note}\n**Three lessons about README**\n\n- Know your users and what they need\n- Get users doing powerful things quickly\n- Watch out for jargon!\n\nSource: Hao Ye. (2021, March). Collaborations Workshop 2021 Mini-Workshop: README tips to make your project more approachable (Version v1.0.0). Zenodo. http://doi.org/10.5281/zenodo.4647391\n```\n\n## Case Study: _The Turing Way_\n\nUsing [_The Turing Way_ README file](https://github.com/the-turing-way/the-turing-way/blob/main/README.md) as an example, we describe what a good README file looks like.\n\n_The Turing Way_ README file includes the following details provided in chronological order:\n1. Project name as the top header.\n2. A set of [GitHub badges/shields](https://github.com/badges/shields) (You can create your own badge [here](https://shields.io/)).\nGitHub shields are clickable buttons that provide concise actions related to the project, which in _The Turing Way_ include the following:\n[![Read the book](https://img.shields.io/badge/read-the%20book-blue.svg)](https://book.the-turing-way.org)\n[![Join our tinyletter mailing list](https://img.shields.io/badge/receive-our%20newsletter%20❤%EF%B8%8F-blueviolet.svg)](https://buttondown.com/turingway)\n[![Join the chat at https://gitter.im/the-turing-way/the-turing-way](https://img.shields.io/gitter/room/the-turing-way/the-turing-way?logo=gitter)](https://gitter.im/the-turing-way/the-turing-way)\n[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3233853.svg)](https://doi.org/10.5281/zenodo.3233853)\n[![](https://img.shields.io/static/v1?label=TuringWay&message=I%20want%20to%20contribute!&color=yellow&logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8%2F9hAAACYklEQVQ4jXXTy09TQRTH8f5VPhI1xoVxYURNAFcmRleaGDdGXQlKAYkLUARNfICoScGKpTyE3t5bkKD2AUQepUXB0gcgLTalD9rema8LKRVrT3I2k%2Fl95kwyY6BMfQiFqHaoVDlUBoJBZJl9hn8XRsIhqh0abd55tnWdrBA8WfBSpakMhUqhXUCJhKl2aLR65%2FEtLeGc%2BYoy5aHf46bX7cThctK%2BAw2HQkVAW41wzqHRMjNNRteR%2BQzGjg5udZtQ47FiO50gdLZ1nVbvPNUOFSUSxnB4sJ%2F0TjCTTjHk%2BoJl%2BRtqPEaL6zMH79Rw0dyDVVURqRgyn0EkN8jkshwZGsBQodgQyQ2kyDPsce859drjdqLRKE0D%2FZhHR5F6DpHc2B3%2FjF3BcFqxARIpBXXmt9ii67vAYDhIr8fNx0UfE3OzzC0sIHIpxNYqSPEHqFBsiFQMkU3h8vs5%2FvABTeNje6BCj%2FxcwzLlIZHYROq5v4EoIr2JyCbJ57Kobjd3u7o41v4I68pyCfTGrhSvUKHYAJD5bcTWGjKbJJdO4A8E6JyexP4rWgK8Vkb2AjK7hcxnmZybxfF9kff%2BhZJQofvXwhg7O4vAfU2l79ME79xOrjY3c9ZYVzZs8nvZf6%2BRQCRCTgiODg1iCK6vc6WtjZM1tzlRW8sNa99%2Fx64fH%2BNAQz0un49nfh%2BVmspAcKX4lKWUbMbjXOg2cf3Vy%2BLIoRWqekxc7nhB6%2FQ0lZqKJRBAyjKfKZFIcKixgVPPn3LTamFfUyPne7qp1Oz0Bn4g5d7vVAIUamJ2FqPZzCW7gvlHabBQvwE2XnlAiFRrOwAAAABJRU5ErkJggg%3D%3D)](https://github.com/the-turing-way/the-turing-way/blob/main/CONTRIBUTING.md)\n3. Links to the translated version of the README files to allow readers to read it in their preferred language.\n4. One sentence each providing project vision, goal and target audience.\n5. A table to the content providing quick links to different sections of the README file\n6. Different sections with appropriate details and links:\n  - About the project: motivation and background\n  - The team: who the team members are\n  - Contributing: links to contribution guideline and Code of Conduct\n  - Citing The Turing Way: instructions for citing the project\n  - Get in touch: contact details of the project leads\n\nFinally, we provide a complete list of contributors to the project.\nThis contributors table is updated using the [all-contributors bot](https://allcontributors.org) that acknowledges all kinds of contributions including those that 'do not push code'.\n"
  },
  {
    "path": "book/website/project-design/pd-overview/project-repo/project-repo-resources.md",
    "content": "(project-repo-recommendations)=\n# Recommendations and Resources\n\n(project-repo-recommendations-checklist)=\n## Checklist for Setting your Project\n\n* Create README and Vision file\n* Create a project roadmap to share\n* Develop a CONTRIBUTING file\n* Select & adopt a Code of Conduct with reporting & enforcement guide\n* You can also create a page dedicated to help your community members explore your project and its resources (see [Django Documentation](https://docs.djangoproject.com/)).\n\nThese documents are also effective tools for community building as it supports early contributors to get easily onboarded and makes it easy for past contributors to return.\n\n### GitHub Insights\n\nGitHub encourages collaboration practice in their community guidelines.\nThe insights tab of your GitHub project provides a section called \"Community\" that includes a list of recommended documents that your project should have.\n\n```{figure} ../../../../figures/community-profile.png\n---\nname: community-profile\nalt: Image of a checklist in Community section of Insights tab of a GitHub project.\n---\nChecklist of recommended documents\n```\n\n(project-repo-recommendations-advanced)=\n## Resources for Advanced Structure for Data Analysis\n\n- See the {ref}`rr-compendia` chapter.\n- Max Joseph, [How (and why) to make a research compendia](https://mbjoseph.github.io/intro-research-compendia/#1). (2020, March 19). Presentation.\n- Nüst, D., Boettiger, C., & Marwick, B. (2018). [How to Read a Research Compendium](https://arxiv.org/abs/1806.09525v1). arXiv, 1806.09525. Manuscript. \n- Perez-Riverol, Y., Gatto, L., Wang, R., Sachsenberg, T., Uszkoreit, J., da Veiga Leprevost, F.,  Christian Fufezan, Ternent, T., Eglen, S. J., Katz, D. S., Pollard, T. J., Konovalov, S., Flight, R. M., Blin, K., Vizcaíno, J. A. (2016). [Ten Simple Rules for Taking Advantage of Git and GitHub](https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1004947). PLoS Comput. Biol., 12(7), e1004947. doi: 10.1371/journal.pcbi.1004947. Peer-reviewed Article.\n- Venigalla, A. S. M., & Chimalakonda, S. (2021). [What's in a GitHub Repository? -- A Software Documentation Perspective](https://arxiv.org/abs/2102.12727v2). arXiv, 2102.12727.\n- [The Relationship Between Folder Use and the Number of Forks: A Case Study on Github Repositories](http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.650.8150). (2021, July 02).\n- Marwick, B., Boettiger, C., & Mullen, L. (2018). [Packaging Data Analytical Work Reproducibly Using R (and Friends)](https://www.tandfonline.com/doi/abs/10.1080/00031305.2017.1375986). American Statistician, 72(1), 80–88. doi: 10.1080/00031305.2017.1375986\n"
  },
  {
    "path": "book/website/project-design/pd-overview/project-repo/project-repo-roadmapping.md",
    "content": "(pd-project-repo-roadmapping)=\n# Roadmapping\n\nIf you plan a large piece of work in your project, it is a good idea to produce an outline of the work to share with your potential contributors.\nYour roadmap should cover your goal and vision and include a timeline for tasks that need to be completed, thus helping new contributors to your project to get an understanding of what is currently happening on the project and what's coming next.\n\n```{figure} ../../../../figures/project-roadmap.jpg\n---\nname: project-roadmap\nalt: image shows a hand holding a smartphone with a map that is marked with milestones 1, 2 and 3. This phone app for map or navigator analogy is helpful to understand milestones and project roadmaps in research projects.\n---\nIllustration about project roadmap.\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: 10.5281/zenodo.3332807.\n```\n\nTo create a roadmap, it is important to map out the key milestones, tasks needed to accomplish the milestones and related challenges to help you allocate your resources and time to work on them efficiently.\nMilestones can be organised around your project's objectives, community events, contributors development or timeframes.\nIf you work on GitHub, you can use [GitHub's Project board](https://docs.github.com/en/github-ae@latest/issues/organizing-your-work-with-project-boards/managing-project-boards/about-project-boards) to manage all the tasks on issues where you provide details and collect relevant information collaboratively and openly.\n\nA roadmap can be described in the landing page or README file to describe the following aspects of your project:\n\n1. Project summary to provide an overview and the current status of your project.\n2. Onboarding information describing how others can get involved and what immediate tasks they can do.\n3. Timeline with both short-term and long-term goals for your project describing tasks that need to be done, what contributors are working on and where it is going to happen next.\nFor example, if a new release of the project will be made or an event will be hosted.\n\nFor details, please see [this presentation](https://docs.google.com/presentation/d/e/2PACX-1vSMCLWnN1_lO4ofD9cCjN9TJxyHYIvBFfgarOlwi95G4JJ5m672v-sYFbvfRyHPag83XviEJBrIecga/pub?start=false&loop=false&delayms=3000) by the [Open Life Science](https://openlifesci.org/) training and mentoring program.\n\n## Case Study: AutSPACES Project\n\n*This case study has been drafted by Lotty Coupet, a community manager of the AutSPACES project (2021).*\n\n[AutSPACEs](https://github.com/alan-turing-institute/AutSPACEs) is a citizen science platform co-created by autistic people and their supporters alongside researchers and the open source community.\nTo successfully communicate where we are and what needs to be done, the AutSPACEs project has created a highly detailed Roadmap.\n\n**How did we get started?**\n\nTo kickstart the creation of a Roadmap we used the issues function in GitHub to begin the journey of creating a Roadmap.\nHere, we have raised an issue in our GitHub repository where we invite contributors to comment on any proposed milestones and surrounding tasks that should be included in the roadmap.\n\nThe Community Manager will collate all the information to produce a Roadmap that will be proficient for the community.\n\n**What does our Roadmap include?**\n\nThe road map will include high-level milestones which are made up of a list of issues of which each contains a checklist with granular tasks.\nThis will inform any contributor where they can start participating within the project.\n\nMilestones, in this project, are seen more as an overarching theme rather than a tick list.\nThe idea behind this is that we don't want to tick off a milestone as we believe work is continuous, open and subject to review and iteration in all aspects.\n\nKey timelines and dependencies will be highlighted as this will allow for all contributors to know how each task fits into the wider project.\nThere will be a prioritisation of tasks that correlate with the strategic direction of the project; what is needed to be done at this point.\n\n**Where will we put our Roadmap?**\n\nThe AutSPACEs project is a Citizen Science and Participatory Research project.\nThis means that many of our contributors do not have the technical expertise to use GitHub.\nTherefore, we need to ensure that our roadmap is accessible for all and thus not only accessed via GitHub. Therefore, our roadmap will be hosted:\n- On our website\n- In a shared document for internal use (Excel sheet)\n- Github repository ({term}`Markdown` file)\n\nHowever, we will address this technical barrier as our roadmap will include a link to issues in the repository.\nTo overcome this, we have planned to teach basic skills in GitHub, such as creating an account and accessing our issues list.\n\n**How will we keep it updated?**\n\nOne of the main issues with Roadmaps and similarly project plans is the risk of them becoming out of date.\nIt can confuse rather than help in communicating where the project is and where it needs to go.\n\nThe AutSPACEs project creates a fortnightly progress report recording updates from the community, software development status and research progress, as well as what tasks have been completed since the last update and what should be the next steps.\n\nThese updates drive and feed into the future updates of the roadmap.\nThis process allows us to ensure that our roadmap and tasks priorities are always up to date.\n"
  },
  {
    "path": "book/website/project-design/pd-overview/project-repo.md",
    "content": "(pd-project-repo)=\n# Creating Project Repositories\n\n## Prerequisites\n\n| Prerequisite | Importance |\n| -------------|----------|\n| {ref}`cl-github-novice` | Helpful |\n\n\n## Summary\n\nThis chapter introduces a step-by-step guide on how to set up a project repository.\nSpecifically, we describe key documents that you should add to your repository in order to maintain documentation and ensure effective collaboration.\nWe provide examples from GitHub repository hosted and maintained by researchers in open science, however, the principles are applicable to any team-led online repository.\n\n## Motivation\n\nOnline project repositories require documentation so that all collaborators are informed of the updates and contributors are provided with details they need to contribute efficiently.\nShared documents can help you get your ideas across to new or potential contributors.\nContributions can be anything from new ideas to bug reports and actual code contributions.\nOpen science practices described here will also make it easier for you to lead closed-source projects collaboratively and transparently for your teams.\n\n```{figure} ../../../figures/file-management-manual.jpg\n---\nname: file-management-manual\nalt: image shows two people organising files. One person is holdinng up a README file and other person is reading the details to set up the data and analysis files in the drawer\n---\nIllustration about managing files in a repository.\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: 10.5281/zenodo.3332807.\n```\n\nIn this chapter, we have described following documents that should be added to a project repository:\n- {ref}`Landing Page - README File<pd-project-repo-readme>`\n- {ref}`Roadmapping<pd-project-repo-roadmapping>`\n- {ref}`Contributor Pathways<pd-project-repo-contributors>`\n- {ref}`Participation Guidelines<pd-project-repo-participation>`\n\n(pd-project-repo-license)=\n## Start by Adding a License\n\nOne of the most important documents for your project is a license.\n\n```{note}\nWithout a license, all rights are with the author of the code, and that means nobody else can use, copy, distribute, or modify the work without consent.\nA license gives this consent.\nIf you do not have a license for your software, it is effectively unusable by the whole research community.\n\n**See {ref}`rr-licensing` chapter for details**\n```\n\nThe first file you can add to your project repository is a 'LICENSE' file.\nYou can select a license type based on the level of freedom you would like to give to your users to use and build upon your project, visit [choosealicense.com](https://choosealicense.com/).\nPlease follow the {ref}`Licensing Checklist<rr-licensing-checklist>` when adding a license to your project repository.\n"
  },
  {
    "path": "book/website/project-design/pd-overview.md",
    "content": "(pd-overview)=\n\n# Overview of Project Design\n\n## Summary\n\nProject design techniques can help researchers clearly identify and communicate their project goals, skill requirements and resource available to them.\nIt ensures that all stakeholders can work together efficiently, apply reproducibility methods and communicate their work effectively with their target audience.\nA project design requires project leads, managers and organisers to be deliberate and clear about their expectations from the beginning of their projects to ensure successful implementation of their plans at all stages of research.\n\n```{figure} ../../figures/project-design-overview.*\n---\nheight: 500px\nname: project-design-overview\nalt: This illustration shows a stage with a trophy labeled as 'reproducible research trophy'. A diverse team of four people are helping each other take staircase towards the trophy. The staircase has three sets of labels indicating research stages as (1) before, that includes 'team, funding, question, methodology, approval, license', (2) during that includes version control and documentation, and (3) after that includes archiving and publishing steps.\n---\nIllustration of project design overview. _The Turing Way_ project illustration by Scriberia.\nUsed under a CC-BY 4.0 licence.\nDOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807)\n```\n\nIn this chapter, we have curated good practices to ensure that we maintain good communication (and avoid miscommunication), create opportunities for collaboration and ultimately ensure reproducibility at different stages of the project.\n\n## Background & Motivation\n\nEveryone applies various design concepts to their project formally or informally.\nHowever, often we think about these concepts retrospectively, when the project is over and we gain a better understanding of design mistakes that could have been avoided with better planning and organisation.\n\nThis lack of planning contributes to the fact that most research work can not be directly and independently reproduced, and that communication and collaboration style across different groups differ and hence are challenging.\n\nTo help learn good practices, _The Turing Way_ provides various chapters for {ref}`reproducibility<rr>`, {ref}`communication<cm>` and {ref}`collaboration<cl>` that we consider essential for research reproducibility.\nAlthough publications{cite:ps}`Turkyilmaz-vanderVelden2020projectdesign` and _The Turing Way_ chapters on specific methods, tools and practices exist it can be overwhelming to know which chapters to read if you don't already know about the concepts.\n\nIn this chapter, we have curated essential practices and recommendations and linked them to individual chapters across different guides.\n\n```{note}\nThere are many chapters that we don't link here to avoid overwhelming readers who are new to reproducible project design.\nWe invite you to contribute to this chapter by adding important tools or practices that have not been mentioned here.\n```\n\nIn the different subchapters we discuss how you can {ref}`start planning<pd-overview-planning>` for project design, the {ref}` communication and collaboration<pd-overview-repro>` aspect for ensuring reproducibility, {ref}`tools and methods<pd-overview-methods>` for reproducibility, {ref}`version control and documentation<pd-overview-version>` aspects and {ref}`sharing your research<pd-overview-sharing>`.\n\n(pd-overview-mistakes)=\n\n## Learning from Mistakes\n\n> “Building takes many, many mistakes.”\n>\n> -- Becky Chambers, [The Long Way to a Small, Angry Planet](https://www.goodreads.com/work/quotes/42270825)\n\nLearning about past design mistakes can give us insight into what we can do differently in the future.\nWe asked a group of researchers to share what they consider their project design regrets, which we have summarised here:\n\n- Not advocating for clearer goals and success criteria from the beginning.\n- Not communicating the project vision clearly/often enough to the other team members.\n- Not ensuring that all stakeholders were fully aware of the nature of the project.\n- Not understanding that project design is about people first. Designs motivate stakeholders and allow collaboration and inclusion.\n- I guess I wrote these as actions I wish I had done better - Not setting short- and long-term milestones, communicating and enforcing norms for collaborator engagement, delegating work and project management tasks.\n- Not having documentation besides final reports. When being asked about the code or dataset (raw and process), step by step process from preparing data to getting the results, lack of documented guidance in one place made it hard to trace the project with all team members (classic problem).\n- Not properly taking into account the degree to which requirements will change throughout a project - which happens a lot in academia - and the effect this has on designs that then also need to change.\n- Trying to plan too much at the beginning and never getting started.\n- Feeling like I am always taking an ad hoc approach to planning a project and then feeling like I am spending too much time on the organisation side of the project because I don’t have a set workflow to handle project planning and design. Also, not knowing how project planning fits into project design.\n- Using a very messy excel to store/process data, the shame!\n- Over-engineering a design for features that didn’t end up being implemented (in life before academia!)\n- Not implementing Git flow from the start, and not teaching collaborators how to use Git flow.\n- Not developing tests until after a significant amount of code was written.\n- Not doing code reviews.\n- Not defining use scenarios for the software from the beginning, meaning we didn’t pay enough attention to data input and output.\n- Agonising too long before switching to objectively better design (particularly translating from a largely functional codebase to more object-oriented).\n- Going with options that team members are ‘comfortable’ with (for example, using outdated languages or platform-dependent compilers), rather than teaching team members new skills. Makes life more difficult in the long run.\n- Defining governance at different stages of the project or potential scenario planning for how governance might change as the project scales up/down/gains new users and so on.\n- Not thinking about community from the start, starting with a Code of Conduct, thinking about a Contributor License Agreement (intellectual property), what processes will be used and how they will work, how they will impact future contributors and the overall project.\n\n_This section summarises participants' notes from a short workshop called \"Good Practices for Designing Software Development Projects (The Turing Way)\" at the [Collaboration Workshop 2021](https://www.software.ac.uk/cw21) hosted by [Software Sustainability Institute](https://www.software.ac.uk). The workshop was delivered by Malvika Sharan, Emma Karoune and Batool Almarzouq on 31 March 2021. Zenodo. DOI: [10.5281/zenodo.4650221](https://doi.org/10.5281/zenodo.4650221)._\n"
  },
  {
    "path": "book/website/project-design/project-design.md",
    "content": "(pd)=\n# Guide for Project Design\n\n***This guide covers topics related to effective project planning and management.***\n\nIn this guide, we compile best practices and guidance for designing research projects by including different aspects of project management and (iterative) development practices derived from academia and industry.\n\nBefore starting a project, researchers must define the project's scope. \nResearchers should start by identifying the main questions they aim to address through their work. Scope definition also includes defining the project goals, possible outcomes, resources requirements, people involved (collaborators, users and target audience) and possible constraints.\n\nResearchers can then proceed to identify the expected minimum viable product of their project, synergies with other projects (similarities as well as differences), measure(s) of success, and the overall impact they hope to achieve.\nAfter these crucial questions are addressed, planning can focus on the operational aspects of the project, including ensuring that the project is usable and compliant with appropriate external guidelines (for instance, ethics requirements and regulatory limitations). \n\n```{figure} ../../figures/project-design.*\n---\nname: project-design\nalt: A group of people collaboratively developing a project plan by writing on a giant canvas with a giant pencil to signify the importance of design work in the project management process. \n---\n _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\nWhen designing a team-based project, it is important to think about all the skills required for the project and the resources needed to access those skills.\nThe project design also includes aspects such as timeline, budget, risks, expectations, resources for project management and preregistration of research protocols.\nWith these viewpoints, we welcome chapters defining the requirements in a project in terms of up-skilling, supporting and improving accessibility of different stakeholders.\n\nWe hope you will learn from different case studies for small, mid-size, and large projects spanning both short-term and long-term plans.\nIf you are brave enough, your examples of failed projects will be incredibly valuable for understanding how to avoid making the same (totally understandable) mistakes again.\n\nCheck out our [contributing guidelines](#ch-contributing) to get involved.\n"
  },
  {
    "path": "book/website/project-design/project-management-methodologies/overview.md",
    "content": "(pd-frameworks-overview)=\n# Project Management Frameworks Overview\n(pd-frameworks-overview-prerequisites)=\n## Prerequisites\n| Prerequisite | Importance | Skill Level | Notes |\n| -------------|----------|------|----|\n| None |\n\n## Summary \nProject management methodologies or frameworks are structured approaches to planning, delegating, tracking, managing changes, and evaluating work across different industries, including research. \nThey provide clear guidance and direction on how work should be managed effectively, and can support greater collaboration, transparent decision making, and deliberative working. \n\nResearch projects are often characterised by uncertainty, evolving objectives, and a need for flexibility.\nAs such, they require a framework that can accommodate these dynamics.\nChoosing the right project management framework for a research project is crucial, as it can significantly influence your research project's success, efficiency, and potential for collaboration.\nAs a recent study pointed out, _\"a fine balance is needed between implementing management approaches to support the efficient and effective delivery of projects while not compromising accountability, creativity and innovation.\"_ @santos2022framework\n\nTraditional methodologies, for example Waterfall, offer a structured, linear approach beneficial for projects with well-defined stages and stable requirements, known from the beginning of the project design process.\n\nAgile frameworks, including Scrum and Kanban, are flexible and can adapt to changing research landscapes and iterative discovery processes that are part of many research projects.\n\nThere are also a number of other methodologies and philosophies that you can explore: PRINCE2, Lean, Stage/Phase Gate, and many more.\n\nThe decision between project management frameworks hinges on the nature of the research, the level of clarity in objectives, and the extent to which the project can accommodate changes in scope or direction.\nSome methodologies are better suited for flexible collaboration between distributed teams.\nBalancing these factors with team dynamics and stakeholder expectations will guide researchers in selecting a framework that aligns with their project's goals, timeline, and complexity, ensuring a smooth and effective research process.\n\nThese pages on The Turing Way are designed to assist you in choosing the right project management framework for you.\n\n## Quick comparison between methodologies/frameworks\n\n| **Methodology / Framework** | **Approach** | **Key Features** | **Flexibility** | **Change Management** | **Suitability** | \n|-------------------|-------------------|--------------------------|-------------------|----------------------|-----------------------------------|\n| **Agile** | Iterative and incremental | Flexibility, adaptability | High | Welcomes changes | Complex projects with variable requirements | \n| **Scrum** | Iterative, time-boxed sprints | Roles (Scrum Master, Product Owner), Artifacts, \"Ceremonies\" | Moderate to High | Adapts to changes in sprints | Projects that benefit from regular reassessment | \n| **Kanban** | Continuous flow | Visual workflow (Kanban board), WIP Limits | High | Adapts easily to changes | Work with varying priorities and volume | \n| **Waterfall** | Linear and sequential | Sequential stages, Documentation-heavy | Low | Resistant to changes | Projects with well-defined requirements | \n| **PRINCE2** | Process-driven, structured | Defined roles, Stage controls, Tailorable | Moderate | Controlled changes | Large, complex projects requiring tight control | \n| **Stage/Gate (Phase Gate)** | Structured, phase-based | Defined stages, Gates for review/decision | Moderate to Low | Controlled at each stage | Projects that need regular reviews and checks | \n| **Agile Stage Gate** | Blend of Agile and Stage Gate | Combination of flexibility and structured decision points | High | Welcomes changes amidst stages, controlled gates | Complex projects requiring regular reassessment | \n\n-----\n\n\n| **Methodology / Framework** | **Origin / typically used in** | **Focus** | **Outcomes** | **Use in Research Projects** | **Adaptability** |\n|------------------------|--------------------------------------------------|--------------------------------------------------|--------------------------------------------------|--------------------------------|----------------------------------------|\n| **Agile** |  Software development, creative projects | Customer satisfaction, team collaboration | Incremental improvements, adaptability to change | Highly suitable due to its iterative nature, allowing for frequent reassessment and adaptation as research findings evolve. | Extremely adaptable, can easily integrate new research directions and findings. |\n| **Scrum** |   Software development, product development | Team productivity, Iterative development | Deliverables at the end of each sprint | Suitable for research projects that can be broken down into smaller, iterative cycles, with regular reassessment points. | Adaptable within each sprint cycle, but less so between sprints. |\n| **Kanban** |  Operations management, maintenance projects | Workflow efficiency, Limiting work in progress | Continuous delivery, Improved flow efficiency | Suitable for ongoing research projects with continuous tasks and shifting priorities. | Highly adaptable to changing priorities and can handle evolving research needs seamlessly. |\n| **Waterfall** |  Construction, manufacturing | Comprehensive planning, Documented process | Predictable results, Detailed documentation | Less suitable for research due to its rigid structure and difficulty in accommodating changes once the process has begun. | Low adaptability, not ideal for research projects where requirements and goals may evolve. |\n| **PRINCE2** |   Government, large corporate projects | Project governance, Control mechanisms | Project completion within specified constraints | Moderately suitable, especially for large-scale research projects needing stringent control and structured management. | Moderate adaptability, with some flexibility within its structured framework. |\n| **Stage/Gate (Phase Gate)** |  Product development, large-scale engineering projects | Stage completion, Risk management | Go/No-go decisions at each phase, Risk mitigation | Moderately suitable for research projects that are large and complex, requiring systematic review at each phase. | Moderate adaptability; changes are generally feasible at specific stages, but less so mid-phase. |\n| **Agile Stage Gate** |  R&D, product development | Agility with structured reviews | Agile flexibility with stage-wise decision making | Highly suitable for research, combining the flexibility of Agile with the structured review process of Stage Gate. | Very adaptable, offering the benefits of Agile’s responsiveness with added decision points for reassessment. |\n\n## How Frameworks Intersect\n```{figure} ../../../figures/project-management-diagram.png\n---  \nheight: 390px  \nname: project-framework-venn  \nalt: Venn diagram illustrating the relationships between different project management frameworks. Three overlapping circles represent Iterative Frameworks (Flexible & Adaptive), Structured Frameworks (Defined & Controlled), and Change-Oriented Frameworks (Easily Adapts to Changes, Even Outside Sprints). Scrum is placed under Iterative Frameworks, Agile/Kanban falls under both Change-Oriented and Iterative, Waterfall & Stage Gate are under Structured, PRINCE2 is positioned under Structured and Change-Oriented, while Agile Stage Gate sits underneath all three categories as a hybrid framework.  \n---  \nA Project Framework Venn diagram showing the interplay among Iterative (flexible), Structured (controlled), and Change-Oriented (adaptable) project management frameworks. Illustration by Kjirsten Fastabend, used under a CC-BY 4.0 license.\n```\n"
  },
  {
    "path": "book/website/project-design/risks-of-bias/confounding-variables.md",
    "content": "(pd-risks-of-bias-confounding-variables)=\n# Confounding Variables\nCorrelation does not imply causation - if we want to know whether a relationship between an exposure and outcome is causal, we must first consider whether any other factors could have had an influence.\n\nConfounders are external factors which cause both the exposure and outcome.\nFor example, there might be a strong correlation between ice cream sales and shark attacks at the beach, but there is no causal relationship here - both of these are more common in warm weather, so the weather is the confounder. \nTo measure the strength of any causal relationship between exposure and outcome, the strength of the relationship between the confounder and the outcome must also be measured by including the confounder as a model input. \nIn a simple model the strength of these effects ($x_1, x_2$) could be estimated as:\n$Outcome = x_1 \\times  Exposure  + x_2 \\times Confounder$\n\n\nIn the study of causal inference it is common to use directed acyclic graphs (DAGs) to map the causal relationships between variables, which can help to identify confounders. \nThis can be helpful as it is not always clear whether a potential confounder is in fact a confounder, or a *mediator*, a *proxy confounder*, or a *competing exposure*. \n\n```{figure} ../../../figures/DirectedAcyclicGraph.png\n---\nheight: 500px\nname: directed-acyclic-graph\nalt: A diagram containing named nodes connected by arrows. In the centre, indicated in red, is an arrow from the exposure to the outcome. A mediator is placed between the exposure and the outcome. A competing exposure is place before the outcome. A true confounder has an arrow to the exposure, and a second arrow to a proxy confounder, which itself has an arrow to the outcome.\n---\nA directed acyclic graph (DAG), with the relationship of interest indicated in red. \n```\n\n\nModelling competing exposures can help to make models more precise, but does not affect modelling bias. \nModelling mediators is only required if we wish to estimate the *direct* causal effect of the exposure on the outcome, rather than the more common *total* causal effect. \n*True confounders* are more informative than *proxy confounders*, but proxy confounders can offer some information when true confounders are impractical to measure. \n\nIn interventional studies, randomly assigning each participant to an exposure group helps to balance out the effects of confounders between the exposure and control groups.\nThis requires a reasonable sample size to work, as if there are very few participants then all of the participants with a specific confounder may be randomly assigned to the same exposure.\nRandomised controlled trials (RCTs) are frequently used in medical research, and are typically required when assessing the effects of a new drug. \nWhen randomisation is not possible, known (measured) confounders can be adjusted for in data analysis, but unknown confounders will still have an impact. \n"
  },
  {
    "path": "book/website/project-design/risks-of-bias/discrimination-bias.md",
    "content": "(pd-risks-of-bias-discrimination-bias)=\n# Discrimination and Bias\n\nThe word *bias* is often used to refer to prejudice against a group of people. \nWhile this differs from the statistical bias which has been the focus of this chapter, there is significant overlap between these types of bias. \nA model may act in a biased way against a group of people, which can lead to discriminatory outcomes. \n\nData science and AI will always be at risk of bias - biased data leads to biased models, which may lead to biased decision-making. \nDatasets contain biases which reflect the personal and societal biases which were present during data collection.\nThey also become biased due to difficulties in {ref}`sampling <pd-risks-of-bias-identifying-risks-of-bias-sampling>`. \n\nExamples of discrimination in AI include [racism in predictive policing](https://www.technologyreview.com/2020/07/17/1005396/predictive-policing-algorithms-racist-dismantled-machine-learning-bias-criminal-justice/), [sexism in recruiting](https://www.reuters.com/article/us-amazon-com-jobs-automation-insight-idUSKCN1MK08G/), and multiple forms of [discrimination in generative AI](https://en.wikipedia.org/wiki/Tay_(chatbot)). \nThese algorithms form negative feedback loops, with historic discrimination contributing to discrimination in future decision-making. \nThere is [no one-size fits all solution](https://dl.acm.org/doi/10.1145/3616865) to ensure fairness in AI, though guidance is available through the [Information Commissioner's Office (ICO)](https://ico.org.uk/for-organisations/uk-gdpr-guidance-and-resources/artificial-intelligence/guidance-on-ai-and-data-protection/how-do-we-ensure-fairness-in-ai/) and the [Alan Turing Institute](https://www.turing.ac.uk/news/publications/ai-ethics-and-governance-practice-ai-fairness-practice). \n\nFurther information can also be found through the [Turing-Roche Knowledge Share Event: Fairness in AI for Health](https://www.youtube.com/watch?v=Tuz7IGqDAIs&list=PLDbZND-EA4eHYGwDyOEiUumyCNPAx2gyF).\n \n"
  },
  {
    "path": "book/website/project-design/risks-of-bias/identifying-risks-of-bias.md",
    "content": "(pd-risks-of-bias-identifying-risks-of-bias)=\n# Identifying Risks of Bias\n[Many tools](https://osf.io/dmrq6) have been established to identify/assess risks of bias.\nWhile most risk of bias identification tools are intended to be used retrospectively during a literature review, we can use lessons from these to guide project design. \nFurthermore, while many tools have been developed specifically for health research, the same concepts can be applied across disciplines. \n\nThe concepts in this section are organised similarly to those in [*Prediction model Risk Of Bias ASsessment Tool (PROBAST)*](https://pubmed.ncbi.nlm.nih.gov/30596875/) and [*A revised Cochrane risk of bias tool for randomized trials* (RoB 2)](https://methods.cochrane.org/bias/resources/rob-2-revised-cochrane-risk-bias-tool-randomized-trials), which are commonly used in the assessment of health data science models.\nThese are useful checklists which prompt the user to consider whether there are limitations in the participants, predictors, outcome, and analysis included in the given research. \n\nIt is important to identify potential risks of bias while planning research so that bias mitigation strategies can be put in place.\nCreating a research protocol can be invaluable in ensuring that the research has been thoroughly planned.\nThe protocol can even be peer-reviewed before the start of the active research, and can be published alongside the findings in a [registered report](https://book.the-turing-way.org/communication/dif-articles/reg.html#registered-reports). \n\n\n(pd-risks-of-bias-identifying-risks-of-bias-sampling)=\n## Sampling\nIn statistics, a *population* is any group of similar individuals that is being modelled.\nIndividuals may be physical objects, such as people with a specific disease, or rivers in South America, or they may be conceptual, such as different news sources or political ideologies. \n\nIt is rarely possible to thoroughly analyse an entire population, so researchers will typically focus on a *sample*, which is a subset of the population. \nThe hope is that lessons learned about the sample will apply to the whole population, but this is not always the case. \n\nSamples are typically intended to be uniform and random, meaning that every individual in the population has equal chance of being selected. \n*Sampling bias* occurs when systematic issues cause some individuals to be more likely to be included than others. \nThis may be caused by *convenience sampling*, where potential participants are selected because they are easy to access. \n\n\nIn many studies, samples cannot be truly random as they depend upon members of the population volunteering themselves.\nThis often leads to a *participation bias*, where some population subgroups are more able or willing to participate than others. \nFor example, it is very common for participation to be related to socio-economic factors, with healthy, wealthy, older people more likely to have the time and financial security required to volunteer in research. \nIt is often impossible to completely eliminate such biases, but they can be mitigated by taking measures to [enable and encourage](https://www.evalacademy.com/articles/incentives-for-participation) a wider group of the population to participate. \n\nA sample may also differ from the population simply due to random chance - the only way to guarantee exact representation is to include every member of the population.\n*Stratified sampling* can keep certain characteristics consistent between the population and the sample - for example, if the gender proportions of a population are known then a stratified sample can be taken with these same proportions.\nThis may be referred to as 'proportional representation'.\nHowever, not all relevant factors can be controlled this way, with stratification only being applicable when every member of the population can be neatly allocated to one group. \n\nIncreasing the size of a sample reduces the chance of a sample not being representative due to randomness.\nGiven the difficulty and cost of taking a larger sample, [*power calculations*](https://emj.bmj.com/content/20/5/453) can be used to determine the minimum appropriate sample size that can be taken to give a particular level of statistical certainty to the results. \n\n\n(pd-risks-of-bias-identifying-risks-of-bias-exposures)=\n## Exposures and Outcomes\nResearch questions can often be simplified to \"how does X affect Y?\" - we refer to X as an *exposure* or *predictor*, and to Y as an *outcome*. \nFor example, when considering \"does smoking cause lung cancer?\", smoking is the exposure and lung cancer is the outcome. \n\nThe exposure can be anything which varies within the population, such as different treatments given in medical research, or smoking vs non-smoking, or different strategies for forest management. \nThe term 'intervention' may be used to refer to exposures which are actively applied rather than observed, such as different treatments in a medical trial. \n\nThe outcome can be anything which is measurable, either by qualitative (descriptive) or quantitative (numerical) means. \nIn answering the research question, the exposures and outcomes must be clearly defined, and applied/assessed consistently for all participants. \nIf the outcome is assessed qualitatively, it is also important that it is assessed without knowledge of the predictors to avoid an *observer bias*. \n\n(pd-risks-of-bias-identifying-risks-of-bias-analysis)=\n## Analysis and Reporting\nBias remains an issue after the data collection stage, with potential risks in the data analysis and reporting of results. \n\nWeak validation can lead to bias due to overly optimistic results.\nFor example, if results are generated using a single small test set then they may be better than expected (optimistic) simply due to random chance. \nThis is especially true if many different experiments are conducted, with a large enough number of experiments guaranteeing at least one positive result due to random chance. \nThis is sometimes referred to as 'p-hacking' in a statistical context where positive results have small p-values, and as such it is not always sufficient to use the standard p-value threshold of 0.05 (for example, [genome-wide association studies](https://academic.oup.com/g3journal/article/11/2/jkaa056/6080665) often use a threshold of 0.00000005, which can be written more clearly as 5x10<sup>-8</sup>). \n\nWeak validations give imprecise results which are unlikely to generalise well to data outside of the training set. Thorough validation methods are explored in the \n{ref}`validation and generalisability subchapter <pd-risks-of-bias-validation-generalisability>`. \n\nIt is also important that research is reported in a fair and unbiased manner. \n*Reporting bias* typically involves placing undue emphasis on positive results while downplaying or ignoring negative results (also called *selective reporting* or *cherry picking*). \nFailure to report negative results can be a significant form of scientific misconduct, and in medical research it is a breach of the [Declaration of Helsinki](https://www.wma.net/policies-post/wma-declaration-of-helsinki-ethical-principles-for-medical-research-involving-human-subjects/). \n*Reporting bias* can also include bias in choosing which previous studies to cite in order to give unfair emphasis to a particular narrative. \n\nTo avoid biases in reporting research, it is helpful to define what the primary results are before conducting research, then these can be reported regardless of whether the finding was positive or negative. \nAs such, it is highly beneficial to [develop and register a study protocol](https://www.nature.com/articles/s42256-023-00705-6) at the start of a research project.\nThis gives an opportunity to ensure research is properly thought-through, as well as improving the transparency and trustworthiness of research. \n\n\n(pd-risks-of-bias-identifying-risks-of-bias-blinding)=\n## Blinding\n\nIn prospective research, blinding (also called _masking_) can help to address many of the risks related to exposures and outcomes. \nPeople who have been blinded cannot know which exposure has been administered to any specific participant. \n\nBlinding participants is a common approach to avoid selection and participation biases (such as people only participating if they receive a specific treatment), and to avoid behavioural changes due to the psychological effects of receiving different treatments, such as the placebo effect. \nThis is not possible in observational research. \n\nBlinding assessors can help to avoid an information bias, where the assessment of outcome is influenced by the expectations of the exposure. \nData analysts can also be blinded to ensure a fair assessment of the final data. \n\nTypically the phrase 'single-blind' will refer to blinding only the participants, 'double-blind' to participants and assessors, and 'triple-blind' to participants, assessors, and data analysts. \nHowever, these terms are not always used consistently, so it should always be made explicitly clear which groups have been blinded. \n"
  },
  {
    "path": "book/website/project-design/risks-of-bias/validation-generalisability.md",
    "content": "(pd-risks-of-bias-validation-generalisability)=\n# Validation and Generalisability \nData analysis often involves making quantitative estimates of performance (such as assessing the accuracy of predictions), in a process called validation. \nPoor validation can lead to the research results being inaccurate, uninformative, or misleading.\n\nValidations are often weak due to the use of small and potentially non-representative samples. \nWhen working with sampled data, it is essential to extract the most information possible, which often means using some of the following techniques:\n- (Stratified) Cross-validation \n- Bootstrapping (and other variability measures)\n- External validation\n- Statistical tests (hypothesis tests)\n\nSuch methods can help to evaluate the variability and generalisability of results.\nThis is particularly useful when comparing different modelling approaches or exposures, as without measuring the variability we cannot be certain whether 'better' results were simply caused by random chance. \n\nIt is also important in validation to choose appropriate metrics. \nNo individual metric is able to assess all relevant aspects of performance, and as such it is far more informative to calculate several different metrics with different properties. \nThese should then *all* be reported on, without simply cherry-picking the ones which portray the best performance. \nIt is not always clear which metrics are most useful for a given task, so it may be useful to refer to any [specific guidance](https://www.nature.com/articles/s41592-023-02151-z) for the field.\n\n\nWhen working with imbalanced data, it is also important to consider the effect this has on the results.\nFor example, if a dataset contains 99% cats and 1% dogs, then a classification model can simply say everything is a cat to get 99% accuracy.\nSuch a model is completely useless, and this would be obvious if we used a *balanced accuracy*, which would give a score of 50%. \nSimilar effects also apply to other metrics, and these can similarly be balanced based on the data available. \n"
  },
  {
    "path": "book/website/project-design/risks-of-bias.md",
    "content": "(pd-risks-of-bias)=\n# Risks of Bias in Research\n\n\n(pd-risks-of-bias-prerequisites)=\n## Prerequisites\n\n\n| Prerequisite          | Importance | Notes                                                                               |\n| -----------------|----------|------|\n| {ref}`er-datahazards` | Helpful | Data Hazard labels can be used to highlight specific ethical risks to shareholders.  |\n\n(pd-risks-of-bias-summary)=\n## Summary\n[*Risks of bias*](https://www.nhmrc.gov.au/guidelinesforguidelines/develop/assessing-risk-bias#) are opportunities for the results of research to become distorted by limitations within the study design, conduct, and analysis.\nThis can cause the findings and interpretation of research to be misleading or incorrect. \nMany risks can be mitigated, though this requires researchers to be aware both of the risks and the mitigation techniques. \nThis chapter introduces methods for the {ref}`assessment of risks of bias <pd-risks-of-bias-identifying-risks-of-bias>`, {ref}`identification of confounders <pd-risks-of-bias-confounding-variables>`, and some {ref}`methods to improve validation <pd-risks-of-bias-validation-generalisability>`. \n\nIn this chapter, the word *bias* predominantly refers to statistical distortion rather than to {ref}`the unfair treatment of societal groups (discrimination) <pd-risks-of-bias-discrimination-bias>`, which is an important topic in its own right.\n\n\n\n\n\n(pd-risks-of-bias-motivation)=\n## Motivation and Background\n\nResearchers are trusted by a wide array of stakeholders. \nGovernmental and advisory bodies may look to research to influence policies, effected parties to influence their personal lives, and other researchers to influence future research.\nHowever, despite the best intentions, it can be easy to produce misleading research, leading to potential harms and the loss of trust. \n\nMany risks can be mitigated with careful planning of data collection and analysis, leading to more accurate research outputs. \nWhere risks are inevitable, these can be made clear to stakeholders to reduce the risk of inaccuracies causing harm. \n\n\nThis chapter aims to help researchers to identify and mitigate risks of bias in order to conduct research as accurately and ethically as possible, making for trustworthy, high-impact studies that can have a positive real-world impact. \n"
  },
  {
    "path": "book/website/project-design/sdpw/pd-sdp-private-learning.md",
    "content": "(pd-sdpw-private-learning)=\n\n# Privacy-preserving Machine learning\n\nMuch current research in data science involves machine learning (ML) models interacting with data sourced from a large number of individuals with significant variation in the general level of awareness, consent, and understanding of research goals. As such, researchers have a responsibility to protect the confidentiality and privacy of the people whose data is being processed. At the same time, sharing both data and trained models drives scientific advancement and promotes important social goals in open and transparent science.\n\nIt's important to note that local and international regulations such as the [General Data Protection Regulation](https://gdpr-info.eu/) (GDPR) and the EU’s policy on [trustworthy AI](https://digital-strategy.ec.europa.eu/en/policies/european-approach-artificial-intelligence) also establish legal duties and principles on privacy protection that the following tools may help researchers meet.\n\n## Sharing data with privacy\n\nTraining a complex ML model can often require a very large amount of data, more than a single researcher or organisation could feasibly generate. Sharing our data not only helps us to create more reproducible research, but promotes advancements in the field as a whole. However, this does pose the risk of inadvertently sharing personal information that could be used to identify a subject.\n\nMost researchers will remove uniquely identifying information (such as ID numbers, address, and phone numbers) before publication, but recent research has shown that with access to secondary datasets, such 'pseudonymised' datasets can still be traced back to the individual @narayanan2008deanonymization @sun2012anonymization.\n\n### Differential privacy\n\nDifferential privacy is a statistical tool which can estimate the risk of uniquely identifying a member of a dataset, whereupon calibrated noise can be added to ensure that privacy is preserved @yang2012privacy.\n\n### Synthetic data generation\n\nIf sharing the original data raises privacy or ethical concerns, we can still contribute useful information by sharing synthetic datasets that reproduce statistical features of the original dataset without exposing actual instances @torfi2020syntethic. \n\n### Useful resources\n\n- [Individual Risk Tool](https://cpg.doc.ic.ac.uk/individual-risk/) *A useful visualisation of how a few pieces of information can uniquely identify you*\n- [The Algorithmic Foundations\nof Differential Privacy](https://privacytools.seas.harvard.edu/files/privacytools/files/the_algorithmic_foundations_of_differential_privacy_0.pdf) *The foundational paper to the study of differential privacy.*\n- [What is privacy-preserving synthetic data?](https://www.statice.ai/post/what-is-synthetic-data-introduction) *A straightforward introduction to the concept of synthetic data*\n\n## Learning with privacy\n\nBeyond sharing data with other researchers, we can also share our trained models, or make them available as a service: carrying out predictions on data provided by others without the need for them to invest time and resources in training their own systems.\nHowever, this sharing can also carry risks for personal privacy.\nFor instance, many ML solutions require users to send personal data to a central server to process, exposing them to the risk of interception or misuse.\nThe model itself may learn sequences from the dataset that we don't wish to be retained, a process referred to as unintended memorization @carlini2019networks.\nThis could be particularly harmful when considering models dealing with large amounts of user-created text @brown2022privacy.\n\n### Federated learning\n\nFederated Learning is a design paradigm in which the users' data never leaves their own devices, with the model itself being broken down into a set of computations that take place on the edge, before updates are sent back to a central coordinator @kairouz2019openproblems.\n\n### Adversarial learning\n\nWe can also draw on the experience of research in the field of cross-domain training to teach models to ignore undesirable data by directly controlling the training process {cite:ps}`Coavoux2018`. This can also be extended beyond private attributes to elimination of unwanted biases @zhang2018biases.\n\n### Differential privacy\n\nDifferential privacy has also seen significant use as a technique for preserving privacy during model training, reducing the risk of the model learning individual data points too well by adding small amounts of statistical noise during training @boulemtafes2020privacy @feyisetan2020privacy. \n\n### Useful resources\n\n- [Privacy in Deep Learning: A Survey](https://cseweb.ucsd.edu/~fmireshg/survey_pvdl_2020.pdf) *A useful brief overview of some extant threats and mitigation strategies.*\n- [Deep learning and differential privacy](https://github.com/frankmcsherry/blog/blob/fdc265de245a82beb38b9a4f28799ef12f556ac1/posts/2017-10-27.md) *Frank McSherry's thought provoking blog about the privacy research landscape.*\n- [Privacy Preserving Machine Learning: Maintaining confidentiality and preserving trust](https://www.microsoft.com/en-us/research/blog/privacy-preserving-machine-learning-maintaining-confidentiality-and-preserving-trust/) *A recent overview from Microsoft Research of privacy-preserving learning*\n- [PySyft](https://github.com/OpenMined/PySyft) *A Federated Learning and privacy preservation library designed for compatibility with major machine learning frameworks PyTorch and TensorFlow*\n"
  },
  {
    "path": "book/website/project-design/sdpw/pd-sdp-sensitive-code.md",
    "content": "(pd-sdpw-sensitive-code)=\n# Sharing your Jupyter notebook\n\nOne neat way of sharing your research workflow - whether that is your data cleaning process, the statistical modelling that you have applied to your data set, or how you have visualised your results  - is through [Jupyter notebooks](https://www.dataquest.io/blog/jupyter-notebook-tutorial/).\n\nWorking with sensitive data may, however, create barriers to sharing your Jupyter notebook: you do not want to commit a Jupyter notebook containing sensitive data to GitHub.\n\nYou can get around this hurdle by manually clearing your notebook's output before each Git commit you do. \nThis process is, however, time-consuming, cumbersome and - most importantly - extremely error-prone. \nYou only need to forget to clear the output once to inadvertently expose your data. \nAnother, much more efficient (and failsafe!) way of doing this is by using `nbstripout`.\n\n## `nbstripout`\n\n[`nbstripout`](https://pypi.org/project/nbstripout/)is a utility that - when used as a [git filter](https://git-scm.com/docs/gitattributes#_filter) or [pre-commit hook](https://git-scm.com/docs/githooks#_pre_commit) - automatically strips the Jupyter (or IPython/Zeppelin) notebook output before Git even gets the chance to see it.\nIn other words, it simulates the *Clear All Output* procedure in the Jupyter notebook user interface.\n\n### Installing `nbstripout`\n\nThe latest version of `nbstripout` can be installed from [PyPI (The Python Package Index)](https://pypi.org) using the command `pip install --upgrade nbstripout`.\nIf you are using Anaconda, you can install `nbstripout` via the conda package manager: `conda install -c conda-forge nbstripout`.\n\n### Setting up the git filter and attributes\n\nOnce `nbstripout` is installed, you need to add it to your local Git repository.\nStart by creating a new repository or navigating to one that you are already using. Once there, add `nbstripout` using the command `nbstripout --install`.\n\nYou can check that `nbstripout` has successfully been applied as a filter by running the command `cat .git/config`, or checking git attributes by running the command`cat .git/info/attributes`.\n\n### Removing the git filter and attributes\n\nIf you decide that you would like to remove `nbstripout`, simply run `nbstripout --uninstall` whilst in the repository.\n\n### Installing `nbstripout` globally\n\n`nbstripout` is generally installed in one local Git repository at a time, so that you can control when it is applied as a filter.\n\n(pd-sdpw-sensitive-code-information)=\n## More information\n\nFor more information about using `nbstripout`, please check out the following resources:\n\n* [nbstripout documentation](https://pypi.org/project/nbstripout/)\n* [nbstripout GitHub repository](https://github.com/kynan/nbstripout)\n* [Short YouTube demonstration of how to install and use nbstripout as a Git filter](https://www.youtube.com/watch?v=BEMP4xacrVc)\n\nHowever, if all of your notebooks deal with sensitive data, it might be a good idea to  install `nbstripout` globally across all of your Git repositories.\nThis way, no notebooks risk slipping under the radar. \n\nTo install `nbstripout` globally, run the command: `nbstripout --install --global`\n"
  },
  {
    "path": "book/website/project-design/sdpw/pd-sdp-sensitive-files.md",
    "content": "(pd-sdpw-sensitive-files)=\n\n# Keeping sensitive files secure\n\nYou will often have files that you do not want Git to add to your repository (or even show as being [untracked](https://howtogit.archive.pieterdedecker.be/concepts/types-of-changes.html)).\nThese are typically files that are automatically generated (for example `.log` files); however, they may also be files that contain sensitive information.\nIn such cases, you can use [`.gitignore`](http://git-scm.com/docs/gitignore).\n\n## `.gitignore`\n\n`.gitignore` is not an explicit command.\nInstead, it is a plain text file that tells Git which files to ignore.\nBelow is an example of what a `.gitignore` file might look like:\n\n```\n# ignore the file doc/patient_ids.txt\ndoc/patient_ids.txt\n\n# ignore the file doc/patient_notes.txt, but not doc/anonymised/patient_notes.txt\ndoc/*.txt\n\n# ignore all .pdf files in the \"sensitive/\"-directory as well as any of its subdirectories\nsensitive/**/*.pdf\n```\nEach line in the `.gitignore` file specifies a pattern.\nThese patterns are then checked against the file names in your repository, to determine which of them should be ignored. \n\nThe following rules for writing `.gitignore` file patterns can be found in the [Git Pro book](https://git-scm.com/book/en/v2/Git-Basics-Recording-Changes-to-the-Repository#_ignoring):\n\n* Blank lines or lines starting with # are ignored.\n* [Standard glob patterns](https://pymotw.com/2/glob/) work, and will be applied recursively throughout the entire working tree.\n* You can start patterns with a forward slash (/) to avoid recursivity.\n* You can end patterns with a forward slash (/) to specify a directory.\n* You can negate a pattern by starting it with an exclamation point (!).\n\nGitHub also maintains [a collection of .gitignore templates](https://github.com/github/gitignore) to help you get started.\n\n### Creating a `.gitignore` file\n\nTo create a `.gitignore` file, open a new file in a text editor of your choosing (for example TextEdit), name the file `.gitignore` (including the `.` at the beginning), and save it in your repository.\nAlternatively, you can create a `.gitignore` file through the terminal by first navigating to your repository and then running the command `touch .gitignore`.\n\nTo double check that your `.gitignore` file is working as you intended, and the correct files are being ignored, you can run the command `git status --ignored`, which will generate a list of all ignored files.\n\n### Ignoring a file that has already been committed\n\n`.gitignore` only works on files that are untracked.\nFiles that are already tracked by Git (that is, files that has previously been staged or committed) will not be ignored.\nIt is therefore often a good idea to create a `.gitignore `file when you set up a new repository, so that you do not accidentally commit files that you do not want to.\n\nIt is, nevertheless, possible to ignore files that are already tracked by Git.\nTo do this, you will first need to delete the file from your repository and then add a new rule to your `.gitignore` file. \n\n### Committing a file that has previously been ignored\n\nSometimes, you may want to ignore all but one file that follows a general pattern.\nIn these instances, you can either 1) force an ignored file to be committed by adding `-f` (or `--force`) when you perform `git add` or 2) define an exception to the pattern within the `.gitignore` file (see example `.gitignore` file above).\n\n### Having multiple `.gitignore` files (and rules)\n\nIn most cases (or at least in the simplest of cases), your repository will have a single `.gitignore` file in its root directory.\nIt is, however, possible to have multiple `.gitignore` files within subdirectories of the same repository.\nIn such cases, the rules within the `.gitignore` file will only be applied to the subdirectory within which it is located.\nThis means that different `.gitignore` rules can be applied across the same repository.\n\n(pd-sdpw-sensitive-files-github)=\n# What do you do if you inadvertently expose sensitive data on GitHub?\n\nSometimes - no matter how careful we try to be - we might inadvertently expose sensitive data on GitHub.\nUnfortunately, it is not as easy as you might think to remove this data again.\n\nSay that you mistakenly commit a file containing sensitive data to your GitHub repository.\nSimply removing the file from the repository, or indeed deleting the entire repository, will not fix the problem, as...\n\n> \"*commits may still be accessible in any clones or forks of your repository, directly via their SHA-1 hashes in cached views on GitHub, and through any pull requests that reference them*\" [- GitHub Docs: Removing sensitive data from a repository](https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/removing-sensitive-data-from-a-repository)\n> \n\n(pd-sdpw-sensitive-files-resources)=\n## Further Resources\n\nFor more information about`.gitignore`, please check out the following resources:\n\n* Git `.gitignore` [documentation](http://git-scm.com/docs/gitignore)\n* Pro Git book's section on [ignoring files](https://git-scm.com/book/en/v2/Git-Basics-Recording-Changes-to-the-Repository#_ignoring)\n* GitHub Docs's section on [ignoring files](https://docs.github.com/en/get-started/getting-started-with-git/ignoring-files)\n* Atlassian's [tutorial on `.gitignore`](https://www.atlassian.com/git/tutorials/saving-changes/gitignore)\n* freeCodeCamp's blog post [*Gitignore Explained: What is Gitignore and How to Add it to Your Repo*](https://www.freecodecamp.org/news/gitignore-what-is-it-and-how-to-add-to-repo/)\n* Linuxize's blog post on [*Ignoring Files and Directories in Git (.gitignore)*](https://linuxize.com/post/gitignore-ignoring-files-in-git/)\n"
  },
  {
    "path": "book/website/project-design/sdpw/pd-sdp-trew.md",
    "content": "(pd-sdpw-trew)=\n# Working with Trusted Research Environments\n\nThis section provides a general overview of things to consider when working with sensitive data in Trusted Research Environments (TREs). \nFor a more comprehensive look at this topic, check out [this report](https://zenodo.org/record/5675093#.YoIpXBPMJhH) from The Alan Turing Institute on developing and publishing code and other research outputs for Trusted Research Environments.\n\n(pd-sdpw-trew-what)=\n## What are Trusted Research Environments?\n\nTREs are becoming commonly used for the analysis of data from a range of sources, particularly electronic health records (EHRs). \nData within TREs are kept secure and are only accessible following appropriate approvals and access being granted.\n\nTypically TREs offer researchers collaborating on a project involving sensitive data a computing environment with restrictions on the ingress and egress of code, data and other research outputs appropriate to the level of sensitivity of the data in question.\n\nThere are a variety of TREs being used in the real world, which vary from deployable cloud infrastructure such as The Alan Turing Institute's [Data Safe Haven](https://www.turing.ac.uk/research/research-projects/data-safe-havens-cloud) platform, to bespoke environments hosted at a particular University or other institution with access to sensitive data.\n\nYou may find TREs also described as \"Data Safe Havens\" or \"Secure Research Environments\" or other synonymous names, since the use of such platforms is relatively new and there is no strict consensus on the terminology. \nTo learn more about what TREs are, check out [the graphic and video on this page](https://www.hdruk.ac.uk/access-to-health-data/trusted-research-environments/) produced by Health Data Research UK.\n\n(pd-sdpw-trew-conducting)=\n## Conducting research with TREs\n\nIn general, researchers working in TREs will find that much of the same guidance for working effectively and reproducibly as outlined in the {ref}`Guide for Reproducible Research<rr-overview>` section will be just as relevant as in any other computing environment.\n\nThere are however some important questions to consider when working in TREs that will affect your development workflow for scientific code writing and data analysis:\n    \n### 1. Does the TRE have internet access?\n    \nTREs set up for researchers to work on particularly sensitive data will likely lack internet access, in order to prevent a data breach or the accidental disclosure of sensitive data outside the TRE. \nWhere this is the case, it is important to understand how the processes particular to your TRE work for things like software ingress (for important software libraries you may require) and code/data egress (to understand what, if anything, can be exported from the TRE). \nThese policies will likely be set by those managing the TRE, for example the IT department at your University.\n    \n### 2. Does the TRE have a version control system, such as GitLab?\n    \nWithout internet access, websites like GitHub are unavailable for the development of research code within TREs. \nVersion Control Systems (VCS) like Git can be useful even where access to GitHub is impossible. \nFor example, [GitLab](https://about.gitlab.com/) can be used for code developed within the TRE, if it's installed in the environment. \n\nIf the TRE does not have a collaboration/VCS tool such as GitLab installed, it may be preferable to develop the research code outside the TRE, bringing it into the TRE via secure code ingress at appropriate intervals. \nTo learn more about version control, consult the [Chapter on Version Control](#rr-vcs).\n\n### 3. Do you aim to publish research carried out on sensitive data in a TRE?\n    \nDeveloping research code outside the TRE, for example in a public GitHub repository, can also make publishing the research methods for TRE projects simpler. \nDeveloping code you wish to export from the TRE inside the environment carries risks. \nFor example, sensitive data could be committed to the Git repository by mistake, which is impossible when the code has been developed in a separate location. \nThe secure egress process and export policy for the TRE in question will necessarily be rigorous in proportion to the sensitivity of the data being analysed.\nIt's therefore important to consider the time constraints associated with exporting any research outputs at the end of a project.\n    \nDeveloping research code within the TRE may be more appropriate where progress is overly slowed by developing externally, such as when data access is critical for any development. \nAs such, it's important to consider the trade-off between developing research code within the TRE and outside of it.\n    \n### 4. Do you aim to use notebooks (such as Jupyter) for analyses carried out in TREs?\n\nNotebooks are a fantastic resource for data analysis, and this is no different in the context of working with sensitive data in a TRE. \nHowever, notebooks are a particularly risky for export from TRE. Jupyter notebook files in particular (.ipynb extension) are JSON documents that include metadata not viewable in the rendered form, which could increase the risk of sensitive data being included in any exported notebook by mistake.\nOne recommendation when preparing the output of a data analysis carried out in a notebook within a TRE for publication is to convert it to a static format such as PDF.\n    \n### 5. Do you want those without access to the TRE to be able to run the code used in your research?\n    \nAnother suggestion could be to include a small synthetic dataset alongside any published code, which any publicly available code or notebooks containing the data analysis can be run with in lieu of access to the \"real\" (non-synthetic data) sensitive data from the TRE. \n\n(pd-sdpw-trew-info)=\n## More information\nFor additional guidance on publishing the output of TRE research, see [this report on Developing and Publishing Code for Trusted Research Environments: Best Practices and Ways of Working by Ed Chalstrey](https://zenodo.org/record/5675093#.YoIpXBPMJhH).\n"
  },
  {
    "path": "book/website/project-design/stakeholders/persona/persona-contributors.md",
    "content": "(pd-persona-contributors)=\n# Contributor Pathways\n\nIn this subchapter, we have developed personas in order to understand how new members might experience their first interactions with an online project and what \"pathways\" they are likely to take to get further involved as contributors.\n\nThe interactions with the project followed by the sustained engagements in a project can be understood in the following different phases of community membership:\n\n1. Discovery - How they first hear about the project or group.\n2. First Contact - How they first engage with the project or group, their initial interaction.\n3. Participation - How they first participate or contribute.\n4. Sustained Participation - How their contribution or involvement can continue.\n5. Networked Participation - How they may network within the community.\n6. Leadership - How they may take on some additional responsibility on the project, or begin to lead.\n\nThe examples provided below include personas for _The Turing Way_ contributors and users based on their initial engagements with the project as a reader, learner, resource developer, reviewer and maintainer.\nThese personas are created based on GitHub skills and willingness of the community members to contribute to the project.\n\nFor each persona, we highlight how their involvement with _The Turing Way_ can improve and enrich the project and community.\nThis document is meant to suggest ways you might interact with, learn from, and contribute to _The Turing Way_.\nWe hope that one of these personas resonates with you and motivates you to get involved!\n\n## Contributor personas\n\n1. Sam, someone who has no GitHub experience\n2. Alia, someone who has a lot of GitHub experience\n3. Amal, someone who knows they want to contribute and does\n4. Noor, someone who doesn't know they want to contribute, but does\n5. Robin, someone who can only contribute outside of their normal working hours\n\n### 1. Sam, a PhD student with no GitHub experience\n\nSam is a PhD student in biology at University College London.\nThey are learning how to code in Python, but have not yet had any training in version control or GitHub.\nThey're interested in learning how to use open notebooks such as Jupyter to do their analysis so that they can easily share their work for critique with their very busy supervisor.\n\n1. **Discovery** - Sam hears about _The Turing Way_ Book Dash events through an email from the department's Open Science Champion.\n2. **First Contact** - Sam checks out the GitHub repository to learn more about the project and see what skills are needed that they may be able to contribute.\n3. **Participation** - They attend the London Book Dash, accepted for their enthusiasm to learn how to make their PhD research reproducible. They participate in the discussions, read existing chapters, and scroll through issues to see where they can contribute.\n4. **Sustained Participation** - After gaining experience with GitHub through submitting pull requests and issues during the Book Dash, Sam is empowered to continue contributing to the online discussion and suggesting topics for the book, as well as editing and reviewing existing chapters by applying them to his research.\n5. **Networked Participation** - They encourage some of their fellow PhD students to read _The Turing Way_ and start using GitHub.\n6. **Leadership** - Sam submits one of their research projects as a case study for _The Turing Way_.\n\n###  2. Alia, a researcher with Git/GitHub experience and book topic expertise\n\nAlia is a postdoc in Morocco who programs in R.\nThey are passionate about open data and using data for good, but also understand it can be more complex than that.\nThey attend data science meetups in the city but are interested in finding a community working towards improving how research is conducted.\nThey have experience with GitHub and contributing to open projects.\n\n1. **Discovery** - Alia first hears about _The Turing Way_ via X (formerly Twitter) ([#TuringWay](https://twitter.com/search?q=%23TuringWay&src=typed_query)).\n2. **First Contact** - They land on the project's README and look for the contributing guidelines to see where their skills can be applied.\n3. **Participation** - They find an issue asking for help on writing the Credit for Reproducible Research chapter and add a few paragraphs on how to properly cite research software.\n4. **Sustained Participation** - After constructive feedback and collaboration with _The Turing Way_ team, Alia follows the community on social media and attend the online Collaboration Cafe.\n5. **Networked Participation** - They invite other friends and colleagues from the Rstats community to get involved, who have expertise on some of the book topics.\n6. **Leadership** - Alia volunteers to write the chapter on \"Scoping a data project for RSEs\" that they found requested in the [Book Skeleton](https://github.com/the-turing-way/the-turing-way/blob/main/book_skeleton.md).\n\n### 3. Amal, a PhD supervisor who is an expert in an aspect of reproducible research\n\nAmal is a PhD supervisor who is an expert in running risk assessments for projects using reproducible research.\nThey are always looking for opportunities to share their expertise, particularly with students, as they think the consistent application of best practice is important.\nThey are very keen to collaborate with people and to volunteer their time for collaboration projects.\nThey like seeing their work make an impact and are keen to know about the eventual result of their collaborations.\n\n1. **Discovery** - Amal finds out about _The Turing Way_ book from the X feed of experts in reproducible research who they follow.\n2. **First Contact** - Amal navigates to the GitHub repository and reads the content there over a couple of days. While reading, they make notes on areas they could add to from their research.\n3. **Participation** - They compile their work into a chapter format and submit it to the repo.\n4. **Sustained Participation** - Amal checks back frequently to look at feedback on their chapter and respond to it. In their spare time, they make suggestions and edits on other chapters.\n5. **Networked Participation** - Amal directs students to their chapter in the _The Turing Way_ when they ask about risk assessments in reproducible research, and begins to direct students to other chapters as part of their teaching.\n6. **Leadership** - Amal promotes _The Turing Way_  at their institution, suggesting to other academics that they get involved with its creation and adopt it as best practice.\n\n###  4. Noor, a PhD student who is trying to finish their dissertation\n\nNoor is a final-year PhD student who has their dissertation deadline coming up.\nThey are feeling the pressure of needing to write up the results of their research but finding it easy to procrastinate.\nThey are confident that their research has taught them some particular considerations for reproducible environments, but they are slightly intimidated by the expertise of other people in their field, and they are considering their future after their PhD.\n\n1. **Discovery** - Noor comes across _The Turing Way_ when they're surfing X while trying to write up their research.\n2. **First Contact** - They read the chapter that's relevant to their research and then continue working on their dissertation.\n3. **Participation** - Later, Noor returns to _The Turing Way_ and makes some suggestions and edits to that chapter.\n4. **Sustained Participation** - They return to the repo periodically to read feedback on their commits and make additional comments, restricted to the one chapter they feel they know about.\n5. **Networked Participation** - Noor tweets a link to _The Turing Way_ during a conversation about reproducible research and retweets a response from another expert which leads to a longer conversation.\n6. **Leadership** - After submitting their PhD, and unsure what they want to do next, Noor volunteers to coordinate further research into the chapter by reaching out to experts in the space.\n\n### 5. Robin, a Data Scientist in industry\n\nRobin is a Data Scientist working at the Co-operative Bank in Lahore.\nThey have lots of meetings throughout the workday, so are looking for ways to make their workflow more efficient and sustainable.\nThey attend online webinars and watch videos on Youtube in their spare time to learn more about reproducibility and collaboration.\n\n1. **Discovery** - Robin attended the [Women in Data Science webinar hosted by IBM Code Bristol](https://www.bigmarker.com/ibm-developer-uki/Women-in-Data-Science-IBM-Code-Bristol?bmid=2581093331c4), where they heard Malvika Sharan's talk *The Turing Way: A community built on a culture of collaboration*.\n2. **First Contact** - Robin was so inspired by the talk that they followed the [Turing Way on X](https://twitter.com/turingway) and starred the [GitHub repository](https://github.com/the-turing-way/the-turing-way), to come back and learn more when they had time.\n3. **Participation** - When they find time at the weekend, Robin reads the chapter on Continuous Integration to pick up some tips and tricks - however they see that there isn't yet information on using GitHub Actions. Robyn would like to know more about this topic, so reads tutorials on how to incorporate them into their workflow and opens a [WIP] pull request to add a subsection to the chapter based on what they learn.\n4. **Sustained Participation** - As their contributions are made outside of working hours, the process of learning, writing the subsection and iterating on feedback from _The Turing Way_ team moves at a [relatively] slower pace than someone who can contribute during working hours. Robin appreciates the assistance and communication from the team through the pull request conversation.\n5. **Networked Participation** - Robin mentions _The Turing Way_ and what she learned about using GitHub Actions during one of her team's stand-ups, promoting their use to her colleagues.\n6. **Leadership** - Robin gives a lightning talk at a London tech event about GitHub Actions and her contributions to _The Turing Way_. She praises the inclusiveness of the project and invites more industry experts to check out the resource and open issues on topics that they can contribute to or would like to learn more about.\n\nIf the personas described here do not reflect your experience, and if getting involved with The Turing Way or using its resource are challenging in any way for you, please open an issue or get in contact on our [Slack channel](https://theturingway.slack.com/) letting us know what your persona or pathway might look like!\nThis process will not only help the _The Turing Way_ team members in getting you onboarded, but we will be able to improve the community documents including the [README](https://github.com/the-turing-way/the-turing-way/blob/main/README.md) and [Contributing Guidelines](#ch-contributing) to make it more relatable and usable for the wider community.\n\n## Reference:\n\n- This file has remixed and reused material from the [Open Leadership Framework GitHub repository](https://github.com/mozilla/open-leadership-framework/blob/master/personas.md) shared at the [Mozilla Open Leadership training](https://mozilla.github.io/open-leadership-training-series/articles/building-communities-of-contributors/bring-on-contributors-using-personas-and-pathways/), License: [CC-BY-SA](https://creativecommons.org/licenses/by/4.0/).\n"
  },
  {
    "path": "book/website/project-design/stakeholders/persona/persona-creation.md",
    "content": "(pd-persona-creation)=\n# Persona Creation Tool\n\nPersona development for a project or community is a great way for recognising who the stakeholders of that project are, why they would associate with the project, what their needs are and how those needs could be met.\nPersona creation tools can allow team members to collaborate efficiently with each other, develop a common understanding of their target audience and bring design principles into their work while ultimately creating an empathetic pathway for engagement.\n\nIn this chapter, we provide a simple step by step guide that one can use for creating different personas for their communities and projects.\nYour project-specific personas will then be useful in enhancing the pathways your members take to engage with your project, examples for which has been provided in the next subchapter.\n\n## Step-by-step guide for building a persona\n\n### Section 1: Name and Role\n\nStart by giving your persona a real name and real role with the help of some assumed professional skills.\nThis will help you anchor them in reality.\nYou can use the random name generator website [behindthename.com](https://www.behindthename.com/random/) to create diverse names.\n\n```{figure} ../../../../figures/persona-creation.png\n---\nname: fig-persona-creation\nalt: >\n  Persona Canvas by DESIGNBETTERBUSINESS.COM - A simple cartoon-like human figure is outlined at the center with a heart symbol on the chest.\n  Around the figure are nine numbered circles, each linked to a labelled area.\n  Bottom center is space for the persona’s name and role (1), information (2) and core needs (3). The left side of the canvas is for \"Negative Trends\" (7), illustrated by a cloud, and includes: (8) “Headaches” for professional/work-related issues, and “Fears” at the bottom (9).\n  The right side is for “Positive Trends” (4), illustrated by a sun icon, and includes “Opportunities” for professional and work-related positive outcomes (5), and “Hopes” (6) for personal goals and hopes. \n---\nHand-drawn style image titled \"Persona Canvas\" by [DESIGNBETTERBUSINESS.COM](https://www.designabetterbusiness.tools/tools/persona-canvas). This image is available under the CC-BY-SA 4.0 license\n```\n\n### Section 2: Background and demography\n\nThis section is to create an image of your persona.\nBe aware of your own biases in terms of how you imagine your persona looks like based on their name or assumed gender.\n\n#### Section 2.1: Background\n\nReflect on the job, career, education, and family aspect of your persona by answering the following questions:\n\n- Which job does your persona hold?\n- What is your persona's family status?\n  - Some options: single, parent, married, pet-owner, parent, or carer.\n- Does your persona have any health issues?\n    - You don't need to go in detail (though that would add more value to your planning), but start by answering in 'yes' or 'no'.\n- What is your persona's social environment like?\n  - Some options: neutral, favorable, supportive, non-supportive, financially challenging, distracting, politically challenging.\n\n#### Section 2.2: Demography\n\nReflect on the age range, gender, location, and living situation of your persona by answering the following questions:\n\n- What age group that your persona belongs to?\n  - Some options: below 16, 17 - 21, 21 - 30, 31 - 45, 45 - 65, above 65\n- What is your persona's gender?\n  - Some options: man, woman, non-binary, cisgender, transgender, gender-queer, gender-fluid or other (learn more [here](http://thepbhscloset.weebly.com/a-list-of-genders--sexualities-and-their-definitions.html))\n- Which time zone does your persona live in?\n  - Some options: UTC - GMT, EET - GMT+2:00, IST - GMT+5:30, JST - GMT+9:00, NST - GMT+12:00, CST - GMT-6:00, BET - GMT-3:00, CAT - GMT-1:00\n- What is your persona's living situation?\n- If there is any disability or physical barrier that your persona has to deal with when participating?  \n\n*For this section, you can continue using the random name generator website [behindthename.com](https://www.behindthename.com/random/) with the option \"generate life story\".*\n\n### Section 3: Needs and Resources\n\nThis section will reflect on the resources available to your persona to participate in your project or community online.\nThis section defines your persona's needs and decisions they make, which you can sketch out by asking the following questions:\n\n- What is the level of interest your persona has in your project?\n- Does your persona have a suitable schedule to participate in your project activity?\n- Does your persona have the appropriate resources to collaborate or contribute to your project?\n  - Some options: hardware, software, appropriate work arrangement, proper documentation\n- How much time (minimum) your persona needs to dedicate to make contributions to your project by completing different tasks?\n  - This can result in a list of tasks that your members are invited to do with approximate time and skill requirements for each of them.\n- What else can influence your persona's decisions on a day-to-day basis?  \n\n### Section 4: Persona Profile (positive trends)\n\nThis section will reflect on the hobbies, interests, and things your persona enjoys doing regularly.\nThis can be approached to understand what makes your persona's experience positive.\nYou can sketch out this information by answering the following questions:\n\n- What hobbies and interests your persona has?\n- What personality/demeanor (such as introvert, extrovert) matches your persona's?\n- Through which communication channel will your persona potentially find out about the event?\n  - Some options: by email, mailing list or forums, X (formerly Twitter), Facebook, Slack, Gitter, newsletters, website or community repository\n- What keeps your persona motivated on a typical day?\n\n### Section 5: Provisions and opportunities\n\nThis section will reflect on the provisions available to your persona to participate in this project by asking the following questions:\n\n- What equipment or support can you offer your persona to participate in the project?\n- Are there funding or skill-building opportunity that your persona can share more widely.\n- What other resources does your persona need to fully participate with?\n\n### Section 6: Hopes and dreams\n\nThis section will reflect on the expectations, goals, and emotions of your persona in regards to this project by asking the following questions:\n\n- What does your persona want to achieve from this project?\n- What information does your persona want to gain from their participation?\n- What fear or anxiety may your persona have regarding the project?\n- What could inspire your persona at the project?\n- How will your persona know that their goal has been achieved?\n\n### Section 7: Perceived Barriers (negative trends)\n\nThis section will reflect on the perceived barriers that your persona may face in regards to this project by asking the following questions:\n\n- What can frustrate your persona on a typical day?\n- Why would your persona not join this project?\n- What is speaking against this project that can discourage your persona from joining?\n- What could alienate your persona from this project?\n- What improvements can be introduced to help your persona overcome these barriers?\n\n### Section 8: Hurdles in the project (headaches)\n\nThis section will reflect on the hurdles and issues that your persona may encounter in regards to this project by asking the following questions:\n\n- What challenges does your persona face when participating in this project?\n- What are your persona's hurdles specific to this project?\n- How can your persona be supported in overcoming the challenges?\n- How can we surpass your persona's expectations?\n\n### Section 9: Fears and personal issues\n\nThis section will reflect on fears and personal issues that your persona may face while participating in this project or community online by asking the following questions:\n\n- Would your persona be able to participate for a long period?\n- In what situations your persona might encounter difficulties during their participation?\n- What interruptions they might face while participating in this project?\n- What are the resources available to support your persona better (like funding or equipment)?\n- How can we assist your persona in reaching their goals?\n\n## Putting this together in a persona canvas\n\nThe persona canvas can be used to assemble all your responses in one place, share this tangible information of your mental model (abstract concepts from our thoughts) with your colleagues and create a common language to communicate about your community members, users, and contributors.\n\nThe [https://www.designabetterbusiness.tools](https://www.designabetterbusiness.tools) have created multiple persona canvases (one is shown in [](#fig-persona-creation)) which are available for reuse under CC-BY ShareAlike 4.0 License, which can be downloaded [here](https://www.designabetterbusiness.tools/tools/persona-canvas).\n\n## Examples of personas in _The Turing Way_ community\n\nIn the next subchapter, you will find examples of personas and pathways in _The Turing Way_ community.\nWith the help of different personas, we have also collected a list of contribution pathways in _The Turing Way_ and how they are acknowledged (see {ref}`Contribution types and pathways <ch-acknowledgement-examples>`).\n\n*You are welcome to contribute to this chapter by testing the process described here to create a persona for your project.\nYour feedback will help us improve this process, and your output can be added here under the example section.*\n"
  },
  {
    "path": "book/website/project-design/stakeholders/persona.md",
    "content": "(pd-persona)=\n# Personas and Pathways\n\n(pd-persona-prerequisites)=\n## Prerequisites\nNone. \n\n(pd-persona-summary)=\n## Summary\nA persona is a detail of an imaginary user or member, based on real-world observations and understandings of existing members or potential future members.\nIt is meaningful when paired with pathways through which these personas engage with a project.\n\n```{figure} ../../../figures/personas.svg\n---\nheight: 400px\nname: personas\nalt: 4 people with diverse appearances are talking to each other, sharing ideas directly with each other and also sharing on social media.\n---\nPeople sharing their ideas through direct conversations and on social media. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n\n(pd-persona-motivation)=\nIn a community-oriented and open source project, participants come with different levels of technical skills, as well as from different backgrounds, identities, demographic distribution and lived experiences.\nThe personas and pathways development tool allows us to take experiences and expectations of individuals into account when planning the community aspects of our projects.\n\nThis chapter aims to capture different 'personas' of members or users and understand the 'pathways' they take to come in contact or staying involved with the project.\n\nIn the first subchapter, we provide a {ref}`persona creation tool<pd-persona-creation>`.\nIn the second subchapter, {ref}`Contributors Personas and Pathways <pd-persona-contributors>`, we discuss how one can identify pathways using examples from _The Turing Way_ community.\n\n*We welcome you to add your personas and pathways in this chapter to provide more examples from different projects.*\n\n"
  },
  {
    "path": "book/website/project-design/stakeholders.md",
    "content": "\n"
  },
  {
    "path": "book/website/references.bib",
    "content": "@misc{lanier2020ai,\n  author = {Jaron Lanier and E. Glen Weyl},\n  title = {AI is an Ideology, Not a Technology},\n  year = {2020},\n  url = {https://www.wired.com/story/opinion-ai-is-an-ideology-not-a-technology/}\n}\n\n@misc{cdc2021theus,\n  author = {Centers for Disease Control and Prevention},\n  title = {The U.S. Public Health Service Syphilis Study at Tuskegee Timeline},\n  year = {2021},\n  url = {https://www.cdc.gov/tuskegee/timeline.htm}\n}\n\n@article{lowe2016afield,\n  title = {A Field Guide to Authorship Fraud},\n  journal = {Science},\n  author = {Derek Lowe},\n  year = {2016},\n  url = {https://www.science.org/content/blog-post/field-guide-authorship-fraud}\n}\n\n@article{marcus2016why,\n  author = {Adam Marcus and Ivan Oransky},\n  title = {Why Fake Data When You Can Fake a Scientist?},\n  year = {2016},\n  journal = {Nautilus},\n  url = {https://nautil.us/why-fake-data-when-you-can-fake-a-scientist-236220/}\n}\n\n@article{marcus2018data,\n  title = {The data thugs},\n  journal = {Science},\n  author = {Marcus, Adam and Oransky, Ivan},\n  year = {2018},\n  volume = {359},\n  issue = {6377},\n  pages = {730-732},\n  url = {https://www.science.org/doi/full/10.1126/science.359.6377.730},\n  publisher = {American Association for the Advancement of Science}\n}\n\n@article{reardon2019pig,\n  author = {Sara Reardon},\n  title = {Pig brains kept alive outside body for hours after death},\n  journal = {Nature},\n  volume = {568},\n  pages = {283-284},\n  issue = {7752},\n  year = {2019},\n  url = {https://www.nature.com/articles/d41586-019-01216-4},\n}\n\n@inbook{korenman2006teaching,\n  title = {Teaching the responsible conduct of research in humans (RCRH)},\n  author = {Korenman, Stanley G},\n  publisher = {Los Angeles: University of California},\n  year = {2006},\n  chapter = {1},\n  url = {https://ori.hhs.gov/education/products/ucla/default.htm}\n}\n\n@article{ditter2022applied,\n  Author = {Joel Dittmer},\n  Journal = {Internet Encyclopedia of Philosophy},\n  Title = {Applied Ethics},\n  Year = {2022},\n  url = {https://iep.utm.edu/applied-ethics/}\n}\n\n@article{Colvard2018OERsuccess,\n  author = {Colvard, Nicholas and Watson, Edward and Park, Hyojin},\n  title = {The Impact of Open Educational Resources on Various Student Success Metrics},\n  journal = {International Journal of Teaching and Learning in Higher Education},\n  volume = {30},\n  number = {2},\n  pages = {262-276},\n  year = {2018},\n  publisher = {International Society for Exploring Teaching and Learning},\n}\n\n@article{Smith2015participantdata,\n  author = {Hasselbring, Wilhelm and Carr, Leslie and Hettrick, Simon and Packer, Heather and Tiropanis, Thanassis},\n  title = {How should individual participant data (IPD) from publicly funded clinical trials be shared?},\n  journal = {BMC Medicine},\n  volume = {13},\n  number = {298},\n  pages = {1-7},\n  year = {2015},\n  publisher = {Springer Nature},\n  doi = {10.1186/s12916-015-0532-z}\n}\n\n@misc{Verheul2019DataStewardship,\n  author = {Verheul, Ingeborg and Imming, Melanie, and Ringersma, Jacquelijn and Mordant, Annemie and Ploeg, Jan-Lucas van der and Pronk, Martine},\n  title = {Data Stewardship on the map: A study of tasks and roles in Dutch research institutes},\n  year = {2019},\n  month = {May},\n  publisher = {Zenodo},\n  url = {https://doi.org/10.5281/zenodo.2669150},\n  doi = {10.5281/zenodo.2669150}\n}\n\n@misc{Scholtens2019FAIRSteward,\n  author = {Scholtens, Salome and Jetten, Mijke and Böhmer, Jasmin and Staiger, Christine and Slouwerhof, Inge and van der Geest, Marije and van Gelder, Celia W.G.},\n  title = {Final report: Towards FAIR data steward as profession for the lifesciences. Report of a ZonMw funded collaborative approach built on existing expertise},\n  year = {2019},\n  month = {October},\n  publisher = {Zenodo},\n  url = {https://doi.org/10.5281/zenodo.3474789},\n  doi = {10.5281/zenodo.3474789}\n}\n\n\n@misc{Jetten201923ThingsData,\n  author = {Jetten, Mijke and Berg, Boudewijn van den and Kuzak, Mateusz and Witkowska, Iza and Karvovskaya, Lena and Teijeiro Barjas, Carlos and Leenarts, Ellen and Schoots, Fieke and Cruz, Maria and Plomp, Esther and Verbakel, Ellen and Martinez Lavanchy, Paula and Braaksma, Barteld and Schoonhoven, Ruurd and Verheul, Ingeborg},\n  title = {23 Things: Support for Research Data. Updated version for the Dutch Community by the LCRDM task group RDA/23 Things},\n  year = {2019},\n  month = {October},\n  publisher = {Zenodo},\n  url = {https://doi.org/10.5281/zenodo.3465896},\n  doi = {10.5281/zenodo.3465896}\n}\n\n@misc{Jetten2021DataStewardship,\n  author = {Jetten, Mijke and Grootveld, Marjan and Mordant, Annemie and Jansen, Mascha and Bloemers, Margreet and Miedema, Margriet and van Gelder, Celia W.G.},\n  title = {Professionalising data stewardship in the Netherlands. Competences, training and education. Dutch roadmap towards national implementation of FAIR data stewardship},\n  year = {2021},\n  month = {March},\n  publisher = {Zenodo},\n  url = {https://doi.org/10.5281/zenodo.4623713},\n  doi = {10.5281/zenodo.4623713}\n}\n\n\n@article{Hasselbring2020FAIRsoftware,\n  author = {Hasselbring, Wilhelm and Carr, Leslie and Hettrick, Simon and Packer, Heather and Tiropanis, Thanassis},\n  title = {From FAIR research data toward FAIR and open research software},\n  journal = {Information Technology},\n  volume = {62},\n  number = {1},\n  pages = {39–47},\n  year = {2020},\n  publisher = {De Gruyter},\n  doi = {10.1515/itit-2019-0040}\n}\n\n@article{Lamprecht2020FAIRsoftware,\n  author = {Lamprecht, Anna-Lena and Garcia, Leyla and Kuzak, Mateusz and Martinez, Carlos and Arcila, Ricardo and Martin Del Pico, Eva and Dominguez Del Angel, Victoria and van de Sandt, Stephanie and Ison, Jon and Martinez, Paula Andrea and McQuilton, Peter and  Valencia, Alfonso and Harrow, Jennifer and Psomopoulos, Fotis and Gelpi, Josep and Chue Hong, Neil and Goble, Carole and Capella-Gutierrez, Salvador},\n  title = {Towards FAIR principles for research software},\n  journal = {Data Science},\n  volume = {3},\n  number = {1},\n  pages = {37–59},\n  year = {2020},\n  publisher = {IOS Press},\n  doi = {10.3233/DS-190026}\n}\n\n@article{Meyer2018personaldata,\n  author = {Meyer, Michelle},\n  title = {Practical Tips for Ethical Data Sharing},\n  journal = {Advances in Methods and Practices in Psychological Science},\n  volume = {1},\n  number = {1},\n  pages = {131–-144},\n  year = {2018},\n  publisher = {SAGE},\n  doi = {10.1177/2515245917747656}\n}\n\n@book{EU2013legal,\n  author = {Of the Union, Corporate. Directorate-General for Internal Policies},\n  title = {Legal aspects of free and open source software: compilation of briefing notes},\n  year = {2013},\n  month = {Dec},\n  isbn = {978-92-823-4570-2},\n  publisher = {Publications Office of the European Union},\n  url = {https://op.europa.eu/en/publication-detail/-/publication/9875c278-5510-4091-b14a-3e8282cb73a4}\n}\n\n@article{Gentleman2007statistical,\n  author = {Gentleman, Robert and Temple Lang, Duncan},\n  title = {Statistical Analyses and Reproducible Research},\n  journal = {J. Comput. Graph. Stat.},\n  volume = {16},\n  number = {1},\n  pages = {1-23},\n  year = {2007},\n  month = {Mar},\n  issn = {1061-8600},\n  publisher = {Taylor & Francis},\n  doi = {10.1198/106186007X178663}\n}\n\n@article{Nuest2017compendia,\n  author = {Nuest, Daniel and Konkol, Markus and Pebesma, Edzer and Kray, Christian and Schutzeichel, Marc and Przibytzin, Holger and Lorenz, Joerg},\n  title = {Opening the Publication Process with Executable Research Compendia},\n  journal = {D-Lib Magazine},\n  url = {https://doi.org/10.1045/january2017-nuest},\n  year = {2017},\n  month = {Jan},\n  volume = {23},\n  number = {1/2},\n  publisher = {CNRI Acct},\n  doi = {10.1045/january2017-nuest}\n}\n\n@article{Wilkinson2016fair,\n  author = {Wilkinson, Mark D. and Dumontier, Michel and Aalbersberg, IJsbrand Jan and Appleton, Gabrielle and Axton, Myles and Baak, Arie and Blomberg, Niklas and Boiten, Jan-Willem and da Silva Santos, Luiz Bonino and Bourne, Philip E. and Bouwman, Jildau and Brookes, Anthony J. and Clark, Tim and Crosas, Merc and Dillo, Ingrid and Dumon, Olivier and Edmunds, Scott and Evelo, Chris T. and Finkers, Richard and Gonzalez-Beltran, Alejandra and Gray, Alasdair J. G. and Groth, Paul and Goble, Carole and Grethe, Jeffrey S. and Heringa, Jaap and t Hoen, Peter A. C. and Hooft, Rob and Kuhn, Tobias and Kok, Ruben and Kok, Joost and Lusher, Scott J. and Martone, Maryann E. and Mons, Albert and Packer, Abel L. and Persson, Bengt and Rocca-Serra, Philippe and Roos, Marco and van Schaik, Rene and Sansone, Susanna-Assunta and Schultes, Erik and Sengstag, Thierry and Slater, Ted and Strawn, George and Swertz, Morris A. and Thompson, Mark and van der Lei, Johan and van Mulligen, Erik and Velterop, Jan and Waagmeester, Andra and Wittenburg, Peter and Wolstencroft, Katherine and Zhao, Jun and Mons, Barend},\n  title = {The FAIR Guiding Principles for scientific data management and stewardship},\n  journal = {Sci. Data},\n  volume = {3},\n  number = {160018},\n  pages = {1--9},\n  year = {2016},\n  month = {Mar},\n  issn = {2052-4463},\n  publisher = {Nature Publishing Group},\n  doi = {10.1038/sdata.2016.18}\n}\n\n@article{Stuart2018sharing,\n  author = {Stuart, David and Baynes, Grace and Hrynaszkiewicz, Iain and Allin, Katie and Penny, Dan and Lucraft, Mithu and Astell, Mathias},\n  title = {Whitepaper: Practical challenges for researchers in data sharing},\n  journal = {figshare},\n  year = {2018},\n  month = {Mar},\n  publisher = {figshare},\n  doi = {10.6084/m9.figshare.5975011.v1}\n}\n\n@article{EU2016protection,\n  Author = {Regulation, Protection},\n  Date-Added = {2019-05-28 17:52:40 +0100},\n  Date-Modified = {2019-05-30 9:09:03 am +0100},\n  Journal = {Official Journal of the European Union},\n  Title = {Regulation (EU) 2016/679 of the European Parliament and of the Council of 27 April 2016 on the protection of natural persons with regard to the processing of personal data and on the free movement of such data, and repealing Directive 95/46/EC (General Data Protection Regulation)},\n  Url = {http://data.europa.eu/eli/reg/2016/679/oj},\n  Year = {2016}\n}\n\n@article{Kuula2010archiving,\n  Author = {Kuula, Arja},\n  Date-Added = {2019-05-28 17:47:46 +0100},\n  Date-Modified = {2022-01-01 00:00:01 am +0100},\n  Journal = {IASSIST Quarterly},\n  Number = {3-4},\n  Pages = {35},\n  Title = {Methodological and Ethical Dilemmas of Archiving Qualitative Data},\n  Url = {https://iassistquarterly.com/public/pdfs/iqvol34_35_kuula.pdf},\n  Volume = {34},\n  Year = {2010}\n}\n\n@article{Broman2018data,\n  Author = {Broman, Karl W and Woo, Kara H},\n  Date-Added = {2019-05-28 17:46:53 +0100},\n  Date-Modified = {2019-05-30 8:56:03 am +0100},\n  Doi = {10.1080/00031305.2017.1375989},\n  Journal = {The American Statistician},\n  Number = {1},\n  Pages = {2--10},\n  Publisher = {Taylor \\& Francis},\n  Title = {Data organization in spreadsheets},\n  Url = {https://peerj.com/preprints/3183/},\n  Volume = {72},\n  Year = {2018}\n}\n\n@article{Fuchs2018documentation,\n  author = {Fuchs, Siiri and Kuusniemi, Mari Elisa},\n  title = {Making a research project understandable - Guide for data documentation},\n  journal = {Zenodo},\n  year = {2018},\n  month = {Dec},\n  doi = {10.5281/zenodo.1914401}\n}\n\n@article{Markowetz2015,\n  author = {Markowetz, Florian},\n  title = {Five selfish reasons to work reproducibly},\n  journal = {Genome Biol.},\n  volume = {16},\n  number = {1},\n  pages = {1--4},\n  year = {2015},\n  month = {Dec},\n  issn = {1474-760X},\n  publisher = {BioMed Central},\n  doi = {10.1186/s13059-015-0850-7}\n}\n\n@article{MozillaScienceLab,\n  Author = {Mozilla Science Lab},\n  Date-Added = {2016-10-02 0:00:00 am +0100},\n  Date-Modified = {2018-01-22 0:00:00 am +0100},\n  Journal = {GitHub},\n  Title = {Mozilla Science Labs Study Group},\n  Year = {2016},\n  url = {https://mozillascience.github.io/study-group-orientation/}\n}\n\n@article{Piwowar2007,\n  Author = {Piwowar, Heather A. AND Day, Roger S. AND Fridsma, Douglas B.},\n  Date-Added = {2007-02-26 0:00:00 am +0100},\n  Date-Modified = {2007-03-21 0:00:00 am +0100},\n  Doi = {10.1371/journal.pone.0000308},\n  Journal = {PLOS ONE},\n  Title = {Sharing Detailed Research Data Is Associated with Increased Citation Rate},\n  Year = {2007},\n  Bdsk-Url-1 = {https://doi.org/10.1371/journal.pone.0000308}\n}\n\n@article{Piwowar2013,\n  Author = {Piwowar, Heather A. and Vision, Todd J.},\n  Date-Added = {2013-09-13 0:00:00 am +0100},\n  Date-Modified = {2013-10-01 0:00:00 am +0100},\n  Doi = {10.7717/peerj.175},\n  Journal = {PeerJ},\n  Title = {Data reuse and the open data citation advantage},\n  Year = {2013},\n  Bdsk-Url-1 = {https://doi.org/10.7717/peerj.175}\n}\n\n@article{OpenScienceCollaboration2015Reproducibility,\n  author = {Open Science Collaboration},\n  title = {Estimating the reproducibility of psychological science},\n  journal = {Science},\n  volume = {349},\n  number = {6251},\n  pages = {aac4716},\n  year = {2015},\n  month = {Aug},\n  issn = {0036-8075},\n  publisher = {American Association for the Advancement of Science},\n  doi = {10.1126/science.aac4716}\n}\n\n@article{Begley2012,\n  author = {Begley, C. Glenn and Ellis, Lee M.},\n  title = {Raise standards for preclinical cancer research},\n  journal = {Nature},\n  volume = {483},\n  number = {7391},\n  pages = {531--533},\n  year = {2012},\n  month = {Mar},\n  issn = {1476-4687},\n  publisher = {Nature Publishing Group},\n  doi = {10.1038/483531a}\n}\n\n@article{Dirnagl2010bias,\n  author = {Dirnagl, Ulrich and Lauritzen, Martin},\n  title = {Fighting Publication Bias: Introducing the Negative Results Section},\n  journal = {Journal of Cerebral Blood Flow \\& Metabolism},\n  volume = {30},\n  number = {7},\n  pages = {1263-1264},\n  year = {2010},\n  doi = {10.1038/jcbfm.2010.51},\n  note ={PMID: 20596038},\n  URL = {https://doi.org/10.1038/jcbfm.2010.51},\n  eprint = {https://doi.org/10.1038/jcbfm.2010.51}\n}\n\n@article{baker2016reproducibility,\n    author={Baker, Monya},\n    title={Reproducibility crisis?},\n    journal={Nature},\n    volume={533},\n    number={26},\n    pages={353--66},\n    year={2016}\n}\n\n@article{Nüst2020docker,\n  doi = {10.1371/journal.pcbi.1008316},\n  url = {https://doi.org/10.1371/journal.pcbi.1008316},\n  year = {2020},\n  month = {nov},\n  publisher = {Public Library of Science PLoS},\n  volume = {16},\n  number = {11},\n  pages = {e1008316},\n  author = {Nüst, Daniel and Sochat, Vanessa and Marwick, Ben and Eglen, Stephen J. and Head, Tim and Hirst, Tony and Evans, Benjamin D.},\n  editor = {Scott Markel},\n  title = {Ten simple rules for writing Dockerfiles for reproducible data science},\n  journal = {PLOS Computational Biology}\n}\n\n@article{Kilkenny2009AnimalExperiments,\n  author = {Kilkenny, Carol and Parsons, Nick and Kadyszewski, Ed and Festing, Michael F. W. and Cuthill, Innes C. and Fry, Derek and Hutton, Jane and Altman, Douglas G.},\n  title = {Survey of the Quality of Experimental Design, Statistical Analysis and Reporting of Research Using Animals},\n  journal = {PLoS One},\n  volume = {4},\n  number = {11},\n  pages = {e7824},\n  year = {2009},\n  month = {Nov},\n  issn = {1932-6203},\n  publisher = {Public Library of Science},\n  doi = {10.1371/journal.pone.0007824}\n}\n\n@article{Begley2015Reproducibility,\n  author = {Begley, C. Glenn and Ioannidis, John P. A.},\n  title = {Reproducibility in Science},\n  journal = {Circ. Res.},\n  year = {2015},\n  month = {Jan},\n  publisher = {Lippincott Williams & Wilkins},\n  url = {https://www.ahajournals.org/doi/10.1161/CIRCRESAHA.114.303819}\n}\n\n@article{Ioannidis2014IncreasingValue,\n  author = {Ioannidis, John P. A. and Greenland, Sander and Hlatky, Mark A. and Khoury, Muin J. and Macleod, Malcolm R. and Moher, David and Schulz, Kenneth F. and Tibshirani, Robert},\n  title = {Increasing value and reducing waste in research design, conduct, and analysis},\n  journal = {Lancet},\n  volume = {383},\n  number = {9912},\n  pages = {166--175},\n  year = {2014},\n  month = {Jan},\n  issn = {0140-6736},\n  publisher = {Elsevier},\n  doi = {10.1016/S0140-6736(13)62227-8}\n}\n\n@article{deVries2014ReviewAnimalExp,\n  author = {de Vries, Rob B. M. and Wever, Kimberley E. and Avey, Marc T. and Stephens, Martin L. and Sena, Emily S. and Leenaars, Marlies},\n  title = {The Usefulness of Systematic Reviews of Animal Experiments for the Design of Preclinical and Clinical Studies},\n  journal = {ILAR J.},\n  volume = {55},\n  number = {3},\n  pages = {427--437},\n  year = {2014},\n  month = {Dec},\n  issn = {1084-2020},\n  publisher = {Oxford Academic},\n  doi = {10.1093/ilar/ilu043}\n}\n\n@misc{Bryan2015Filenaming,\n  author = {Bryan, Jenny},\n  title = {How to name files},\n  journal = {Speaker Deck},\n  year = {2015},\n  month = {May},\n  note = {Online; accessed 19. Nov. 2020},\n  url = {https://speakerdeck.com/jennybc/how-to-name-files}\n}\n\n@misc{Cowles2019Filenaming,\n  author = {Cowles, Wind},\n  title = {Research Guides: Research Data Management at Princeton: File naming and structure},\n  year = {2020},\n  month = {Oct},\n  note = {Online; accessed 19. Nov. 2020},\n  url = {https://libguides.princeton.edu/c.php?g=102546&p=930626}\n}\n\n@misc{Hodge2015Filenaming,\n   author = {Hodge, Amy},\n  title = {Best practices for file naming},\n  journal = {Stanford Libraries},\n  year = {2015},\n  note = {Online; accessed 19. Nov. 2020},\n  url = {https://library.stanford.edu/research/data-management-services/data-best-practices/best-practices-file-naming}\n}\n\n@article{White2013ReuseData,\n  author = {White, Ethan P. and Baldridge, Elita and Brym, Zachary T. and Locey, Kenneth J. and McGlinn, Daniel J. and Supp, Sarah R.},\n  title = {Nine simple ways to make it easier to (re)use your data},\n  journal = {1.},\n  volume = {6},\n  number = {2},\n  year = {2013},\n  month = {Aug},\n  issn = {1918-3178},\n  url = {https://ojs.library.queensu.ca/index.php/IEE/article/view/4608}\n}\n\n@misc{ClaerboutKarrenbach1992Reproducibility,\n  author = {Claerbout, Jon F. and Karrenbach, Martin},\n  title = {Electronic documents give reproducible research a new meaning},\n  journal = {SEG Technical Program Expanded Abstracts},\n  year = {1992},\n  month = {Jan},\n  note = {Online; accessed 27. May 2020},\n  url = {https://library.seg.org/doi/abs/10.1190/1.1822162},\n  doi = {https://doi.org/10.1190/1.1822162}\n}\n\n@article{Ivie2018SciComp,\n  author = {Ivie, Peter and Thain, Douglas},\n  title = {Reproducibility in Scientific Computing},\n  journal = {ACM Comput. Surv.},\n  volume = {51},\n  number = {3},\n  pages = {1--36},\n  year = {2018},\n  month = {Jul},\n  issn = {0360-0300},\n  publisher = {Association for Computing Machinery},\n  doi = {10.1145/3186266}\n}\n\n@article{Heroux2018Reproducibility,\n  author = {Heroux, Michael A. and Barba, Lorena and Parashar, Manish and Stodden, Victoria and Taufer, Michela},\n  title = {Toward a Compatible Reproducibility Taxonomy for Computational and Computing Sciences},\n  journal = {OSTI.GOV collections},\n  year = {2018},\n  month = {Oct},\n  note = {Online; accessed 27. May 2020},\n  URL = {https://www.osti.gov/biblio/1481626-toward-compatible-reproducibility-taxonomy-computational-computing-sciences},\n  doi = {10.2172/1481626}\n}\n\n@article{Barba2018Reproducibility,\n  author = {Barba, Lorena A.},\n  title = {Terminologies for Reproducible Research},\n  journal = {arXiv},\n  year = {2018},\n  month = {Feb},\n  eprint = {1802.03311},\n  url = {https://arxiv.org/abs/1802.03311v1}\n}\n\n@misc{Victoria2014Reproducibility,\n  author = {Stodden, Victoria},\n  title = {Edge.org},\n  year = {2014},\n  month = {May},\n  note = {Online; accessed 27. May 2020},\n  url = {https://www.edge.org/response-detail/25340}\n}\n\n@article{Plesser2018Reproducibility,\n  author = {Plesser, Hans E.},\n  title = {Reproducibility vs. Replicability: A Brief History of a Confused Terminology},\n  journal = {Front. Neuroinf.},\n  volume = {11},\n  year = {2018},\n  month = {Jan},\n  issn = {1662-5196},\n  publisher = {Frontiers},\n  doi = {10.3389/fninf.2017.00076}\n  }\n\n@article{Marwick2018compendia,\n  author = {Marwick, Ben and Boettiger, Carl and Mullen, Lincoln},\n  title = {Packaging data analytical work reproducibly using R (and friends)},\n  journal = {PeerJ Preprints},\n  year = {2018},\n  month = {Mar},\n  issn = {2167-9843},\n  publisher = {PeerJ Inc.},\n  doi = {10.7287/peerj.preprints.3192v2}\n }\n\n@misc{Loyola2020Ethics,\n  author = {Loyola University Maryland},\n  title = {Why Ethics are Important in Data Science by Loyola University Maryland},\n  year = {2018},\n  month = {Jun},\n  note = {Online; accessed 8. Jun. 2020},\n  url = {https://www.loyola.edu/academics/data-science/blog/2018/why-ethics-are-important-in-data-science}\n}\n\n@article{Kunzmann2020CS,\n  author = {Kunzmann, Kevin and Grayling, Michael J and Lee, Kim May and Robertson, David S and Rufibach, Kaspar and Wason, James},\n  title = {A review of Bayesian perspectives on sample size derivation for confirmatory trials},\n  journal = {arXiv preprint arXiv:2006.15715},\n  year = {2020},\n  url = {https://arxiv.org/abs/2006.15715}\n}\n\n@misc{WHO2020Jul,\n    Author = {World Health Organisation},\n    title = {Events as they happen},\n    year = {2020},\n    month = {Jul},\n    note = {Online; accessed 7. Jul. 2020},\n    url = {https://www.who.int/emergencies/diseases/novel-coronavirus-2019/events-as-they-happen}\n  }\n\n@article{Sharan2020Apr,\n  author = {Sharan, Malvika},\n  title = {Open communities and promoting a culture of collaboration},\n  journal = {Zenodo},\n  year = {2020},\n  month = {Apr},\n  doi = {10.5281/zenodo.3745008}\n}\n@misc{HBR2019Belonging,\n  author = {Carr, Evan W. and Reece, Andrew and Kellerman, Gabriella Rosen and Robichaux, Alexi},\n  title = {The Value of Belonging at Work},\n  journal = {Harv. Bus. Rev.},\n  year = {2019},\n  month = {Dec},\n  note = {Online; accessed 19. Nov. 2020},\n  url = {https://hbr.org/2019/12/the-value-of-belonging-at-work}\n}\n\n@misc{Lifehack2020pomodoro,\n  author = {Cummings, Tucker},\n  title = {Does the Pomodoro Technique Work for Your Productivity?},\n  journal = {Lifehack},\n  year = {2020},\n  month = {Apr},\n  publisher = {Lifehack},\n  url = {https://www.lifehack.org/articles/productivity/the-pomodoro-technique-is-it-right-for-you.html}\n}\n\n@article{CSCCE2020virtual,\n    author = {Woodley, Louise and Pratt, Catherine and Ainsworth, Rachael and Amsen, Eva and Bakker, Arne and Butland, Stefanie and O Donnell, Stephanie and Penfold, Naomi and Pope, Allen and Quigley, Tom and Tsang, Emmy},\n    title = {Using virtual events to facilitate community building: event formats},\n    journal = {Zenodo},\n    year = {2020},\n    month = {Jul},\n    doi = {10.5281/zenodo.3934385}\n  }\n\n@misc{creativecommons2020licenses,\n  author = {Creative Commons},\n  title = {About CC Licenses - Creative Commons},\n  journal = {Creative Commons},\n  year = {2020},\n  month = {May},\n  note = {[Online; accessed 19. Nov. 2020]},\n  url = {https://creativecommons.org/about/cclicenses}\n}\n\n@misc{odk2020odc,\n  author = {Open Data Commons},\n  title = {Licenses - Open Data Commons: legal tools for open data},\n  year = {2020},\n  month = {Oct},\n  note = {Online; accessed 19. Nov. 2020},\n  url = {https://opendatacommons.org/licenses/index.html}\n}\n\n@misc{nlod2020governmentdata,\n  author = {Agency, Norwegian Digitalisation},\n  title = {Norwegian Licence for Open Government Data (NLOD) 2.0},\n  year = {2020},\n  month = {Aug},\n  note = {Online; accessed 19. Nov. 2020},\n  url = {https://data.norge.no/nlod/en/2.0}\n}\n\n@misc{ball2011license,\n  author={Ball, Alex},\n  title = {How to License Research Data - DCC},\n  year = {2020},\n  month = {Nov},\n  note = {Online; accessed 19. Nov. 2020},\n  url = {https://www.dcc.ac.uk/guidance/how-guides/license-research-data}\n}\n\n @article{Zollman2018CreditEconomy,\n  author = {Zollman, Kevin J. S.},\n  title = {The Credit Economy and the Economic Rationality of Science},\n  journal = {Journal of Philosophy},\n  volume = {115},\n  number = {1},\n  pages = {5--33},\n  year = {2018},\n  month = {Feb},\n  doi = {10.5840/jphil201811511}\n}\n\n@article{Owen2012ResposibleRI,\n  author = {Owen, Richard and Macnaghten, Phil and Stilgoe, Jack},\n  title = {Responsible research and innovation: From science in society to science for society, with society},\n  journal = {Sci. Public Policy},\n  volume = {39},\n  number = {6},\n  pages = {751--760},\n  year = {2012},\n  month = {Dec},\n  issn = {0302-3427},\n  publisher = {Oxford Academic},\n  doi = {10.1093/scipol/scs093}\n}\n\n@article{Nagendran2020AIvsClinician,\n  author = {Nagendran, Myura and Chen, Yang and Lovejoy, Christopher A. and Gordon, Anthony C. and Komorowski, Matthieu and Harvey, Hugh and Topol, Eric J. and Ioannidis, John P. A. and Collins, Gary S. and Maruthappu, Mahiben},\n  title = {Artificial intelligence versus clinicians: systematic review of design, reporting standards, and claims of deep learning studies},\n  journal = {BMJ},\n  volume = {368},\n  pages = {m689},\n  year = {2020},\n  month = {Mar},\n  issn = {1756-1833},\n  publisher = {British Medical Journal Publishing Group},\n  doi = {10.1136/bmj.m689}\n}\n\n@article{Kaiser2009fMRIlanguage,\n  author = {Kaiser, Anelis and Haller, Sven and Schmitz, Sigrid and Nitsch, Cordula},\n  title = {On sex/gender related similarities and differences in fMRI language research},\n  journal = {Brain Res. Rev.},\n  volume = {61},\n  number = {2},\n  pages = {49--59},\n  year = {2009},\n  month = {Oct},\n  issn = {0165-0173},\n  publisher = {Elsevier},\n  doi = {10.1016/j.brainresrev.2009.03.005}\n}\n\n@article{Harvey2018GiftHonorary,\n  author = {Harvey, L. A.},\n  title = {Gift, honorary or guest authorship},\n  journal = {Spinal Cord},\n  volume = {56},\n  number = {2},\n  pages = {91},\n  year = {2018},\n  month = {Feb},\n  issn = {1476-5624},\n  publisher = {Nature Publishing Group},\n  doi = {10.1038/s41393-017-0057-8}\n}\n\n@book{Innovation2011EUCommission,\n  author = {Directorate-General for Research and Innovation (European Commission)},\n  title = {European textbook on ethics in research},\n  year = {2011},\n  month = {Jan},\n  isbn = {978-92-79-17543-5},\n  publisher = {Publications Office of the European Union},\n  url = {https://op.europa.eu/en/publication-detail/-/publication/0f37f142-c333-40a8-90a7-bba25c314720/language-en}\n}\n\n@article{Bloch2015ResearchFunding,\n  author = {Bloch, Carter and S{\\o}rensen, Mads P.},\n  title = {The size of research funding: Trends and implications},\n  journal = {Sci. Public Policy},\n  volume = {42},\n  number = {1},\n  pages = {30--43},\n  year = {2015},\n  month = {Feb},\n  issn = {0302-3427},\n  publisher = {Oxford Academic},\n  doi = {10.1093/scipol/scu019}\n}\n\n@article{McKiernan2016Open,\n  author = {McKiernan, Erin C. and Bourne, Philip E. and Brown, C. Titus and Buck, Stuart and Kenall, Amye and Lin, Jennifer and McDougall, Damon and Nosek, Brian A. and Ram, Karthik and Soderberg, Courtney K. and Spies, Jeffrey R. and Thaney, Kaitlin and Updegrove, Andrew and Woo, Kara H. and Yarkoni, Tal},\n  title = {Point of View: How open science helps researchers succeed},\n  journal = {eLife},\n  year = {2016},\n  month = {Jul},\n  publisher = {eLife Sciences Publications, Ltd},\n  doi = {10.7554/eLife.16800}\n}\n\n@misc{ThalerSunstein2009Nudge,\n  author = {Richard H. Thaler and Cass R. Sunstein},\n  title = {Nudge},\n  journal = {PenguinRandomhouse},\n  year = {2009},\n  month = {February},\n  note = {[Online; accessed 5. May 2021]},\n  url = {https://www.penguinrandomhouse.com/books/304634/nudge-by-richard-h-thaler-and-cass-r-sunstein}\n}\n@misc{Ranganathan2013Outreach,\n  author = {Ranganathan, Jai},\n  title = {Scientists: do outreach or your science dies},\n  journal = {Scientific American Blog Network},\n  year = {2013},\n  month = {June},\n  note = {[Online; accessed 5. Jan. 2021]},\n  url = {https://blogs.scientificamerican.com/guest-blog/scientists-do-outreach-or-your-science-dies}\n}\n\n@misc{UniBath2019Outreach,\n  title = {Why public engagement matters},\n  year = {2019},\n  month = {Nov},\n  note = {[Online; accessed 5. Jan. 2021]},\n  url = {https://www.bath.ac.uk/campaigns/why-public-engagement-matters}\n}\n\n@article{BBCNews2015antivax,\n  author = {BBC News},\n  title = {What s behind the anti-vax movement?},\n  journal = {BBC News},\n  year = {2015},\n  month = {Aug},\n  publisher = {BBC News},\n  url = {https://www.bbc.co.uk/news/health-33774181}\n}\n\n@article{Feder2012climate,\n  author = {Feder, Toni},\n  title = {Climate scientists not cowed by relentless climate change deniers},\n  journal = {Phys. Today},\n  volume = {65},\n  number = {2},\n  pages = {22},\n  year = {2012},\n  month = {Feb},\n  issn = {0031-9228},\n  publisher = {American Institute of PhysicsAIP},\n  doi = {10.1063/PT.3.1431}\n}\n\n@misc{LSE2019trustcrisis,\n  author = {Isabelle Stanley and Rod Dowler},\n  title = {The deep roots of the trust crisis},\n  journal = {LSE Business Review},\n  year = {2019},\n  month = {Jan},\n  note = {[Online; accessed 5. Jan. 2021]},\n  url = {https://blogs.lse.ac.uk/businessreview/2019/01/28/the-deep-roots-of-the-trust-crisis}\n}\n\n@misc{Llc2021journalists,\n  author = {Llc, Bioscience Writers},\n  title = {Introduction to the Relationship Between Researchers and Journalists},\n  year = {2021},\n  month = {Jan},\n  note = {[Online; accessed 5. Jan. 2021]},\n  url = {https://www.biosciencewriters.com/Introduction-to-the-Relationship-Between-Researchers-and-Journalists.aspx}\n}\n\n@article{Hoskins2019teach,\n  author = {Hoskins, Sally G.},\n  title = {How I learned to teach like a scientist},\n  journal = {Science AAAS},\n  year = {2019},\n  month = {Jun},\n  doi = {10.1126/science.caredit.aay3706}\n}\n\n@article{Ahmed2012pubbias,\n  author = {Ahmed, Ikhlaaq and Sutton, Alexander J. and Riley, Richard D.},\n  title = {Assessment of publication bias, selection bias, and unavailable data in meta-analyses using individual participant data: a database survey},\n  journal = {BMJ},\n  volume = {344},\n  pages = {d7762},\n  year = {2012},\n  month = {Jan},\n  issn = {0959-8138},\n  publisher = {British Medical Journal Publishing Group},\n  doi = {10.1136/bmj.d7762}\n}\n\n@article{Jambeck2015plasticwaste,\n  author = {Jambeck, Jenna R. and Geyer, Roland and Wilcox, Chris and Siegler, Theodore R. and Perryman, Miriam and Andrady, Anthony and Narayan, Ramani and Law, Kara Lavender},\n  title = {Plastic waste inputs from land into the ocean},\n  journal = {Science},\n  volume = {347},\n  number = {6223},\n  pages = {768--771},\n  year = {2015},\n  month = {Feb},\n  issn = {0036-8075},\n  publisher = {American Association for the Advancement of Science},\n  doi = {10.1126/science.1260352}\n}\n\n@book{NationalAcademiesofSciences2016comms,\n  author = {National Academies of Sciences, Engineering},\n  title = {Communicating Science Effectively: A Research Agenda},\n  journal = {National Academies Press},\n  year = {2016},\n  month = {Dec},\n  isbn = {978-0-309-45102-4},\n  publisher = {National Academies of Sciences, Engineering, and Medicine; Division of Behavioral and Social Sciences and Education; Committee on the Science of Science Communication: A Research Agenda},\n  doi = {10.17226/23674}\n}\n\n@misc{Christiansen2021viz,\n  author = {Christiansen, Jen},\n  title = {Visualizing Science: Illustration and Beyond},\n  journal = {Scientific American Blog Network},\n  year = {2021},\n  month = {Jan},\n  note = {[Online; accessed 5. Jan. 2021]},\n  url = {https://blogs.scientificamerican.com/sa-visual/visualizing-science-illustration-and-beyond}\n}\n\n@article{Elliott2019viz,\n  author = {Elliott, Kennedy},\n  title = {39 studies about human perception in 30 minutes - kennedy elliott - Medium},\n  journal = {Medium},\n  year = {2019},\n  month = {Oct},\n  publisher = {Medium},\n  url = {https://medium.com/@kennelliott/39-studies-about-human-perception-in-30-minutes-4728f9e31a73}\n}\n\n@article{Rosenau2012denial,\n  author = {Rosenau, Joshua},\n  title = {Science denial: a guide for scientists},\n  journal = {Trends Microbiol.},\n  volume = {20},\n  number = {12},\n  pages = {567--569},\n  year = {2012},\n  month = {Dec},\n  issn = {0966-842X},\n  publisher = {Elsevier},\n  doi = {10.1016/j.tim.2012.10.002}\n}\n\n@article{McClain2017fb,\n  author = {McClain, Craig R.},\n  title = {Practices and promises of Facebook for science outreach: Becoming a Nerd of Trust},\n  journal = {PLoS Biol.},\n  volume = {15},\n  number = {6},\n  pages = {e2002020},\n  year = {2017},\n  month = {Jun},\n  issn = {1545-7885},\n  publisher = {Public Library of Science},\n  doi = {10.1371/journal.pbio.2002020}\n}\n\n@article{UNESCO2020science,\n  author = {UNESCO},\n  title = {UNESCO Science Report},\n  journal = {UNESCO},\n  year = {2020},\n  month = {Oct},\n  url = {https://en.unesco.org/unescosciencereport}\n}\n\n@article{Kwok2013comms,\n  author = {Kwok, Roberta},\n  title = {Communication: Two minutes to impress},\n  journal = {Nature},\n  volume = {494},\n  number = {7435},\n  pages = {138},\n  year = {2013},\n  month = {Feb},\n  issn = {1476-4687},\n  publisher = {Nature Publishing Group},\n  doi = {10.1038/nj7435-137a}\n}\n\n@article{Trevors2016knowledge,\n  author = {Trevors, Gregory J. and Muis, Krista R. and Pekrun, Reinhard and Sinatra, Gale M. and Winne, Philip H.},\n  title = {Identity and Epistemic Emotions During Knowledge Revision: A Potential Account for the Backfire Effect},\n  journal = {Discourse Processes},\n  volume = {53},\n  number = {5-6},\n  pages = {339--370},\n  year = {2016},\n  month = {Jul},\n  issn = {0163-853X},\n  publisher = {Routledge},\n  doi = {10.1080/0163853X.2015.1136507}\n}\n\n@book{Tsipursky2017book,\n  author = {Tsipursky, Gleb and Holliday, Lexie},\n  title = {The Truth-Seekers Handbook: A Science-Based Guide},\n  year = {2017},\n  month = {Nov},\n  publisher = {Intentional Insights},\n  url = {https://www.amazon.com/Truth-Seekers-Handbook-Science-Based-Guide-ebook/dp/B078429WCF}\n}\n\n@misc{EOS2015outreachprogram,\n  title = {Developing and Implementing an Effective Public Outreach Program - Eos},\n  journal = {Eos},\n  year = {2015},\n  month = {Jul},\n  note = {[Online; accessed 5. Jan. 2021]},\n  url = {https://eos.org/features/developing-and-implementing-an-effective-public-outreach-program}\n}\n\n@article{Turkyilmaz-vanderVelden2020projectdesign,\n  author = {Turkyilmaz-van der Velden, Yasemin and Dintzner, Nicolas and Teperek, Marta},\n  title = {Reproducibility Starts from You Today},\n  journal = {Patterns},\n  volume = {1},\n  number = {6},\n  pages = {100099},\n  year = {2020},\n  month = {Sep},\n  issn = {2666-3899},\n  publisher = {Elsevier},\n  doi = {10.1016/j.patter.2020.100099}\n}\n\n@article{Ioannidis2005False,\n    doi = {10.1371/journal.pmed.0020124},\n    author = {Ioannidis, John P. A.},\n    journal = {PLOS Medicine},\n    publisher = {Public Library of Science},\n    title = {Why Most Published Research Findings Are False},\n    year = {2005},\n    month = {08},\n    volume = {2},\n    url = {https://doi.org/10.1371/journal.pmed.0020124},\n    pages = {null},\n    abstract = {Summary There is increasing concern that most current published research findings are false. The probability that a research claim is true may depend on study power and bias, the number of other studies on the same question, and, importantly, the ratio of true to no relationships among the relationships probed in each scientific field. In this framework, a research finding is less likely to be true when the studies conducted in a field are smaller; when effect sizes are smaller; when there is a greater number and lesser preselection of tested relationships; where there is greater flexibility in designs, definitions, outcomes, and analytical modes; when there is greater financial and other interest and prejudice; and when more teams are involved in a scientific field in chase of statistical significance. Simulations show that for most study designs and settings, it is more likely for a research claim to be false than true. Moreover, for many current scientific fields, claimed research findings may often be simply accurate measures of the prevailing bias. In this essay, I discuss the implications of these problems for the conduct and interpretation of research.},\n    number = {8},\n}\n\n@article{Duke2012summary,\n  author = {Duke, Monica},\n  title = {How to Write a Lay Summary - DCC How-to Guides},\n  journal = {Digital Curation Centre},\n  year = {2012},\n  month = {June},\n  note = {[Online; accessed 7. June. 2021]},\n  url = {https://www.dcc.ac.uk/guidance/how-guides/write-lay-summary}\n}\n\n@book{DunleavyTinkler2021impact,\n  author = {Dunleavy, Patrick and Tinkler, Jane},\n  title = {Maximizing the Impacts of Academic Research},\n  year = {2021},\n  month = {Jan},\n  publisher = {Red Globe Press: London},\n  url = {https://www.amazon.co.uk/dp/B08KZLWB44/ref=dp-kindle-redirect?_encoding=UTF8&btkr=1}\n}\n\n@article{Cheplygina2020twitter,\n  title = {Ten simple rules for getting started on {Twitter} as a scientist},\n  volume = {16},\n  url = {https://doi.org/10.1371/journal.pcbi.1007513},\n  doi = {10.1371/journal.pcbi.1007513},\n  abstract = {null},\n  number = {2},\n  journal = {PLOS Computational Biology},\n  author = {Cheplygina, Veronika and Hermans, Felienne and Albers, Casper and Bielczyk, Natalia and Smeets, Ionica},\n  year = {2020},\n  note = {Publisher: Public Library of Science},\n  pages = {1--9}\n}\n\n@article{Garcia2020ten,\n    doi = {10.1371/journal.pcbi.1007854},\n    author = {Garcia, Leyla AND Batut, Bérénice AND Burke, Melissa L. AND Kuzak, Mateusz AND Psomopoulos, Fotis AND Arcila, Ricardo AND Attwood, Teresa K. AND Beard, Niall AND Carvalho-Silva, Denise AND Dimopoulos, Alexandros C. AND del Angel, Victoria Dominguez AND Dumontier, Michel AND Gurwitz, Kim T. AND Krause, Roland AND McQuilton, Peter AND Le Pera, Loredana AND Morgan, Sarah L. AND Rauste, Päivi AND Via, Allegra AND Kahlem, Pascal AND Rustici, Gabriella AND van Gelder, Celia W. G. AND Palagi, Patricia M.},\n    journal = {PLOS Computational Biology},\n    publisher = {Public Library of Science},\n    title = {Ten simple rules for making training materials FAIR},\n    year = {2020},\n    month = {05},\n    volume = {16},\n    url = {https://doi.org/10.1371/journal.pcbi.1007854},\n    pages = {1-9},\n    number = {5}\n }\n\n @book{Kelesidou2021scicomm,\n  author = {Kelesidou, Fani and Chabrol, Elodie},\n  title = {A comprehensive guide to science communication},\n  year = {2021},\n  month = {Apr},\n  publisher = {Hindawi Limited},\n  url = {https://www.hindawi.com/resources/}\n}\n\n@misc{Chabrol2021twitter,\n  author = {Chabrol, Elodie},\n  title = {Practical tips for scientists using twitter, in A comprehensive guide to science communication},\n  year = {2021},\n  month = {Apr},\n  url = {https://www.hindawi.com/resources/}\n}\n\n@article{Noorden2014social,\n    doi = {10.1038/512126a},\n    author = {Van Noorden, Richard},\n    journal = {Nature},\n    publisher = {Springer Nature},\n    title = {Online Collaboration: scientists and the social network},\n    year = {2014},\n    month = {08},\n    volume = {512},\n    url = {https://www.nature.com/news/online-collaboration-scientists-and-the-social-network-1.15711},\n    pages = {126-129},\n }\n\n@article{Goff-Dupont2020ownership,\n  author = {Goff-Dupont, Sarah},\n  title = {How to be a successful project owner (without micromanaging)},\n  journal = {Work Life by Atlassian},\n  year = {2020},\n  month = {Aug},\n  publisher = {Atlassian},\n  url = {https://www.atlassian.com/blog/productivity/guide-to-project-ownership-without-micromanaging}\n}\n\n@inproceedings{narayanan2008deanonymization,\n  title = {Robust De-Anonymization of Large Sparse Datasets},\n  booktitle = {Proceedings - IEEE Symposium on Security and Privacy},\n  author = {Narayanan, Arvind and Shmatikov, Vitaly},\n  year = {2008},\n  pages = {111--125},\n  issn = {10816011},\n  doi = {10.1109/SP.2008.33},\n  isbn = {978-0-7695-3168-7}\n}\n\n@inproceedings{sun2012anonymization,\n  title = {On the Identity Anonymization of High-Dimensional Rating Data},\n  booktitle = {Concurrency Computation Practice and Experience},\n  author = {Sun, Xiaoxun and Wang, Hua and Zhang, Yanchun},\n  year = {2012},\n  month = {jul},\n  volume = {24},\n  pages = {1108--1122},\n  publisher = {John Wiley & Sons, Ltd},\n  issn = {15320626},\n  doi = {10.1002/cpe.1724},\n}\n\n@inproceedings{carlini2019networks,\n  title = {The Secret Sharer: Evaluating and Testing Unintended Memorization in Neural Networks},\n  booktitle = {Proceedings of the 28th USENIX Security Symposium},\n  author = {Carlini, Nicholas and Liu, Chang and Erlingsson, Ulfar and Kos, Jernej and Song, Dawn},\n  year = {2019},\n  month = {feb},\n  eprint = {1802.08232},\n  eprinttype = {arxiv},\n  pages = {267--284},\n  publisher = {{USENIX Association}},\n  archiveprefix = {arXiv},\n  isbn = {978-1-939133-06-9},\n}\n\n@article{brown2022privacy,\n  title = {What Does It Mean for a Language Model to Preserve Privacy?},\n  author = {Brown, Hannah and Lee, Katherine and Mireshghallah, Fatemehsadat and Shokri, Reza and Tramer, Florian},\n  year = {2022},\n  month = {feb},\n  journal = {arXiv:2202.05520 [cs, stat]},\n  eprint = {2202.05520},\n  eprinttype = {arxiv},\n  primaryclass = {cs, stat},\n  archiveprefix = {arXiv},\n}\n\n@inproceedings{yang2012privacy,\n  title = {Differential Privacy in Data Publication and Analysis},\n  booktitle = {Proceedings of the 2012 ACM SIGMOD International Conference on Management of Data},\n  author = {Yang, Yin and Zhang, Zhenjie and Miklau, Gerome and Winslett, Marianne and Xiao, Xiaokui},\n  year = {2012},\n  month = may,\n  series = {SIGMOD '12},\n  pages = {601--606},\n  publisher = {Association for Computing Machinery},\n  address = {New York, NY, USA},\n  doi = {10.1145/2213836.2213910},\n  isbn = {978-1-4503-1247-9},\n}\n\n@article{torfi2020syntethic,\n  title = {Differentially Private Synthetic Medical Data Generation Using Convolutional GANs},\n  author = {Torfi, Amirsina and Fox, Edward A. and Reddy, Chandan K.},\n  year = {2020},\n  month = dec,\n  journal = {arXiv:2012.11774 [cs]},\n  eprint = {2012.11774},\n  eprinttype = {arxiv},\n}\n\n@article{kairouz2019openproblems,\n  title = {Advances and Open Problems in Federated Learning},\n  author = {Kairouz, Peter and McMahan, H. Brendan and Avent, Brendan and Bellet, Aurelien and Bennis, Mehdi and Bhagoji, Arjun Nitin and Bonawitz, Keith and Charles, Zachary and Cormode, Graham and Cummings, Rachel and D'Oliveira, Rafael G. L. and Rouayheb, Salim El and Evans, David and Gardner, Josh and Garrett, Zachary and Gascon, Adria and Ghazi, Badih and Gibbons, Phillip B. and Gruteser, Marco and Harchaoui, Zaid and He, Chaoyang and He, Lie and Huo, Zhouyuan and Hutchinson, Ben and Hsu, Justin and Jaggi, Martin and Javidi, Tara and Joshi, Gauri and Khodak, Mikhail and Konevcny, Jakub and Korolova, Aleksandra and Koushanfar, Farinaz and Koyejo, Sanmi and Lepoint, Tancrede and Liu, Yang and Mittal, Prateek and Mohri, Mehryar and Nock, Richard and Ozgür, Ayfer and Pagh, Rasmus and Raykova, Mariana and Qi, Hang and Ramage, Daniel and Raskar, Ramesh and Song, Dawn and Song, Weikang and Stich, Sebastian U. and Sun, Ziteng and Suresh, Ananda Theertha and Tramèr, Florian and Vepakomma, Praneeth and Wang, Jianyu and Xiong, Li and Xu, Zheng and Yang, Qiang and Yu, Felix X. and Yu, Han and Zhao, Sen},\n  year = {2019},\n  month = dec,\n  eprint = {1912.04977},\n  journal = {arXiv},\n  archiveprefix = {arXiv},\n}\n\n@inproceedings{feyisetan2020privacy,\n  title = {Privacy- And Utility-Preserving Textual Analysis via Calibrated Multivariate Perturbations},\n  booktitle = {WSDM 2020 - Proceedings of the 13th International Conference on Web Search and Data Mining},\n  author = {Feyisetan, Oluwaseyi and Balle, Borja and Drake, Thomas and Diethe, Tom},\n  year = {2020},\n  month = {oct},\n  eprint = {1910.08902},\n  eprinttype = {arxiv},\n  pages = {178--186},\n  publisher = {Association for Computing Machinery, Inc},\n  doi = {10.1145/3336191.3371856},\n  archiveprefix = {arXiv},\n  isbn = {978-1-4503-6822-3},\n}\n\n@article{boulemtafes2020privacy,\n  title = {A Review of Privacy-Preserving Techniques for Deep Learning},\n  author = {Boulemtafes, Amine and Derhab, Abdelouahid and Challal, Yacine},\n  year = {2020},\n  month = {apr},\n  journal = {Neurocomputing},\n  volume = {384},\n  pages = {21-45},\n  publisher = {Elsevier B.V.},\n  issn = {18728286},\n  doi = {10.1016/j.neucom.2019.11.041},\n}\n\n@inproceedings{Coavoux2018,\n  title = {Privacy-Preserving Neural Representations of Text},\n  booktitle = {Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing},\n  author = {Coavoux, Maximin and Narayan, Shashi and Cohen, Shay B},\n  year = {2018},\n  pages = {1-10},\n}\n\n@inproceedings{zhang2018biases,\n  title = {Mitigating Unwanted Biases with Adversarial Learning},\n  booktitle = {Proceedings of the 2018 AAAI/ACM Conference on AI, Ethics, and Society},\n  author = {Zhang, Brian Hu and Lemoine, Blake and Mitchell, Margaret},\n  year = {2018},\n  month = {dec},\n  series = {AIES '18},\n  pages = {335--340},\n  publisher = {Association for Computing Machinery},\n  address = {New York, NY, USA},\n  doi = {10/gftmfb},\n  isbn = {978-1-4503-6012-8},\n}\n\n@article {wislar2011honorary,\n  author = {Wislar, Joseph S and Flanagin, Annette and Fontanarosa, Phil B and DeAngelis, Catherine D},\n  title = {Honorary and ghost authorship in high impact biomedical journals: a cross sectional survey},\n  volume = {343},\n  elocation-id = {d6128},\n  year = {2011},\n  doi = {10.1136/bmj.d6128},\n  publisher = {BMJ Publishing Group Ltd},\n  issn = {0959-8138},\n  URL = {https://www.bmj.com/content/343/bmj.d6128},\n  eprint = {https://www.bmj.com/content/343/bmj.d6128.full.pdf},\n  journal = {BMJ}\n}\n\n@article{fong2017manipulation,\n    doi = {10.1371/journal.pone.0187394},\n    author = {Fong, Eric A. and Wilhite, Allen W.},\n    journal = {PLOS ONE},\n    publisher = {Public Library of Science},\n    title = {Authorship and citation manipulation in academic research},\n    year = {2017},\n    month = {12},\n    volume = {12},\n    url = {https://doi.org/10.1371/journal.pone.0187394},\n    pages = {1-34}\n}\n\n@misc{Panter2021bestpractices,\n  author = {Panter, Michaela},\n  title = {Credit where credit is due: best practices for authroship attribution},\n  journal = {AJE Scholar},\n  year = {2021},\n  note = {Online; accessed 11. Aug. 2021},\n  url = {https://www.aje.com/en/arc/ethics-manuscript-authorship}\n}\n\n@article{Freire2018Reproducibility,\n  author    = {Freire, Juliana and Chirigati, Fernando Seabra},\n  title     = {Provenance and the Different Flavors of Reproducibility},\n  journal   = {IEEE Data Eng. Bull.},\n  volume    = {41},\n  number    = {1},\n  pages     = {15--26},\n  year      = {2018},\n  url       = {http://sites.computer.org/debull/A18mar/p15.pdf},\n  timestamp = {Tue, 10 Mar 2020 16:23:50 +0100},\n  biburl    = {https://dblp.org/rec/journals/debu/FreireC17.bib},\n  bibsource = {dblp computer science bibliography, https://dblp.org}\n}\n\n@Article{ChueHong2021FAIR4RS,\n  author    = {Chue Hong, Neil P. and Katz, Daniel S. and Barker, Michelle and Lamprecht, Anna-Lena and Martinez, Carlos and Psomopoulos, Fotis E. and Harrow, Jen and Castro, Leyla Jael and Gruenpeter, Morane and Martinez, Paula Andrea and Honeyman, Tom},\n  title     = {FAIR Principles for Research Software (FAIR4RS Principles)},\n  doi       = {10.15497/RDA00065},\n  language  = {en},\n  journal   = {},\n  copyright = {Creative Commons Attribution 4.0 International},\n  publisher = {Research Data Alliance},\n  year      = {2021},\n}\n\n@article{crenshaw1989demarginalizing,\n  title = {Demarginalizing the intersection of race and sex: A black feminist critique of antidiscrimination doctrine, feminist theory and antiracist politics},\n  author = {Crenshaw, Kimberlè},\n  journal = {University of Chicago Legal Forum},\n  pages = {139},\n  year = {1989},\n  issue = {1},\n  url = {https://chicagounbound.uchicago.edu/cgi/viewcontent.cgi?article=1052&context=uclf}\n}\n\n@incollection{collins1990black,\n  title = {Black feminist thought in the matrix of domination},\n  author = {Collins, Patricia Hill},\n  booktitle = {Black feminist thought: Knowledge, consciousness, and the politics of empowerment},\n  year = {1990},\n  publisher = {HarperCollins Academic},\n  url = {http://www.oregoncampuscompact.org/uploads/1/3/0/4/13042698/patricia_hill_collins_black_feminist_thought_in_the_matrix_of_domination.pdf}\n}\n\n@incollection{burnham2018developments,\n  title = {Developments in Social GRRRAAACCEEESSS: visible--invisible and voiced--unvoiced},\n  author = {Burnham, John},\n  booktitle = {Culture and reflexivity in systemic psychotherapy},\n  pages = {139-160},\n  year = {2012},\n  publisher = {Routledge},\n  url = {https://www.taylorfrancis.com/chapters/edit/10.4324/9780429473463-7/developments-social-grrraaacceeesss-visible%E2%80%93invisible-voiced%E2%80%93unvoiced-1-john-burnham}\n}\n\n@article{gebru2018datasheets,\n  title = {Datasheets for datasets},\n  author = {Gebru, Timnit and Morgenstern, Jamie and Vecchione, Briana and Vaughan, Jennifer Wortman and Wallach, Hanna and Daume III, Hal and Crawford, Kate},\n  journal = {arXiv preprint arXiv:1803.09010},\n  year = {2018},\n  url = {https://www.microsoft.com/en-us/research/uploads/prod/2019/01/1803.09010.pdf}\n}\n\n@article{haraway1988situated,\n  title = {Situated knowledges: The science question in feminism and the privilege of partial perspective},\n  author = {Haraway, Donna},\n  journal = {Feminist studies},\n  volume = {14},\n  number = {3},\n  pages = {575--599},\n  year = {1988},\n  publisher = {JSTOR},\n  url = {https://www.jstor.org/stable/3178066}\n}\n\n@incollection{ricker2017reflexivity,\n  title = {Reflexivity, positionality and rigor in the context of big data research},\n  author = {Ricker, Britta},\n  booktitle = {Thinking Big Data in Geography: New Regimes, New Research},\n  year = {2017},\n  publisher = {University of Iowa Press},\n  url = {https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2911652}\n}\n\n@book{costanza2020design,\n  title={Design justice: Community-led practices to build the worlds we need},\n  author={Costanza-Chock, Sasha},\n  year={2020},\n  publisher={The MIT Press},\n  url = {https://design-justice.pubpub.org/}\n}\n\n@article{jafar2018positionality,\n  title = {What is positionality and should it be expressed in quantitative studies?},\n  author = {Jafar, Anisa JN},\n  year = {2018},\n  journal = {Emergency Medicine Journal},\n  publisher = {BMJ Publishing Group Ltd},\n  doi = {10.1136/emermed-2017-207158},\n  url = {https://emj.bmj.com/content/35/5/323}\n}\n\n@misc{mcintosh1988white,\n  title = {White privilege: Unpacking the invisible knapsack},\n  author = {McIntosh, Peggy},\n  year = {1988},\n  publisher = {Wellesley College Center for Research on Women},\n  url = {https://admin.artsci.washington.edu/sites/adming/files/unpacking-invisible-knapsack.pdf}\n}\n\n@article{birhane2021algorithmic,\n  title={Algorithmic injustice: a relational ethics approach},\n  author={Birhane, Abeba},\n  journal={Patterns},\n  volume={2},\n  number={2},\n  pages={100205},\n  year={2021},\n  publisher={Elsevier},\n  url = {https://www.sciencedirect.com/science/article/pii/S2666389921000155}\n}\n\n@article{holmes2020researcher,\n  title = {Researcher Positionality-A Consideration of Its Influence and Place in Qualitative Research-A New Researcher Guide},\n  author = {Holmes, Andrew Gary Darwin},\n  journal = {International Journal of Education},\n  volume = {8},\n  number = {4},\n  pages = {1--10},\n  year = {2020},\n  publisher = {Shanlax Journals},\n  url = {https://files.eric.ed.gov/fulltext/EJ1268044.pdf}\n}\n\n@article{jacobson2019social,\n  title = {Social identity map: A reflexivity tool for practicing explicit positionality in critical qualitative research},\n  author = {Jacobson, Danielle and Mustafa, Nida},\n  journal = {International Journal of Qualitative Methods},\n  volume = {18},\n  pages = {1609406919870075},\n  year = {2019},\n  publisher = {SAGE Publications Sage CA: Los Angeles, CA},\n  url = {https://journals.sagepub.com/doi/full/10.1177/1609406919870075}\n}\n\n@book{datafeminism2020,\n  title = {Data feminism},\n  author = {D'ignazio, Catherine and Klein, Lauren F},\n  year = {2020},\n  publisher = {MIT press},\n  url = {https://mitpress.mit.edu/books/data-feminism}\n}\n\n@article{Tennant2016openaccess,\n  author = {Tennant, Jonathan P. and Waldner, Francois and Jacques, Damien C. and Masuzzo, Paola and Collister, Lauren B. and Hartgerink, Chris. H. J.},\n  title = {The academic, economic and societal impacts of Open Access: an evidence-based review},\n  journal = {F1000Research},\n  volume = {5},\n  pages = {632},\n  year = {2016},\n  month = {Sep},\n  publisher = {F1000Research},\n  doi = {10.12688/f1000research.8460.3}\n}\n\n@article{Piwowar2018stateofOA,\n  author = {Piwowar, H. and Priem, J. and Lariviere, V. and Alperin, J.P. and Matthias, L. and Norlander, B. and Farley, A. and West, J. and Haustein, S},\n  title = {The state of OA: a large-scale analysis of the prevalence and impact of Open Access articles},\n  journal = {PeerJ},\n  volume = {6},\n  pages = {e4375},\n  year = {2018},\n  month = {Feb},\n  publisher = {PeerJ},\n  doi = {10.7717/peerj.4375}\n}\n\n@misc{Dimensions2021openaccesssurpasses,\n  author = {Hook, Daniel},\n  url = {https://www.dimensions.ai/blog/open-access-surpasses-subscription-publication-globally-for-the-first-time/},\n  journal = {Dimensions},\n  year = {2021},\n  month = {Feb}\n}\n\n@misc{elife2020preprints,\n  url = {https://elifesciences.org/for-the-press/a4dc2f54/elife-shifting-to-exclusively-reviewing-preprints},\n  journal = {eLife},\n  publisher = {eLife Sciences Publications, Ltd},\n  year = {2020},\n  month = {Dec}\n}\n\n@misc{ukri2021openaccess,\n  url = {https://www.ukri.org/news/ukri-announces-new-open-access-policy/},\n  journal = {Ukri.org},\n  year = {2021},\n  month = {Aug}\n}\n\n\n@article{Frandsen2010name,\n  doi = {10.1016/j.joi.2010.06.010},\n  url = {https://doi.org/10.1016/j.joi.2010.06.010},\n  year = {2010},\n  month = oct,\n  publisher = {Elsevier {BV}},\n  volume = {4},\n  number = {4},\n  pages = {608--617},\n  author = {Tove Faber Frandsen and Jeppe Nicolaisen},\n  title = {What is in a name? Credit assignment practices in different disciplines},\n  journal = {Journal of Informetrics}\n}\n\n@article{VanPraag2008benefits,\n  doi = {10.1111/j.1468-0335.2007.00653.x},\n  url = {https://doi.org/10.1111/j.1468-0335.2007.00653.x},\n  year = {2008},\n  month = nov,\n  publisher = {Wiley},\n  volume = {75},\n  number = {300},\n  pages = {782--796},\n  author = {C. MIRJAM VAN PRAAG and BERNARD M.S. VAN PRAAG},\n  title = {The Benefits of Being Economics Professor A (rather than Z)},\n  journal = {Economica}\n}\n\n@article{Sharan2021reimagine,\n  author = {Sharan, Malvika},\n  title = {Can we reimagine FAIR for building communities in open science?},\n  journal = {Zenodo},\n  year = {2021},\n  month = {Sep},\n  doi = {10.5281/zenodo.5518163}\n}\n\n@article{Belhajjame-ro-workflow2015,\ntitle = {Using a suite of ontologies for preserving workflow-centric research objects},\njournal = {Journal of Web Semantics},\nvolume = {32},\npages = {16-42},\nyear = {2015},\nissn = {1570-8268},\ndoi = {https://doi.org/10.1016/j.websem.2015.01.003},\nurl = {https://www.sciencedirect.com/science/article/pii/S1570826815000049},\nauthor = {Khalid Belhajjame and Jun Zhao and Daniel Garijo and Matthew Gamble and Kristina Hettne and Raul Palma and Eleni Mina and Oscar Corcho and José Manuel Gómez-Pérez and Sean Bechhofer and Graham Klyne and Carole Goble},\nkeywords = {Research object, Scientific workflow, Preservation, Annotation, Ontologies, Provenance},\nabstract = {Scientific workflows are a popular mechanism for specifying and automating data-driven in silico experiments. A significant aspect of their value lies in their potential to be reused. Once shared, workflows become useful building blocks that can be combined or modified for developing new experiments. However, previous studies have shown that storing workflow specifications alone is not sufficient to ensure that they can be successfully reused, without being able to understand what the workflows aim to achieve or to re-enact them. To gain an understanding of the workflow, and how it may be used and repurposed for their needs, scientists require access to additional resources such as annotations describing the workflow, datasets used and produced by the workflow, and provenance traces recording workflow executions. In this article, we present a novel approach to the preservation of scientific workflows through the application of research objects—aggregations of data and metadata that enrich the workflow specifications. Our approach is realised as a suite of ontologies that support the creation of workflow-centric research objects. Their design was guided by requirements elicited from previous empirical analyses of workflow decay and repair. The ontologies developed make use of and extend existing well known ontologies, namely the Object Reuse and Exchange (ORE) vocabulary, the Annotation Ontology (AO) and the W3C PROV ontology (PROVO). We illustrate the application of the ontologies for building Workflow Research Objects with a case-study that investigates Huntington’s disease, performed in collaboration with a team from the Leiden University Medial Centre (HG-LUMC). Finally we present a number of tools developed for creating and managing workflow-centric research objects.}\n}\n\n@article{Garciasilva2019-research-objects,\ntitle = {Enabling FAIR research in Earth Science through research objects},\njournal = {Future Generation Computer Systems},\nvolume = {98},\npages = {550-564},\nyear = {2019},\nissn = {0167-739X},\ndoi = {https://doi.org/10.1016/j.future.2019.03.046},\nurl = {https://www.sciencedirect.com/science/article/pii/S0167739X18314638},\nauthor = {Andres Garcia-Silva and Jose Manuel Gomez-Perez and Raul Palma and Marcin Krystek and Simone Mantovani and Federica Foglini and Valentina Grande and Francesco {De Leo} and Stefano Salvi and Elisa Trasatti and Vito Romaniello and Mirko Albani and Cristiano Silvagni and Rosemarie Leone and Fulvio Marelli and Sergio Albani and Michele Lazzarini and Hazel J. Napier and Helen M. Glaves and Timothy Aldridge and Charles Meertens and Fran Boler and Henry W. Loescher and Christine Laney and Melissa A. Genazzio and Daniel Crawl and Ilkay Altintas},\nkeywords = {FAIR principles, Research objects, Research infrastructure, Semantic technologies, Earth Science},\nabstract = {Data-intensive science communities are progressively adopting FAIR practices that enhance the visibility of scientific breakthroughs and enable reuse. At the core of this movement, research objects contain and describe scientific information and resources in a way compliant with the FAIR principles and sustain the development of key infrastructure and tools. This paper provides an account of the challenges, experiences and solutions involved in the adoption of FAIR around research objects over several Earth Science disciplines. During this journey, our work has been comprehensive, with outcomes including: an extended research object model adapted to the needs of earth scientists; the provisioning of digital object identifiers (DOI) to enable persistent identification and to give due credit to authors; the generation of content-based, semantically rich, research object metadata through natural language processing, enhancing visibility and reuse through recommendation systems and third-party search engines; and various types of checklists that provide a compact representation of research object quality as a key enabler of scientific reuse. All these results have been integrated in ROHub, a platform that provides research object management functionality to a wealth of applications and interfaces across different scientific communities. To monitor and quantify the community uptake of research objects, we have defined indicators and obtained measures via ROHub that are also discussed herein.}\n}\n\n@article{Dessain2011governance,\n  author = {Dessain, Vincent and Meier, Olivier and Salas, Vicente},\n  title = {Corporate Governance and Ethics: Shareholder Reality, Social Responsibility or Institutional Necessity?},\n  journal = {M@n@gement},\n  volume = {11},\n  number = {2},\n  pages = {65--79},\n  year = {2011},\n  month = {feb},\n  issn = {1286-4692},\n  publisher = {AIMS},\n  url = {https://www.cairn.info/revue-management-2008-2-page-65.htm}\n}\n\n@misc{Freeman2012Stuctureless,\n  title = {The Tyranny of Stuctureless},\n  year = {2012},\n  month = {jan},\n  note = {Online; accessed 19. May 2022},\n  url = {https://www.jofreeman.com/joreen/tyranny.htm}\n}\n\n@article{Nielsen2013biosafety,\n    doi = {10.1371/journal.pbio.1001499},\n    author = {Nielsen, Kaare M.},\n    journal = {PLOS Biology},\n    publisher = {Public Library of Science},\n    title = {Biosafety Data as Confidential Business Information},\n    year = {2013},\n    month = {03},\n    volume = {11},\n    url = {https://doi.org/10.1371/journal.pbio.1001499},\n    pages = {1-6},\n    abstract = {Removal of confidentiality claims on biosafety data is necessary to adhere to standard scientific procedures of quality assurance, to increase transparency, to minimize impacts of conflicts of interests, and ultimately to improve public confidence in GMOs.},\n    number = {3},\n\n}\n\n@article{tulloch2018decision,\n  title = {A decision tree for assessing the risks and benefits of publishing biodiversity data},\n  volume = {2},\n  issn = {2397-334X},\n  url = {https://doi.org/10.1038/s41559-018-0608-1},\n  doi = {10.1038/s41559-018-0608-1},\n  number = {8},\n  journal = {Nature Ecology \\& Evolution},\n  author = {Tulloch, Ayesha I. T. and Auerbach, Nancy and Avery-Gomm, Stephanie and Bayraktarov, Elisa and Butt, Nathalie and Dickman, Chris R. and Ehmke, Glenn and Fisher, Diana O. and Grantham, Hedley and Holden, Matthew H. and Lavery, Tyrone H. and Leseberg, Nicholas P. and Nicholls, Miles and O’Connor, James and Roberson, Leslie and Smyth, Anita K. and Stone, Zoe and Tulloch, Vivitskaia and Turak, Eren and Wardle, Glenda M. and Watson, James E. M.},\n  month = aug,\n  year = {2018},\n  pages = {1209--1217},\n}\n\n@article{Belhajjame2015RO,\n  author = {Belhajjame, Khalid and Zhao, Jun and Garijo, Daniel and Gamble, Matthew and Hettne, Kristina and Palma, Raul and Mina, Eleni and Corcho, Oscar and G{\\ifmmode\\acute{o}\\else\\'{o}\\fi}mez-P{\\ifmmode\\acute{e}\\else\\'{e}\\fi}rez, Jos{\\ifmmode\\acute{e}\\else\\'{e}\\fi} Manuel and Bechhofer, Sean and others},\n  title = {Using a suite of ontologies for preserving workflow-centric research objects},\n  journal = {Journal of Web Semantics},\n  volume = {32},\n  pages = {16--42},\n  year = {2015},\n  month = may,\n  issn = {1570-8268},\n  publisher = {Elsevier},\n  doi = {10.1016/j.websem.2015.01.003}\n}\n\n@Article{desmedtetal20202-FAIR-digitalobjects,\nAUTHOR = {De Smedt, Koenraad and Koureas, Dimitris and Wittenburg, Peter},\nTITLE = {FAIR Digital Objects for Science: From Data Pieces to Actionable Knowledge Units},\nJOURNAL = {Publications},\nVOLUME = {8},\nYEAR = {2020},\nNUMBER = {2},\nARTICLE-NUMBER = {21},\nURL = {https://www.mdpi.com/2304-6775/8/2/21},\nISSN = {2304-6775},\nABSTRACT = {Data science is facing the following major challenges: (1) developing scalable cross-disciplinary capabilities, (2) dealing with the increasing data volumes and their inherent complexity, (3) building tools that help to build trust, (4) creating mechanisms to efficiently operate in the domain of scientific assertions, (5) turning data into actionable knowledge units and (6) promoting data interoperability. As a way to overcome these challenges, we further develop the proposals by early Internet pioneers for Digital Objects as encapsulations of data and metadata made accessible by persistent identifiers. In the past decade, this concept was revisited by various groups within the Research Data Alliance and put in the context of the FAIR Guiding Principles for findable, accessible, interoperable and reusable data. The basic components of a FAIR Digital Object (FDO) as a self-contained, typed, machine-actionable data package are explained. A survey of use cases has indicated the growing interest of research communities in FDO solutions. We conclude that the FDO concept has the potential to act as the interoperable federative core of a hyperinfrastructure initiative such as the European Open Science Cloud (EOSC).},\nDOI = {10.3390/publications8020021}\n}\n\n@article{RossHellauer2017openreview,\n  title = {Survey on open peer review: Attitudes and experience amongst editors, authors and reviewers},\n  volume = {12},\n  url = {https://doi.org/10.1371/journal.pone.0189311},\n  doi = {10.1371/journal.pone.0189311},\n  number = {12},\n  journal = {PLoS ONE},\n  author = {Ross-Hellauer, Tony and Deppe, Arvin and Schmidt, Birgit},\n  month = dec,\n  year = {2017},\n  pages = {1--28},\n}\n\n@article{Bravo2019openreview,\n  title = {The effect of publishing peer review reports on referee behavior in five scholarly journals},\n  volume = {10},\n  url = {https://doi.org/10.1038/s41467-018-08250-2},\n  doi = {10.1038/s41467-018-08250-2},\n  number = {322},\n  journal = {Nature Communications},\n  author = {Bravo, Giangiacomo and Grimaldo, Francisco and López-Inesta, Emilia and Mehmani, Bahar and Squazzoni, Flaminio},\n  month = jan,\n  year = {2019},\n  pages = {1--8},\n}\n\n@article{Fox2021openreview,\n  title = {Which peer reviewers voluntarily reveal their identity to authors? Insights into the consequences of open-identities peer review.},\n  volume = {288},\n  url = {https://doi.org/10.1098/rspb.2021.1399},\n  doi = {10.1098/rspb.2021.1399},\n  journal = {Proceedings Roayl Society B},\n  author = {Fox, Charles W.},\n  month = jan,\n  year = {2021},\n  pages = {20211399},\n}\n\n@article{Horbach2022openreview,\n  title = {Sunlight not shadows: Double-anonymized peer review is not the progressive answer to status bias},\n  url = {https://doi.org/10.31219/osf.io/fqb5c},\n  doi = {10.31219/osf.io/fqb5c},\n  author = {Horbach, Serge P.J.M. and Ross-Hellauer, Tony and Waltman, Ludo},\n  month = oct,\n  year = {2022},\n  pages = {1--3},\n  journal = {Open Science Framework Preprint},\n}\n\n@article{Petre2014codereview,\n  title = {Code Review For and By Scientists},\n  url = {https://doi.org/10.48550/arXiv.1407.5648},\n  doi = {10.48550/arXiv.1407.5648},\n  author = {Petre, Marian and Wilson, Greg},\n  month = jul,\n  year = {2014},\n  pages = {1--4},\n}\n\n@article{Tsai2016qualdata,\n  title = {Promises and pitfalls of data sharing in qualitative research},\n  url = {http://dx.doi.org/10.1016/j.socscimed.2016.08.004},\n  doi = {10.1016/j.socscimed.2016.08.004},\n  author = {Tsai, Alexander C. and Kohrt, Brandon A. and Matthews, Lynn T. and Betancourt, Theresa S. and Lee, Jooyoung K. and Papachristos, Andrew V. and Weiser, Sheri D. and Dworkin, Shari L.Petre, Marian and Wilson, Greg},\n  month = jul,\n  year = {2016},\n  pages = {191--198},\n  journal = {Social Science & Medicine},\n}\n\n@book{brown2017emergent,\n  author = {brown, adrienne maree},\n  title = {Emergent Strategy Shaping Change, Changing Worlds},\n  year = {2017},\n  isbn = {9781849352604},\n  publisher = {Ak Press},\n  url = {https://www.akpress.org/emergentstrategy.html}\n}\n\n@book{Bridges2017transitions,\n  author = {Bridges, William and Bridges, Susan},\n  title = {Managing Transitions},\n  year = {2017},\n  isbn = {9780738219653},\n  publisher = {John Murray Press},\n  url = {https://wmbridges.com/about/what-is-transition/}\n}\n\n@book{Kotter2012change,\n  author = {Kotter, John P},\n  title = {Leading Change},\n  year = {2012},\n  isbn = {9781422186435},\n  publisher = {Harvard Business Review Press},\n  url = {https://www.kotterinc.com/bookshelf/leading-change/}\n}\n\n@book{Worthy2021change,\n  author = {Worthy,  Cassandra},\n  title = {Change Enthusiasm How to Harness the Power of Emotion for Leadership and Success},\n  year = {2021},\n  isbn = {9781401961770},\n  publisher = {Hay House Business},\n  url = {https://cassandraworthy.com/meeting-professionals/}\n}\n\n@article{Kent2022change,\n  title = {Recommendations for empowering early career researchers to improve research culture and practice},\n  volume = {20},\n  url = {https://dx.plos.org/10.1371/journal.pbio.3001680},\n  doi = {10.1371/journal.pbio.3001680},\n  number = {7},\n  journal = {PLoS Biology},\n  author = {Kent, Brianne A. and Holman, Constance and Amoako, Emmanuella and Antonietti, Alberto and Azam, James M. and Ballhausen, Hanne and Bediako, Yaw and Belasen, Anat M. and Carneiro, Clarissa F. D. and Chen, Yen-Chung and Compeer, Ewoud B. and Connor, Chelsea A. C. and Crüwell, Sophia and Debat, Humberto and Dorris, Emma and Ebrahimi, Hedyeh and Erlich, Jeffrey C. and Fernández-Chiappe, Florencia and Fischer, Felix and Gazda, Małgorzata Anna and Glatz, Toivo and Grabitz, Peter and Heise, Verena and Kent, David G. and Lo, Hung and McDowell, Gary and Mehta, Devang and Neumann, Wolf-Julian and Neves, Kleber and Patterson, Mark and Penfold, Naomi C. and Piper, Sophie K. and Puebla, Iratxe and Quashie, Peter K. and Quezada, Carolina Paz and Riley, Julia L. and Rohmann, Jessica L. and Saladi, Shyam and Schwessinger, Benjamin and Siegerink, Bob and Stehlik, Paulina and Tzilivaki, Alexandra and Umbers, Kate D. L. and Varma, Aalok and Walavalkar, Kaivalya and de Winde, Charlotte M. and Zaza, Cecilia and Weissgerber, Tracey L.},\n  language = {en},\n  year = {2022},\n  pages = {e3001680}\n}\n\n@article{Henry2021RDM,\n  title = {Data Management for Researchers: 8 Principles of Good Data Management},\n  url = {https://doi.org/10.31234/osf.io/5tmfe},\n  doi = {10.31234/osf.io/5tmfe},\n  author = {Henry, Teague R.},\n  year = {2021},\n  journal = {Open Science Framework}\n}\n\n@article{Borer2009RDM,\n  title = {Some Simple Guidelines for Effective Data Management},\n  url = {https://doi.org/10.1890/0012-9623-90.2.205},\n  doi = {10.1890/0012-9623-90.2.205},\n  author = {Borer, Elizabeth T. and Seabloom, Eric W. and Jones, Matthew B. and Schildhauer, Mark},\n  year = {2009},\n  journal = {The Bulletin of the Ecological Society of America}\n}\n\n@misc{Larsen2021Documentation,\n  title = {Dataset for \"Quantification of Magnetic Resonance Spectroscopy data using a combined reference: Application in typically developing infants},\n  url = {https://doi.org/10.13012/B2IDB-3548139_V1},\n  doi = {10.13012/B2IDB-3548139_V1},\n  author = {Larsen, Ryan J. and Gagoski, Borjan and Morton, Sarah U. and Ou, Yangming and Vyas, Rutvi and Litt, Jonathanand Grant, P. Ellen and Sutton, Bradley P.},\n  year = {2021},\n  journal = {Illinois Data Bank}\n}\n\n@article{Wickham2014tidydata,\n  title = {Tidy Data},\n  url = {https://doi.org/10.18637/jss.v059.i10},\n  doi = {10.18637/jss.v059.i10},\n  author = {Wickham, Hadley},\n  year = {2014},\n  journal = {Journal of Statistical Software}\n}\n\n@article{Borghi2022checklist,\n  title = {Promoting Open Science Through Research Data Management},\n  volume = {4},\n  url = {https://doi.org/10.1162/99608f92.9497f68e},\n  doi = {10.1162/99608f92.9497f68e},\n  author = {Borghi, John and Van Gulick, Ana},\n  month = jul,\n  year = {2022},\n  journal = {Harvard Data Science Review},\n}\n\n@misc{anaconda2020sods,\n  author = {Anaconda, Inc.},\n  title = {2020 STATE OF DATA SCIENCE},\n  year = {2020},\n  pages = {11-12},\n  url = {https://know.anaconda.com/rs/387-XNW-688/images/Anaconda-SODS-Report-2020-Final.pdf}\n}\n\n@misc{stewart2022table,\n  author = {Stewart, Balint and Oliver, Emily and McGrath-Lone, Louise},\n  title = {What is ‘research-ready’ data?},\n  year = {2022},\n  url = {https://www.adruk.org/fileadmin/uploads/adruk/Documents/What_is_research_ready_data__A_roundtable_report_June_2022.pdf}\n}\n\n@article{mons2017fair,\n  author = {Mons, Barend and Neylon, Cameron and Velterop, Jan and Dumontier, Michel and Bonino da Silva Santos, Luiz Olavo and Wilkinson, Mark},\n  title = {Cloudy, increasingly FAIR; Revisiting the FAIR Data guiding principles for the European Open Science Cloud},\n  journal = {Information Services & Use},\n  volume = {37},\n  pages = {1-8},\n  year = {2017},\n  month = {02},\n  doi = {10.3233/ISU-170824}\n}\n\n@article{Levenstein2018sharing,\n  title = {Data: Sharing Is Caring},\n  url = {https://doi.org/10.1177/2515245918758319},\n  doi = {10.1177/2515245918758319},\n  author = {Levenstein, Margaret C. and Lyle Jared A.},\n  year = {2018},\n  journal = {Advances in Methods and Practices in Psychological Science}\n}\n\n@misc{boa2023twitter,\n  author = {Business of Apps},\n  title = {Twitter Revenue and Usage Statistics 2023},\n  year = {2023},\n  url = {https://www.businessofapps.com/data/twitter-statistics}\n}\n\n@article{Rouder2019minimizing,\n  doi = {10.1177/2515245918801915},\n  url = {https://doi.org/10.1177/2515245918801915},\n  year = {2019},\n  month = jan,\n  publisher = {SAGE Publications},\n  volume = {2},\n  number = {1},\n  pages = {3--11},\n  author = {Jeffrey N. Rouder and Julia M. Haaf and Hope K. Snyder},\n  title = {Minimizing Mistakes in Psychological Science},\n  journal = {Advances in Methods and Practices in Psychological Science}\n}\n\n@article{Liboiron2017equity,\n  doi = {10.28968/cftt.v3i2.28850},\n  url = {https://doi.org/10.28968/cftt.v3i2.28850},\n  year = {2017},\n  month = oct,\n  publisher = {University of Toronto Libraries},\n  volume = {3},\n  number = {2},\n  pages = {1--17},\n  author = {Max Liboiron and Justine Ammendolia and Katharine Winsor and Alex Zahara and Hillary Bradshaw and Jessica Melvin and Charles Mather and Natalya Dawe and Emily Wells and France Liboiron and Bojan Furst and Coco Coyle and Jacquelyn Saturno and Melissa Novacefski and Sam Westscott and Grandmother Liboiron},\n  title = {Equity in Author Order: A Feminist Laboratory's Approach},\n  journal = {Catalyst: Feminism,  Theory,  Technoscience}\n}\n\n@misc{Chawla2018assigning,\n  title = {Assigning Authorship for Research Papers Can Be Tricky. These Approaches Can Help},\n  author = {Chawla, Dalmeet Singh},\n  year = {2018},\n  month = dec,\n  journal = {Science},\n  url = {https://www.science.org/content/article/assigning-authorship-research-papers-can-be-tricky-these-approaches-can-help},\n  urldate = {2023-04-06},\n  abstract = {From prioritizing equity and consensus to highly quantitative systems, researchers find ways to assign authorship fairly and avert disputes},\n  langid = {english}\n}\n\n@book{Lencioni2012five,\n  title = {The Five Dysfunctions of a Team: Team Assessment},\n  shorttitle = {The Five Dysfunctions of a Team},\n  author = {Lencioni, Patrick},\n  year = {2012},\n  publisher = {Pfeiffer},\n  address = {San Francisco, Calif},\n  url = {https://www.worldcat.org/title/794274430},\n  abstract = {The primary purpose of the assessment is to provide a sense of your team's unique strengths and areas for improvement},\n  isbn = {978-1-118-12730-8},\n  langid = {english},\n  annotation = {OCLC: 794274430}\n}\n\n@article{Hernandez2021improving,\n  doi = {10.1101/2021.12.08.471870},\n  url = {https://doi.org/10.1101/2021.12.08.471870},\n  year = {2021},\n  month = dec,\n  journal = {bioRxiv},\n  publisher = {Cold Spring Harbor Laboratory},\n  author = {Soleil Hernandez and Raymond Mumme and Laurence Court and Daniel El Basha and Skylar Gay and Barbara Marquez and Yao Xiao and Kai Huang and Hana Baroudi and Wenhua Cao and Carlos Cardenas and Raphael Douglas and Jack Duryea and Zaphanlene Kaffey and Deborah Mann and Kelly Nealon and Tucker Netheron and Callistus Nguyen and Kyuhak Oh and Adenike Olanrewaju and Carlos Sjogreen and DJ Rhee and Jinzhong Yang and Cenji Yu and Lifei Zhang and Yao Zhao and Hamid Ziyaee and Mary Gronberg},\n  title = {Improving Lab Culture through Self-Assessment: A Case Study}\n}\n\n@article{Norris2018health,\n  doi = {10.1038/d41586-018-05146-5},\n  url = {https://doi.org/10.1038/d41586-018-05146-5},\n  year = {2018},\n  month = may,\n  publisher = {Springer Science and Business Media LLC},\n  volume = {557},\n  number = {7705},\n  pages = {302--304},\n  author = {David Norris and Ulrich Dirnagl and Michael J. Zigmond and Katherine Thompson-Peer and Tracy T. Chow},\n  title = {Health tips for research groups},\n  journal = {Nature}\n}\n\n@article{Andreev2022welcome,\n  doi = {10.7554/elife.79627},\n  url = {https://doi.org/10.7554/elife.79627},\n  year = {2022},\n  month = {may},\n  publisher = {eLife Sciences Publications,  Ltd},\n  volume = {11},\n  author = {Andrey Andreev and Valerie Komatsu and Paula Almiron and Kasey Rose and Alexandria Hughes and Maurice Y Lee},\n  title = {Welcome to the lab},\n  journal = {eLife}\n}\n\n@article{Maestre2019ten,\n  doi = {10.1371/journal.pcbi.1006914},\n  url = {https://doi.org/10.1371/journal.pcbi.1006914},\n  year = {2019},\n  month = {apr},\n  publisher = {Public Library of Science (PLoS)},\n  volume = {15},\n  number = {4},\n  pages = {e1006914},\n  author = {Fernando T. Maestre},\n  editor = {Fran Lewitter},\n  title = {Ten simple rules towards healthier research labs},\n  journal = {PLOS Computational Biology}\n}\n\n@article{Greene2021safety,\n  doi = {10.31223/x53p6h},\n  url = {https://doi.org/10.31223/x53p6h},\n  year = {2021},\n  month = aug,\n  journal = {EarthArxiv},\n  publisher = {California Digital Library (CDL)},\n  author = {Sarah Greene and Gwen Antell and Jake Atterby and Rehemat Bhatia and Emma Dunne and Sam Giles and Sebastian Groh and Emma Hanson and Jason Hilton and Hazel Knight and Peter Kraftl and Esme Morgan and Isobel Rhodes and Francisca Rockey and Shivani Singh and Carl Stevenson and Simiao Sun and Bridget Warren and James Wheeley and Kweku Yamoah},\n  title = {Safety and Belonging in the Field: A Checklist for Educators}\n}\n\n@article{Chaudhary2020ten,\n  doi = {10.1371/journal.pcbi.1008210},\n  url = {https://doi.org/10.1371/journal.pcbi.1008210},\n  year = {2020},\n  month = oct,\n  publisher = {Public Library of Science (PLoS)},\n  volume = {16},\n  number = {10},\n  pages = {e1008210},\n  author = {V. Bala Chaudhary and Asmeret Asefaw Berhe},\n  editor = {Russell Schwartz},\n  title = {Ten simple rules for building an antiracist lab},\n  journal = {PLOS Computational Biology}\n}\n\n@article{Pike2022simple,\n  doi = {10.1162/jocn_a_01928},\n  url = {https://doi.org/10.1162/jocn_a_01928},\n  year = {2022},\n  month = dec,\n  publisher = {MIT Press},\n  volume = {35},\n  number = {1},\n  pages = {44--48},\n  author = {Alexandra C. Pike and Kathryn E. Atherton and Yannik Bauer and Ben M. Crittenden and Freek van Ede and Sam Hall-McMaster and Alexander H. von Lautz and Paul S. Muhle-Karbe and Alexandra M. Murray and Nicholas E. Myers and Frida Printzlau and Ilenia Salaris and Eelke Spaak and Lev Tankelevitch and Darinka Trubutschek and Dante Wasmuht and MaryAnn P. Noonan},\n  title = {10 Simple Rules for a Supportive Lab Environment},\n  journal = {Journal of Cognitive Neuroscience}\n}\n\n@article{RuedasGracia2022ten,\n  doi = {10.1371/journal.pcbi.1010688},\n  url = {https://doi.org/10.1371/journal.pcbi.1010688},\n  year = {2022},\n  month = dec,\n  publisher = {Public Library of Science (PLoS)},\n  volume = {18},\n  number = {12},\n  pages = {e1010688},\n  author = {Nidia Ruedas-Gracia and Crystal M. Botham and Amber R. Moore and Courtney Pena},\n  title = {Ten simple rules for creating a sense of belonging in your research group},\n  journal = {PLOS Computational Biology}\n}\n\n@online{santos2022framework,\n  title = {A Framework for the Management of Research and Innovation Projects in Academic Settings},\n  author = {Santos,José M. R. C. A. and Varela,C. and Martínez-Galán,E},\n  date = {10-21-2022},\n  year = {2022},\n  url = {https://www.srainternational.org/blogs/srai-jra2/2022/10/21/a-framework-for-the-management-of-research-and-inn},\n  urldate = {2025-05-11},\n  langid = {english},\n  organization = {Society of Research Administrators International},\n  annotation = {https://www.srainternational.org/blogs/srai-jra2/2022/10/21/a-framework-for-the-management-of-research-and-inn}\n}\n\n@article{Rillig2022ten,\n  doi = {10.1371/journal.pcbi.1010673},\n  url = {https://doi.org/10.1371/journal.pcbi.1010673},\n  year = {2022},\n  month = dec,\n  publisher = {Public Library of Science (PLoS)},\n  volume = {18},\n  number = {12},\n  pages = {e1010673},\n  author = {Matthias C. Rillig},\n  title = {Ten simple rules for how you can help make your lab a better place as a graduate student or postdoc},\n  journal = {PLOS Computational Biology}\n}\n\n@article{lannelongue2021ten,\n    doi = {10.1371/journal.pcbi.1009324},\n    author = {Lannelongue, Loïc AND Grealey, Jason AND Bateman, Alex AND Inouye, Michael},\n    journal = {PLOS Computational Biology},\n    publisher = {Public Library of Science},\n    title = {Ten simple rules to make your computing more environmentally sustainable},\n    year = {2021},\n    month = {09},\n    volume = {17},\n    url = {https://doi.org/10.1371/journal.pcbi.1009324},\n    pages = {1-8},\n    abstract = {null},\n    number = {9},\n\n}\n\n@article{strubell2019nlpenergy,\n  author       = {Emma Strubell and\n                  Ananya Ganesh and\n                  Andrew McCallum},\n  title        = {Energy and Policy Considerations for Deep Learning in {NLP}},\n  journal      = {CoRR},\n  volume       = {abs/1906.02243},\n  year         = {2019},\n  url          = {http://arxiv.org/abs/1906.02243},\n  eprinttype    = {arXiv},\n  eprint       = {1906.02243},\n  timestamp    = {Thu, 13 Jun 2019 13:36:00 +0200},\n  biburl       = {https://dblp.org/rec/journals/corr/abs-1906-02243.bib},\n  bibsource    = {dblp computer science bibliography, https://dblp.org}\n}\n\n@article{Schwartz2020greenai,\nauthor = {Schwartz, Roy and Dodge, Jesse and Smith, Noah A. and Etzioni, Oren},\ntitle = {Green AI},\nyear = {2020},\nissue_date = {December 2020},\npublisher = {Association for Computing Machinery},\naddress = {New York, NY, USA},\nvolume = {63},\nnumber = {12},\nissn = {0001-0782},\nurl = {https://doi.org/10.1145/3381831},\ndoi = {10.1145/3381831},\nabstract = {Creating efficiency in AI research will decrease its carbon footprint and increase its inclusivity as deep learning study should not require the deepest pockets.},\njournal = {Commun. ACM},\nmonth = {nov},\npages = {54–63},\nnumpages = {10}\n}\n\n@article{Portegies2020ecologicalimpact,\n  doi = {10.1038/s41550-020-1208-y},\n  url = {https://doi.org/10.1038%2Fs41550-020-1208-y},\n  year = 2020,\n  month = {sep},\n  publisher = {Springer Science and Business Media {LLC}},\n  volume = {4},\n  number = {9},\n  pages = {819--822},\n  author = {Simon Portegies Zwart},\n  title = {The ecological impact of high-performance computing in astrophysics},\n  journal = {Nature Astronomy}\n}\n\n@article{Grealey2022carbonfootprint,\n    author = {Grealey, Jason and Lannelongue, Loïc and Saw, Woei-Yuh and Marten, Jonathan and Méric, Guillaume and Ruiz-Carmona, Sergio and Inouye, Michael},\n    title = \"{The Carbon Footprint of Bioinformatics}\",\n    journal = {Molecular Biology and Evolution},\n    volume = {39},\n    number = {3},\n    year = {2022},\n    month = {02},\n    issn = {1537-1719},\n    doi = {10.1093/molbev/msac034},\n    url = {https://doi.org/10.1093/molbev/msac034},\n    note = {msac034},\n    eprint = {https://academic.oup.com/mbe/article-pdf/39/3/msac034/42692776/msac034.pdf},\n}\n\n@misc{Schoonhoven2022goinggreen,\n      title={Going green: optimizing GPUs for energy efficiency through model-steered auto-tuning},\n      author={Richard Schoonhoven and Bram Veenboer and Ben van Werkhoven and Kees Joost Batenburg},\n      year={2022},\n      eprint={2211.07260},\n      archivePrefix={arXiv},\n      primaryClass={cs.DC}\n}\n\n@Article{Stachowski2020autotuning,\n  author       = {Matthias Stachowski and Alexander Fiebig and Thomas Rauber},\n  year         = {2020},\n  journal      = {The Journal of Supercomputing},\n  title        = {Autotuning based on frequency scaling toward energy efficiency of blockchain algorithms on graphics processing units},\n  doi          = {10.1007/s11227-020-03263-5},\n  number       = {1},\n  pages        = {263--291},\n  volume       = {77},\n  publisher    = {Springer Science and Business Media {LLC}},\n}\n\n@misc{nhs2023safeguarding,\n  author = {NHS England},\n  title = {Safeguading},\n  year = {2023},\n  url = {https://www.england.nhs.uk/safeguarding/about/}\n}\n\n@misc{DSG2020Roche,\n  doi = {http://doi.org/10.5281/zenodo.3876989},\n  year = {2020},\n  author = {Data Study Group Team},\n  title = {Data Study Group Final Report - Roche},\n  url = {https://www.turing.ac.uk/news/publications/data-study-group-final-report-roche}\n}\n\n@article{Bonvoisin2018,\n  doi = {10.1016/j.procir.2018.08.306},\n  url = {https://doi.org/10.1016/j.procir.2018.08.306},\n  year = {2018},\n  publisher = {Elsevier {BV}},\n  volume = {78},\n  pages = {388--393},\n  author = {J{\\'{e}}r{\\'{e}}my Bonvoisin and Robert Mies},\n  title = {Measuring Openness in Open Source Hardware with the Open-o-Meter},\n  journal = {Procedia {CIRP}}\n}\n\n@misc{nihr2021differentexperiences,\n  year = {2021},\n  author = {National Institude for Health and Care Research},\n  title = {Different experiences: A framework for considering who might be involved in research},\n  url = {https://www.nihr.ac.uk/documents/different-experiences-a-framework-for-considering-who-might-be-involved-in-research/27387},\n    urldate = {2023-11-10}\n}\n\n@misc{camden2022preferredlanguage,\n  year = {2022},\n  month = {Jun},\n  author = {Camden Coalition},\n  title = {Understanding preferred language for people with lived experience},\n  url = {https://camdenhealth.org/blog/understanding-preferred-language-for-people-with-lived-experience/},\n    urldate = {2023-11-10}\n}\n\n@misc{HDRUK2023ppie,\n  year = {2023},\n  author = {Health Data Research UK},\n  title = {Involving and engaging patients and the public},\n  url = {https://www.hdruk.ac.uk/about-us/involving-and-engaging-patients-and-the-public/},\n    urldate = {2023-11-09}\n}\n\n@misc{academiaindustryguide,\n  doi = {10.5281/zenodo.2615365},\n  year = {2019},\n  author = {Abuja, Peter M. and Carapina, Tamara and de Kort, Martin and\n  Raess, Michael and Tieken, Chris and Wagstaff, Nigel},\n  title = {Academia - Industry Collaboration Best Practices Guide},\n  url = {https://eatris.eu/wp-content/uploads/2019/12/CORBEL_Academia_Industry_Collaboration_Best_Practices_Guide.pdf}\n}\n\n@article{VidalValero2023twitter,\n  doi = {10.1038/d41586-023-02554-0},\n  url = {https://doi.org/10.1038/d41586-023-02554-0},\n  year = {2023},\n  month = {08},\n  publisher = {Springer Science and Business Media {LLC}},\n  volume = {620},\n  number = {7974},\n  pages = {482--484},\n  author = {Myriam Vidal Valero},\n  title = {Thousands of scientists are cutting back on {T}witter, seeding angst and uncertainty},\n  journal = {Nature}\n}\n\n@article{Hiltzik2023twitter,\n  url = {https://www.latimes.com/business/story/2023-08-25/column-scientists-used-to-love-twitter-thanks-to-elon-musk-theyre-giving-up-on-it},\n  year = {2023},\n  month = {08},\n  publisher = {The Los Angeles Times},\n  author = {Hiltzik, Michael},\n  title = {Scientists used to love {T}witter. Thanks to {E}lon {M}usk, they’re giving up on it},\n  journal = {The Los Angeles Times}\n}\n\n@article{Briney2020dmp,\n  doi = {10.3897/rio.6.e56508},\n  url = {https://doi.org/10.3897/rio.6.e56508},\n  year = {2020},\n  author = {Briney, Kristin A. and Coates, Heather and Goben, Abigail},\n  title = {Foundational Practices of Research Data Management},\n  journal = {Research Ideas and Outcomes}\n}\n\n@article{Hart2016dmp,\n  doi = {10.1371/journal.pcbi.1005097},\n  url = {https://doi.org/10.1371/journal.pcbi.1005097},\n  year = {2016},\n  author = {Hart, Edmund M. and Barmby, Pauline and LeBauer, David and Michonneau, Francois and Mount, Sarah and Mulrooney, Patrick and Poisot, Timothee and Woo, Kara H. and Zimmerman, Naupake and Hollister, Jeffrey W.},\n  title = {Ten Simple Rules for Digital Data Storage},\n  journal = {PLoS Comput Biology}\n}\n\n@article{Michener2015dmp,\n  doi = {10.1371/journal.pcbi.1004525},\n  url = {https://doi.org/10.1371/journal.pcbi.1004525},\n  year = {2015},\n  author = {Michener, William K.},\n  title = {Ten Simple Rules for Creating a Good Data Management Plan},\n  journal = {PLoS Comput Biology}\n}\n\n@book{Briney2015dmp,\n  author = {Briney, Kristin},\n  title = {Data Management for Researchers : Organize, maintain and share your data for research success},\n  year = {2015},\n  isbn = {978-1784270117},\n  publisher = {Pelagic Publishing},\n  url = {https://pelagicpublishing.com/products/data-management-for-researchers-briney}\n}\n\n@article{Lin2020trust,\n  doi = {10.1038/s41597-020-0486-7},\n  url = {https://doi.org/10.1038/s41597-020-0486-7},\n  year = {2020},\n  author = {Lin, Dawei and Crabtree, Jonathan and Dillo, Ingrid and Downs, Robert R. and Edmunds, Rorie and Giaretta, David and De Giusti, Marisa and L'Hours, Herve and Hugo, Wim and Jenkyns, Reyna and Khodiya, Varsha and Martone, Maryann E. and Mokrane, Mustapha and Navale, Vivek and Petters, Jonathan and Sierman, Barbara and Sokolova, Dina V. and Stockhause, Martina and Westbrook, John},\n  title = {The TRUST Principles for digital repositories},\n  journal = {Scientific Data}\n}\n\n@article{Lannelongue2023greener,\n  doi = {10.1038/s43588-023-00461-y},\n  url = {https://doi.org/10.1038/s43588-023-00461-y},\n  year = {2023},\n  author = {Lannelongue, Loic and Aronson, Hans-Erik G. and Bateman, Alex and Birney, Ewan and Caplan, Talia and Juckes, Martin and McEntyre, Johanna and Morris, Andrew D. and Reilly, Gerry and Inouye, Michael},\n  title = {GREENER principles for environmentally sustainable computational science},\n  journal = {Nature Computational Science}\n}\n\n@article{Buchanan2021dictionaries,\n  doi = {10.1177/2515245920928007},\n  url = {https://doi.org/10.1177/2515245920928007},\n  year = {2021},\n  author = {Buchanan, Erin M. and Crain, Sarah E. and Cunningham, Ari, L. and Johnson, Hannah R. and Stash, Hannah and Papadatou-Pastou, Marietta and Isager, Peder M.},\n  title = {Getting Started Creating Data Dictionaries: How to Create a Shareable Data Set},\n  journal = {Advances in Methods and Practices in Psychological Science}\n}\n\n@article{Colon2023accessibility,\n  doi = {10.31274/jlsc.15449},\n  url = {https://doi.org/10.31274/jlsc.15449},\n  year = {2023},\n  author = {Colon, Randy and Goben, Abigail and Karcher, Sebastian},\n  title = {Actually Accessible Data: An Update and a Call to Action},\n  journal = {Journal of Librarianship and Scholarly Communication}\n}\n\n@article{Gregory2018finddata,\n  doi = {10.1371/journal.pcbi.1006038},\n  url = {https://doi.org/10.1371/journal.pcbi.1006038},\n  year = {2018},\n  author = {Gregory, Kathleen and Khalsa, Siri Jodha and Michener, William, K. and Psomopoulos, Fotis E. and de Waard, Anita and Wu, Mingfang},\n  title = {Eleven quick tips for finding research data},\n  journal = {PLOS}\n}\n\n@article{Yenni2018workflow,\n  doi = {10.1101/344804},\n  url = {https://doi.org/10.1101/344804},\n  year = {2018},\n  author = {Yenni, Glenda M. and Christensen, Erica M. and Bledsoe, Ellen K and Supp, Sarah R. and Diaz, Renata M. and White, Ethan P. and Ernest, S.K. Morgan},\n  title = {Developing a modern data workflow for evolving data},\n  journal = {bioRxiv}\n}\n\n@article{Barbrow2017librarians,\n  doi = {10.5860/crln.78.5.274},\n  url = {https://doi.org/10.5860/crln.78.5.274},\n  year = {2017},\n  author = {Barbrow, Sarah and Brush, Denise and Goldman, Julie},\n  title = {Research data management and services: Resources for novice data librarians},\n  journal = {College & Research Libraries News}\n}\n\n@book{Wilke2019dataviz,\n  author = {Wilke, Claus},\n  title = {Fundamentals of Data Visualization: A Primer on Making Informative and Compelling Figures},\n  year = {2019},\n  isbn = {978-1492031086},\n  publisher = {O'Reilly Media},\n  url = {https://clauswilke.com/dataviz/}\n}\n\n@book{Healy2018dataviz,\n  author = {Healy, Kieran},\n  title = {Data Visualization: A practical introduction},\n  year = {2018},\n  isbn = {978-0691181622},\n  publisher = {Princeton University Press},\n  url = {https://socviz.co/}\n}\n\n@article{Jambor2021dataviz,\n  doi = {10.1371/journal.pbio.3001161},\n  url = {https://doi.org/10.1371/journal.pbio.3001161},\n  year = {2021},\n  author = {Jambor, Helena and Antonietti, Alberto and Alicea, Bradly and Audisio, Tracy L. and Auer, Susann and Bhardway, Vivek and Burgess, Steven J. and Ferling, Iuliia and Gazda, Malgorzata A. and Hoeppner, Luke H. and Ilangovan, Vinodh and Lo, Hung and Olson, Mischa and Mohamed, Salem Yousef and Sarabipour, Sarvenaz and Varma, Aalok and Walavalkar, Kaivalya and Wissink, Erin M. and Weissgerber, Tracey L.},\n  title = {Creating clear and informative image-based figures for scientific publications},\n  journal = {PLOS Biology}\n}\n\n@article{Kanza2017eln,\n  doi = {10.1186/s13321-017-0221-3},\n  url = {https://doi.org/10.1186/s13321-017-0221-3},\n  year = {2017},\n  author = {Kanza, Samantha and Willoughby, Cerys and Gibbins, Nicholas and Whitby, Richard and Frey, Jeremy Graham and Erjavec, Jana and Zupancic, Klemen and Hren, Matjaz and Kovac, Katarina},\n  title = {Electronic lab notebooks: can they replace paper?},\n  journal = {Journal of Cheminformatics}\n}\n\n@article{Kwok2018eln,\n  doi = {10.1038/d41586-018-05895-3},\n  url = {https://doi.org/10.1038/d41586-018-05895-3},\n  year = {2018},\n  author = {Kwok, Roberta},\n  title = {How to pick an electronic laboratory notebook},\n  journal = {Nature}\n}\n\n@article{Gumb2022oer,\n  doi = {10.17161/jcel.v5i1.14946},\n  url = {https://doi.org/10.17161/jcel.v5i1.14946},\n  year = {2022},\n  author = {Gumb, L. and Cross, W.},\n  title = {In Keeping with Academic Tradition: Copyright ownership in higher education and potential implications for Open Education},\n  journal = {Journal of Copyright in Education and Librarianship}\n}\n\n@misc{Hays2023twitter,\n  author = {Hays, Kali},\n  title = {Twitter downloads hit lowest level in a over a decade as usage nears a yearly low under Elon Musk's ownership},\n  year = {2023},\n  month = {September},\n  note = {Online; accessed 09. Sep. 2023},\n  url = {https://web.archive.org/web/20230909143425/https://www.businessinsider.com/twitter-downloads-usage-sinks-under-elon-musk-ownership-2023-9}\n}\n\n@misc{Aslam2023linkedin,\n  author = {Aslam, Salman},\n  title = {90 {LinkedIn} Statistics You Need to Know in 2023},\n  year = {2023},\n  month = {February},\n  note = {Online; accessed 15. Nov. 2023},\n  url = {https://www.omnicoreagency.com/LinkedIn-statistics/}\n}\n\n@misc{Meta2023facebook,\n  author = {Meta},\n  title = {Press Release: {M}eta Reports Second Quarter 2023 Results},\n  year = {2023},\n  month = {July},\n  note = {Online; accessed 15. Nov. 2023},\n  url = {https://investor.fb.com/investor-news/press-release-details/2023/Meta-Reports-Second-Quarter-2023-Results/default.aspx}\n}\n\n@misc{Rodriguez2023instagram,\n  author = {Rodriguez, Salvador},\n  title = {Instagram surpasses 2 billion monthly users while powering through a year of turmoil},\n  year = {2021},\n  month = {December},\n  note = {Online; accessed 15. Nov. 2023},\n  url = {https://www.cnbc.com/2021/12/14/instagram-surpasses-2-billion-monthly-users.html}\n}\n\n@article{higgins2022elns,\n  title = {Considerations for implementing electronic laboratory notebooks in an academic research environment},\n  author = {Higgins, Stuart G. and Nogiwa-Valdez, Akemi A. and Stevens, Molly M.},\n  year = {2022},\n  month = {01},\n  date = {2022-01-14},\n  journal = {Nature Protocols},\n  pages = {179--189},\n  volume = {17},\n  number = {2},\n  doi = {10.1038/s41596-021-00645-8},\n  url = {http://dx.doi.org/10.1038/s41596-021-00645-8},\n  langid = {en}\n}\n\n@article{alaparthi2020bidirectional,\n  title   = {Bidirectional Encoder Representations from Transformers (BERT): A sentiment analysis odyssey},\n  author  = {Alaparthi, Shivaji and Mishra, Manit},\n  journal = {arXiv preprint arXiv:2007.01127},\n  year    = {2020}\n}\n\n@inproceedings{Bender2021,\n  doi       = {10.1145/3442188.3445922},\n  url       = {https://doi.org/10.1145/3442188.3445922},\n  year      = {2021},\n  month     = mar,\n  publisher = {ACM},\n  author    = {Emily M. Bender and Timnit Gebru and Angelina McMillan-Major and Shmargaret Shmitchell},\n  title     = {On the Dangers of Stochastic Parrots},\n  booktitle = {Proceedings of the 2021 {ACM} Conference on Fairness,  Accountability,  and Transparency}\n}\n\n@article{Freeland2022,\n  doi       = {10.3390/ma15092989},\n  url       = {https://doi.org/10.3390/ma15092989},\n  year      = {2022},\n  month     = apr,\n  publisher = {MDPI AG},\n  volume    = {15},\n  number    = {9},\n  pages     = {2989},\n  author    = {Brian Freeland and Eanna McCarthy and Rengesh Balakrishnan and Samantha Fahy and Adam Boland and Keith D. Rochfort and Michal Dabros and Roger Marti and Susan M. Kelleher and Jennifer Gaughran},\n  title     = {A Review of Polylactic Acid as a Replacement Material for Single-Use Laboratory Components},\n  journal   = {Materials}\n}\n\n@article{Leak2023,\n  doi       = {10.1016/j.tibs.2022.09.001},\n  url       = {https://doi.org/10.1016/j.tibs.2022.09.001},\n  year      = {2023},\n  month     = jan,\n  publisher = {Elsevier {BV}},\n  volume    = {48},\n  number    = {1},\n  pages     = {5--8},\n  author    = {Logan B. Leak and Janina Tamborski and Antony Commissaris and Jennifer A.N. Brophy},\n  title     = {Forging a path toward a more sustainable laboratory},\n  journal   = {Trends in Biochemical Sciences}\n}\n\n@article{Schroeder2022,\n  title        = {An Ethical Framework for Presenting Scientific Results to Policy-Makers},\n  author       = {Schroeder, S. Andrew},\n  year         = {2022},\n  journal      = {Kennedy Institute of Ethics Journal},\n  volume       = {32},\n  number       = {1},\n  pages        = {33--67},\n  publisher    = {Johns Hopkins University Press},\n  issn         = {1086-3249},\n  url          = {https://muse.jhu.edu/pub/1/article/852736},\n  urldate      = {2023-11-07},\n  abstract     = {ABSTRACT:, Scientists have the ability to influence policy in important ways through how they present their results. Surprisingly, existing codes of scientific ethics have little to say about such choices. I propose that we can arrive at a set of ethical guidelines to govern scientists' presentation of information to policymakers by looking to bioethics: roughly, just as a clinician should aim to promote informed decision-making by patients, a scientist should aim to promote informed decision-making by policymakers. Though this may sound like a natural proposal, I show it offers guidance that conflicts with standard scientific practices. I conclude by considering one cost of the proposal: that it would prevent scientists from acting as advocates in a way that is currently common in certain fields. I accept that the proposal would restrict scientists' political advocacy rights, but argue that the benefits of adopting it—promoting democratic governance—justify the restriction.},\n  file         = {C:\\Users\\susan\\Zotero\\storage\\HZBHP4XQ\\Schroeder_2022_An Ethical Framework for Presenting Scientific Results to Policy-Makers.pdf}\n}\n\n@article{Dubois2018,\n  title        = {Five {{Dimensions}} of {{Research Ethics}}: {{A Stakeholder Framework}} for {{Creating}} a {{Climate}} of {{Research Integrity}}},\n  shorttitle   = {Five {{Dimensions}} of {{Research Ethics}}},\n  author       = {DuBois, James M. and Antes, Alison L.},\n  year         = {2018},\n  journal      = {Acad Med},\n  volume       = {93},\n  number       = {4},\n  eprint       = {29068823},\n  eprinttype   = {pmid},\n  pages        = {550--555},\n  issn         = {1040-2446},\n  doi          = {10.1097/ACM.0000000000001966},\n  url          = {https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5916747/},\n  urldate      = {2023-11-07},\n  abstract     = {The authors explore five dimensions of research ethics: (1) normative ethics, which includes meta-ethical questions; (2) compliance with regulations, statutes, and institutional policies; (3) the rigor and reproducibility of science; (4) social value; and (5) workplace relationships. Each of the five dimensions is important not only because it addresses an aspect of good research done in a good manner, but also because it addresses the concerns of key stakeholders in the research enterprise. The five-dimension framework can guide institutions as they answer three questions central to any research ethics program: (1) Who should champion research ethics?, (2) What should interventions look like?, and (3) Who should participate in the interventions? The framework is valuable because the answers to these three questions are radically different depending upon the dimension under consideration. An expanded vision of research ethics does not entail that institutions should require additional online training or approvals from institutional review boards. However, without acknowledging all five dimensions, programs risk missing an important aspect of research ethics or ignoring the interests of important stakeholders.},\n  pmcid        = {PMC5916747},\n  file         = {C:\\Users\\susan\\Zotero\\storage\\32HX9QVU\\DuBois_Antes_2018_Five Dimensions of Research Ethics.pdf}\n}\n\n@misc{esrc2010Framework,\n  title       = {Framework for {{Research Ethics}} ({{FRE}})},\n  author      = {ESRC},\n  year        = {2010},\n  institution = {{ESCR}},\n  langid      = {english},\n  file        = {C:\\Users\\susan\\Zotero\\storage\\YJX236IE\\ESRC_2010_Framework for Research Ethics (FRE).pdf}\n}\n\n@article{Holmes2022,\n  title        = {Ethics of {{AI}} in {{Education}}: {{Towards}} a {{Community-Wide Framework}}},\n  shorttitle   = {Ethics of {{AI}} in {{Education}}},\n  author       = {Holmes, Wayne and Porayska-Pomsta, Kaska and Holstein, Ken and Sutherland, Emma and Baker, Toby and Shum, Simon Buckingham and Santos, Olga C. and Rodrigo, Mercedes T. and Cukurova, Mutlu and Bittencourt, Ig Ibert and Koedinger, Kenneth R.},\n  year         = {2022},\n  journal      = {Int J Artif Intell Educ},\n  volume       = {32},\n  number       = {3},\n  pages        = {504--526},\n  issn         = {1560-4306},\n  doi          = {10.1007/s40593-021-00239-1},\n  url          = {https://doi.org/10.1007/s40593-021-00239-1},\n  urldate      = {2023-11-07},\n  abstract     = {While Artificial Intelligence in Education (AIED) research has at its core the desire to support student learning, experience from other AI domains suggest that such ethical intentions are not by themselves sufficient. There is also the need to consider explicitly issues such as fairness, accountability, transparency, bias, autonomy, agency, and inclusion. At a more general level, there is also a need to differentiate between doing ethical things and doing things ethically, to understand and to make pedagogical choices that are ethical, and to account for the ever-present possibility of unintended consequences. However, addressing these and related questions is far from trivial. As a first step towards addressing this critical gap, we invited 60 of the AIED community’s leading researchers to respond to a survey of questions about ethics and the application of AI in educational contexts. In this paper, we first introduce issues around the ethics of AI in education. Next, we summarise the contributions of the 17 respondents, and discuss the complex issues that they raised. Specific outcomes include the recognition that most AIED researchers are not trained to tackle the emerging ethical questions. A well-designed framework for engaging with ethics of AIED that combined a multidisciplinary approach and a set of robust guidelines seems vital in this context.},\n  langid       = {english},\n  keywords     = {Agency,Artificial intelligence in education,Ethics,Fairness,Human cognition,Pedagogy},\n  file         = {C:\\Users\\susan\\Zotero\\storage\\XSEG2KR2\\Holmes et al_2022_Ethics of AI in Education.pdf}\n}\n\n@article{Groot2022,\n  title        = {Ethics Framework for Citizen Science and Public and Patient Participation in Research},\n  author       = {Groot, Barbara and Abma, Tineke},\n  year         = {2022},\n  journal      = {BMC Medical Ethics},\n  volume       = {23},\n  number       = {1},\n  pages        = {23},\n  issn         = {1472-6939},\n  doi          = {10.1186/s12910-022-00761-4},\n  url          = {https://doi.org/10.1186/s12910-022-00761-4},\n  urldate      = {2023-11-07},\n  abstract     = {Citizen science and models for public participation in health research share normative ideals of participation, inclusion, and public and patient engagement. Academic researchers collaborate in research with members of the public involved in an issue, maximizing all involved assets, competencies, and knowledge. In citizen science new ethical issues arise, such as who decides, who participates, who is excluded, what it means to share power equally, or whose knowledge counts. This article aims to present an ethics framework that offers a lens of understanding and heuristic guidelines to deal with ethical issues in citizen science.},\n  keywords     = {Citizen science,Ethics framework,Ethics work,Medical Research Ethics Committee,Patient and public engagement,Research ethics},\n  file         = {C\\:\\\\Users\\\\susan\\\\Zotero\\\\storage\\\\9M65J553\\\\Groot_Abma_2022_Ethics framework for citizen science and public and patient participation in.pdf;C\\:\\\\Users\\\\susan\\\\Zotero\\\\storage\\\\68SP3DE5\\\\s12910-022-00761-4.html}\n}\n\n@article{Wickham2010dataviz,\n  doi = {10.1198/jcgs.2009.07098},\n  url = {https://doi.org/10.1198/jcgs.2009.07098},\n  year = {2010},\n  author = {Wickham, H.},\n  title = {A Layered Grammar of Graphics},\n  journal = {Journal of Computational and Graphical Statistics}\n}\n\n@inbook{Hare2022dataviz,\n  title = {Writing Alt Text to communicate the meaning in data visualizations},\n  author = {Hare, Elizabeth},\n  publisher = {Urban Institute},\n  year = {2022},\n  chapter = {2},\n  url = {https://www.urban.org/sites/default/files/2022-12/Do%20No%20Harm%20Guide%20Centering%20Accessibility%20in%20Data%20Visualization.pdf}\n}\n\n@misc{li2023dataviz,\n  doi = {10.5281/zenodo.7097522},\n  author = {Li, C.},\n  title = {Friends Don't Let Friends Make Bad Graphs},\n  year = {2023},\n  url = {https://github.com/cxli233/FriendsDontLetFriends/tree/V5}\n}\n\n@book{Stone2003dataviz,\n  author = {Stone, Maureen},\n  title = {{A Field Guide to Digital Color}},\n  year = {2003},\n  isbn = {978-1568811611},\n  publisher = {AK Peters, Ltd},\n  url = {https://openlibrary.org/works/OL6130168W/A_Field_Guide_to_Digital_Color}\n}\n\n@book{Wilkinson1999dataviz,\n  author = {Wilkinson, Leland},\n  title = {{The Grammar of Graphics}},\n  year = {1999},\n  isbn = {978-0387987743},\n  publisher = {Springer},\n  url = {https://openlibrary.org/works/OL18235300W/The_grammar_of_graphics}\n}\n\n@book{Tufte2001dataviz,\n  author = {Tufte, Edward R. },\n  title = {{The Visual Display of Quantitative Information}},\n  year = {2001},\n  isbn = {978-0961392147},\n  publisher = {Graphics Press},\n  url = {https://openlibrary.org/works/OL2824012W/The_Visual_Display_of_Quantitative_Information}\n}\n\n\n@article{Tendler2023culture,\n  doi = {10.7554/eLife.88853},\n  url = {https://doi.org/10.7554/eLife.88853},\n  year = {2023},\n  author = {Tendler, Benjamin C. and Welland, Maddie and Miller, Karla L. and The WIN Handbook Team},\n  title = {Research Culture: Why every lab needs a handbook},\n  journal = {eLife}\n}\n\n@Article{Cook2023zoom,\n  author       = {Abi Cook and Meg Thompson and Paddy Ross},\n  year         = {2023},\n  journal      = {PLOS ONE},\n  title        = {Virtual first impressions: Zoom backgrounds affect judgements of trust and competence},\n  doi          = {https://doi.org/10.1371/journal.pone.0291444},\n  number       = {18},\n  volume       = {9}\n}\n\n\n@misc{Damerow2024physical,\n  doi = {10.6084/m9.figshare.24669057.v1},\n  author = {Damerow, J. and Raia, N. and Stanley, V. and Byers, N. and Choe, S. and Edmunds, R. and Kunze, J. and Lehnert, K. and McIntyre-Redden, M. and Mungall, C. and O'Ryan, D. and Parker, C. and Plomp, E. and Richard, S. and Vieglais, D. and Wood-Charlson, E. and ESIP Physical Samples Curation Cluster and Thomer, A.},\n  title = {A Scientific Author Guide for Publishing Open Research Using Physical Samples},\n  year = {2024},\n  url = {https://doi.org/10.6084/m9.figshare.24669057.v1}\n}\n\n@book{Ostrom1990commons,\n  author = {Ostrom, Elinor},\n  title = {{Governing the Commons: The Evolution of Institutions for Collective Action}},\n  journal = {Cambridge Core},\n  year = {1990},\n  month = nov,\n  isbn = {978-0-52137101-8},\n  publisher = {Cambridge University Press},\n  address = {Cambridge, England, UK},\n  doi = {10.1017/CBO9780511807763}\n}\n\n@book{Ostrom2006commons,\n  author = {Hess, Charlotte and Ostrom, Elinor},\n  title = {{Understanding Knowledge as a Commons: From Theory to Practice}},\n  journal = {MIT Press},\n  year = {2006},\n  month = dec,\n  isbn = {978-0-26225634-6},\n  publisher = {The MIT Press},\n  address = {Cambridge, MA, USA},\n  doi = {10.7551/mitpress/6980.001.0001}\n}\n\n@article{deRosnay2020commons,\n  author = {de Rosnay, Melanie Dulong and Stalder, Felix},\n  title = {{Digital commons}},\n  journal = {Internet Policy Review},\n  volume = {9},\n  number = {4},\n  year = {2020},\n  month = dec,\n  issn = {2197-6775},\n  url = {https://policyreview.info/concepts/digital-commons}\n}\n\n@misc{Frion2024commons,\n  author ={Frion, Louise},\n  title = {{POLICY BRIEF, Digital Commons as Alternative Systems of Value, by Louise Frion}},\n  year = {2024},\n  month = jun,\n  note = {[Online; accessed 6. Jun. 2024]},\n  url = {https://www.sciencespo.fr/public/chaire-numerique/en/2023/06/15/policy-brief-digital-commons-as-an-alternative-system-of-value-by-louise-frion}\n}\n\n@article{Ostrom2005commons,\n  author = {Ostrom, Elinor},\n  title = {{Understanding Institutional Diversity / E. Ostrom.}},\n  journal = {Princeton, NJ},\n  year = {2005},\n  month = jan,\n  url = {https://www.researchgate.net/publication/50209015_Understanding_Institutional_Diversity_E_Ostrom}\n}\n\n@article{Schweik2007commons,\n  author = {{Charles M Schweik} and English, Robert},\n  title = {{Tragedy of the FOSS Commons? Investigating the Institutional Designs of Free/Libre and Open Source Software Projects}},\n  journal = {Charles M Schweik},\n  volume = {12},\n  number = {2},\n  year = {2007},\n  month = apr,\n  issn = {1396-0466},\n  publisher = {University of Illinois Libraries},\n  doi = {10.5210/fm.v12i2.1619}\n}\n\n@misc{WEF2022commons,\n  author = {Pande, Varad and Ngodup Massally, Keyzom},\n  title = {{How digital public goods could tackle big global dilemmas}},\n  journal = {World Economic Forum},\n  year = {2024},\n  month = jun,\n  note = {[Online; accessed 7. Jun. 2024]},\n  url = {https://www.weforum.org/agenda/2022/05/digital-public-goods-open-source-technology-ecosystem}\n}\n\n@article{gorgolewski2016NIPY,\n  title = {The Brain Imaging Data Structure, a Format for Organizing and Describing Outputs of Neuroimaging Experiments},\n  author = {Gorgolewski, Krzysztof J. and Auer, Tibor and Calhoun, Vince D. and Craddock, R. Cameron and Das, Samir and Duff, Eugene P. and Flandin, Guillaume and Ghosh, Satrajit S. and Glatard, Tristan and Halchenko, Yaroslav O. and Handwerker, Daniel A.\n and Hanke, Michael and Keator, David and Li, Xiangrui and Michael, Zachary and Maumet, Camille and Nichols, B. Nolan and Nichols, Thomas E. and Pellman, John and Poline, Jean-Baptiste and Rokem, Ariel and Schaefer, Gunnar and Sochat, Vanessa and Triplett\n, William and Turner, Jessica A. and Varoquaux, Gaël and Poldrack, Russell A.},\n  date = {2016-06-21},\n  year = {2016},\n  journal = {Scientific Data},\n  shortjournal = {Sci Data},\n  volume = {3},\n  number = {1},\n  pages = {160044},\n  issn = {2052-4463},\n  doi = {10.1038/sdata.2016.44},\n  url = {https://www.nature.com/articles/sdata201644},\n}\n\n@article{pedregosa2012ScikitLearn,\n  title = {Scikit-Learn: {{Machine Learning}} in {{Python}}},\n  shorttitle = {Scikit-Learn},\n  author = {Pedregosa, Fabian and Varoquaux, Gaël and Gramfort, Alexandre and Michel, Vincent and Thirion, Bertrand and Grisel, Olivier and Blondel, Mathieu and Müller, Andreas and Nothman, Joel and Louppe, Gilles and Prettenhofer, Peter and Weiss, Ron and Dubourg, Vincent and Vanderplas, Jake and Passos, Alexandre and Cournapeau, David and Brucher, Matthieu and Perrot, Matthieu and Duchesnay, Édouard},\n  date = {2012},\n  year = {2012},\n  publisher = {arXiv},\n  journal = {arXiv},\n  doi = {10.48550/ARXIV.1201.0490},\n  url = {https://arxiv.org/abs/1201.0490},\n  version = {4},\n}\n\n@article{Gaynor2022ten,\n  title = {Ten simple rules to cultivate belonging in collaborative data science research teams},\n  author = {Gaynor, Kaitlyn M. and Azevedo, Therese and Boyajian, Clarissa and Brun, Julien and Budden, Amber E. and Cole, Allie and Csik, Samantha and DeCesaro, Joe and Do-Linh, Halina and Dudney, Joan and Galaz Garcia, Carmen and Leonard, Scout and Lyon, Nicolas J. and Marks, Althea and Parish, Julia and Phillips, Alexandra A. and Scarborough, Courtney and Smith, Joshua and Thompson, Marcus and Vargas Poulsen, Camila and Fong, Caitlin R.},\n  year = {2022},\n  journal = {PLoS Comput Biol},\n  doi = {10.1371/journal.pcbi.1010567},\n  url = {https://doi.org/10.1371/journal.pcbi.1010567},\n}\n\n@article{Rubin1976missingdata,\n    author = {Rubin, Donald B.},\n    title = \"{Inference and missing data}\",\n    journal = {Biometrika},\n    volume = {63},\n    number = {3},\n    pages = {581-592},\n    year = {1976},\n    month = {12},\n    doi = {10.1093/biomet/63.3.581},\n    url = {https://doi.org/10.1093/biomet/63.3.581},\n    eprint = {https://academic.oup.com/biomet/article-pdf/63/3/581/756166/63-3-581.pdf},\n}\n\n@misc{Jackson2023structuredmissingness,\n      title={A Complete Characterisation of Structured Missingness},\n      author={James Jackson and Robin Mitra and Niels Hagenbuch and Sarah McGough and Chris Harbron},\n      year={2023},\n      eprint={2307.02650},\n      archivePrefix={arXiv},\n      primaryClass={stat.ME},\n      url={https://arxiv.org/abs/2307.02650},\n}\n\n@article{Mitra2023structuredmissingness,\n  title = {Learning from data with structured missingness},\n  volume = {5},\n  issn = {2522-5839},\n  url = {https://doi.org/10.1038/s42256-022-00596-z},\n  doi = {10.1038/s42256-022-00596-z},\n  abstract = {Missing data are an unavoidable complication in many machine learning tasks. When data are ‘missing at random’ there exist a range of tools and techniques to deal with the issue. However, as machine learning studies become more ambitious, and seek to learn from ever-larger volumes of heterogeneous data, an increasingly encountered problem arises in which missing values exhibit an association or structure, either explicitly or implicitly. Such ‘structured missingness’ raises a range of challenges that have not yet been systematically addressed, and presents a fundamental hindrance to machine learning at scale. Here we outline the current literature and propose a set of grand challenges in learning from data with structured missingness.},\n  number = {1},\n  journal = {Nature Machine Intelligence},\n  author = {Mitra, Robin and McGough, Sarah F. and Chakraborti, Tapabrata and Holmes, Chris and Copping, Ryan and Hagenbuch, Niels and Biedermann, Stefanie and Noonan, Jack and Lehmann, Brieuc and Shenvi, Aditi and Doan, Xuan Vinh and Leslie, David and Bianconi, Ginestra and Sanchez-Garcia, Ruben and Davies, Alisha and Mackintosh, Maxine and Andrinopoulou, Eleni-Rosalina and Basiri, Anahid and Harbron, Chris and MacArthur, Ben D.},\n  month = jan,\n  year = {2023},\n  pages = {13--23},\n}\n\n@article{Woods2024multipleimputation,\nauthor = {Woods, Adrienne D. and Gerasimova, Daria and Van Dusen, Ben and Nissen, Jayson and Bainter, Sierra and Uzdavines, Alex and Davis-Kean, Pamela E. and Halvorson, Max and King, Kevin M. and Logan, Jessica A. R. and Xu, Menglin and Vasilev, Martin R. and Clay, James M. and Moreau, David and Joyal-Desmarais, Keven and Cruz, Rick A. and Brown, Denver M. Y. and Schmidt, Kathleen and Elsherif, Mahmoud M.},\ntitle = {Best practices for addressing missing data through multiple imputation},\njournal = {Infant and Child Development},\nvolume = {33},\nnumber = {1},\npages = {e2407},\nkeywords = {development, missing data, missingness mechanisms, multiple imputation, open scholarship},\ndoi = {https://doi.org/10.1002/icd.2407},\nurl = {https://onlinelibrary.wiley.com/doi/abs/10.1002/icd.2407},\neprint = {https://onlinelibrary.wiley.com/doi/pdf/10.1002/icd.2407},\nabstract = {Abstract A common challenge in developmental research is the amount of incomplete and missing data that occurs from respondents failing to complete tasks or questionnaires, as well as from disengaging from the study (i.e., attrition). This missingness can lead to biases in parameter estimates and, hence, in the interpretation of findings. These biases can be addressed through statistical techniques that adjust for missing data, such as multiple imputation. Although multiple imputation is highly effective, it has not been widely adopted by developmental scientists given barriers such as lack of training or misconceptions about imputation methods. Utilizing default methods within statistical software programs like listwise deletion is common but may introduce additional bias. This manuscript is intended to provide practical guidelines for developmental researchers to follow when examining their data for missingness, making decisions about how to handle that missingness and reporting the extent of missing data biases and specific multiple imputation procedures in publications.},\nyear = {2024}\n}\n\n\n@article{Pigott2001missingdatamethods,\nauthor = {Therese D. Pigott},\ntitle = {A Review of Methods for Missing Data},\njournal = {Educational Research and Evaluation},\nvolume = {7},\nnumber = {4},\npages = {353--383},\nyear = {2001},\npublisher = {Routledge},\ndoi = {10.1076/edre.7.4.353.8937},\nURL = { https://doi.org/10.1076/edre.7.4.353.8937},\neprint = { https://doi.org/10.1076/edre.7.4.353.8937}\n}\n\n@article{Joel2022missingdatahandling,\ntitle={A Review of Missing Data Handling Techniques for Machine Learning},\nvolume={5},\nurl={https://journals.tultech.eu/index.php/ijitis/article/view/94},\nDOI={10.15157/IJITIS.2022.5.3.971-1005},\nyear={2022},\nmonth={Sep.},\nnumber={3},\njournal={International Journal of Innovative Technology and Interdisciplinary Sciences},\nauthor={Oluwaseye Joel, Luke and Doorsamy, Wesley and Sena Paul, Babu},\npages={971--1005} }\n\n@article{vanBuuren2011mice,\n title={mice: Multivariate Imputation by Chained Equations in R},\n volume={45},\n url={https://www.jstatsoft.org/index.php/jss/article/view/v045i03},\n doi={10.18637/jss.v045.i03},\n abstract={The R package &amp;lt;b&amp;gt;mice&amp;lt;/b&amp;gt; imputes incomplete multivariate data by chained equations. The software mice 1.0 appeared in the year 2000 as an S-PLUS library, and in 2001 as an R package. mice 1.0 introduced predictor selection, passive imputation and automatic pooling. This article documents mice, which extends the functionality of mice 1.0 in several ways. In &amp;lt;b&amp;gt;mice&amp;lt;/b&amp;gt;, the analysis of imputed data is made completely general, whereas the range of models under which pooling works is substantially extended. &amp;lt;b&amp;gt;mice&amp;lt;/b&amp;gt; adds new functionality for imputing multilevel data, automatic predictor selection, data handling, post-processing imputed values, specialized pooling routines, model selection tools, and diagnostic graphs. Imputation of categorical data is improved in order to bypass problems caused by perfect prediction. Special attention is paid to transformations, sum scores, indices and interactions using passive imputation, and to the proper setup of the predictor matrix. &amp;lt;b&amp;gt;mice&amp;lt;/b&amp;gt; can be downloaded from the Comprehensive R Archive Network. This article provides a hands-on, stepwise approach to solve applied incomplete data problems.},\n number={3},\n journal={Journal of Statistical Software},\n author={van Buuren, Stef and Groothuis-Oudshoorn, Karin},\n year={2011},\n pages={1--67}\n}\n\n@article{Azur2011mice,\n   author = {Azur, M. J. and Stuart, E. A. and Frangakis, C. and Leaf, P. J.},\n   title = {Multiple imputation by chained equations: what is it and how does it work?},\n   journal = {Int J Methods Psychiatr Res},\n   volume = {20},\n   number = {1},\n   pages = {40-9},\n   ISSN = {1049-8931 (Print)\n1049-8931},\n   DOI = {10.1002/mpr.329},\n   year = {2011},\n   type = {Journal Article}\n}\n\n@article{Wulff2017mice,\ntitle = \"Multiple imputation by chained equations in praxis: Guidelines and review\",\nauthor = \"Wulff, {Jesper N.} and Jeppesen, {Linda Ejlskov}\",\nyear = \"2017\",\nlanguage = \"English\",\nvolume = \"15\",\npages = \"41--56\",\njournal = \"Electronic Journal of Business Research Methods\",\nissn = \"1477-7029\",\npublisher = \"Academic Conferences and Publishing International\",\nnumber = \"1\",\n}\n\n@article{White2011mice,\n   author = {White, I. R. and Royston, P. and Wood, A. M.},\n   title = {Multiple imputation using chained equations: Issues and guidance for practice},\n   journal = {Stat Med},\n   volume = {30},\n   number = {4},\n   pages = {377-99},\n   ISSN = {0277-6715},\n   DOI = {10.1002/sim.4067},\n   year = {2011},\n   type = {Journal Article}\n}\n\n@article{Pederson2017missingdata,\n   author = {Pedersen, A. B. and Mikkelsen, E. M. and Cronin-Fenton, D. and Kristensen, N. R. and Pham, T. M. and Pedersen, L. and Petersen, I.},\n   title = {Missing data and multiple imputation in clinical epidemiological research},\n   journal = {Clin Epidemiol},\n   volume = {9},\n   pages = {157-166},\n   ISSN = {1179-1349 (Print)\n1179-1349},\n   DOI = {10.2147/clep.S129785},\n   year = {2017},\n   type = {Journal Article}\n}\n\n@book{Buuren2018imputation,\n   author = {Buuren, Stef van},\n   title = {Flexible Imputation of Missing Data},\n   publisher = {Chapman & Hall/CRC},\n   series = {Interdisciplinary Statistics Series},\n   url = {https://stefvanbuuren.name/fimd/},\n   year = {2018},\n   type = {Book}\n}\n\n@book{Mack2018patientregistries,\n   author = {Mack C, Su Z, Westreich D},\n   title={Types of Missing Data},\n   booktitle = {Managing Missing Data in Patient Registries: Addendum to Registries for Evaluating Patient Outcomes: A User’s Guide, Third Edition [Internet]},\n   publisher = {Rockville (MD): Agency for Healthcare Research and Quality (US)},\n   series = {Methods for Effective Health Care},\n   url = {https://www.ncbi.nlm.nih.gov/books/NBK493614/},\n   year = {2018},\n   type = {Book}\n}\n\n@book{Bland2015medicalstatistics,\n   author = {Buuren, Stef van},\n   title = {Types of missing data},\n   booktitle = {An Introduction to Medical Statistics, Fourth Edition},\n   publisher = {Oxford University Press},\n   url = {https://www-users.york.ac.uk/~mb55/intro/typemiss4.htm#:~:text=When%20we%20say%20data%20are,CADET%2C%20sex%20might%20be%20MCAR.},\n   year = {2015},\n   type = {Book},\n   pages = {306--307}\n}\n\n@article{deGoeij2013multipleimputation,\n    author = {de Goeij, Moniek C.M. and van Diepen, Merel and Jager, Kitty J. and Tripepi, Giovanni and Zoccali, Carmine and Dekker, Friedo W.},\n    title = \"{Multiple imputation: dealing with missing data}\",\n    journal = {Nephrology Dialysis Transplantation},\n    volume = {28},\n    number = {10},\n    pages = {2415-2420},\n    year = {2013},\n    month = {05},\n  issn = {0931-0509},\n    doi = {10.1093/ndt/gft221},\n    url = {https://doi.org/10.1093/ndt/gft221},\n    eprint = {https://academic.oup.com/ndt/article-pdf/28/10/2415/6879514/gft221.pdf},\n}\n\n@article{Austin2021multipleimputation,\ntitle = {Missing Data in Clinical Research: A Tutorial on Multiple Imputation},\njournal = {Canadian Journal of Cardiology},\nvolume = {37},\nnumber = {9},\npages = {1322-1331},\nyear = {2021},\nissn = {0828-282X},\ndoi = {https://doi.org/10.1016/j.cjca.2020.11.010},\nurl = {https://www.sciencedirect.com/science/article/pii/S0828282X20311119},\nauthor = {Peter C. Austin and Ian R. White and Douglas S. Lee and Stef {van Buuren}},\n}\n\n@misc{LaZerte2021,\n  title = {How to Cite R and R Packages},\n  url = {http://dx.doi.org/10.59350/t79xt-tf203},\n  DOI = {10.59350/t79xt-tf203},\n  publisher = {Front Matter},\n  author = {LaZerte,  Steffi},\n  year = {2021},\n  month = nov\n}\n\n@misc{ShouldICite,\n  doi = {10.5281/ZENODO.2559142},\n  url = {https://zenodo.org/record/2559142},\n  author = {Brown,  Louise and Crusoe,  Michael R. and Miļajevs,  Dmitrijs and Romanowska,  Iza},\n  keywords = {citation,  software citation,  software credit},\n  language = {en},\n  title = {Should you cite this particular piece of software?},\n  publisher = {Zenodo},\n  year = {2019},\n  copyright = {Creative Commons Attribution 4.0 International}\n}\n\n@article{Stall2023,\n  title = {Journal Production Guidance for Software and Data Citations},\n  volume = {10},\n  ISSN = {2052-4463},\n  url = {http://dx.doi.org/10.1038/s41597-023-02491-7},\n  DOI = {10.1038/s41597-023-02491-7},\n  number = {1},\n  journal = {Scientific Data},\n  publisher = {Springer Science and Business Media LLC},\n  author = {Stall,  Shelley and Bilder,  Geoffrey and Cannon,  Matthew and Chue Hong,  Neil and Edmunds,  Scott and Erdmann,  Christopher C. and Evans,  Michael and Farmer,  Rosemary and Feeney,  Patricia and Friedman,  Michael and Giampoala,  Matthew and Hanson,  R. Brooks and Harrison,  Melissa and Karaiskos,  Dimitris and Katz,  Daniel S. and Letizia,  Viviana and Lizzi,  Vincent and MacCallum,  Catriona and Muench,  August and Perry,  Kate and Ratner,  Howard and Schindler,  Uwe and Sedora,  Brian and Stockhause,  Martina and Townsend,  Randy and Yeston,  Jake and Clark,  Timothy},\n  year = {2023},\n  month = sep\n}\n\n@online{brownEpistemology2015,\n  title = {Epistemology},\n  author = {Brown, Nicole},\n  date = {2015-11-03},\n  year = {2015},\n  url = {http://www.nicole-brown.co.uk/epistemology/},\n  urldate = {2024-11-05},\n  langid = {english},\n  organization = {Dr Nicole Brown Social Research \\& Practice and Education Ltd.},\n  annotation = {https://web.archive.org/web/20161014123818/http://www.nicole-brown.co.uk/epistemology/}\n}\n\n@article{Grossmann2024smp,\n abstract = {The present article is a review of the state of the art about software management plans (SMPs). It provides a selection of questionnaires, tools and application cases for SMPs from a European (German) point of view, and discusses the possible connections of SMPs to other aspects of software sustainability, such as metadata, FAIR4RS principles or machine-actionable SMPs. The aim of our publication is to provide basic knowledge to start diving into the subject and a handout for infrastructure providers who are about to establish/develop a SMP service in one\\’s own institution.},\n author = {Grossmann, Yves Vincent and Lanza, Giacomo and Biernacka, Katarzyna and Hasler, Tim and Helbig, Kerstin},\n doi = {10.5334/dsj-2024-043},\n journal = {Data Science Journal},\n keyword = {en_US},\n month = {Sep},\n title = {Software Management Plans – Current Concepts, Tools, and Application},\n year = {2024}\n}\n\n@book{lave1991situatedlearning,\n    author={Lave, Jean and Etienne Wenger},\n    title={Situated Learning: Legitimate Peripheral Participation},\n    year={1991},\n    isbn={100521423740},\n  publisher={Cambridge University Press, Cambridge}\n}\n\n@article{michlmayr2009community,\n    author={Michlmayr, M},\n    title={Community management in open source projects},\n    journal={The European Journal for the Informatics Professional},\n    volume={X},\n    number={3},\n    pages={22--26},\n    year={2009}\n}\n\n@book{Christodoulou2014myths,\n  title={Seven Myths About Education},\n  ISBN={9781317753414},\n  url={http://dx.doi.org/10.4324/9781315797397},\n  DOI={10.4324/9781315797397},\n  publisher={Routledge},\n  author={Christodoulou,  Daisy},\n  year={2014},\n  month ={mar}\n}\n\n@book{Estrellado2020data,\n  title={Data Science in Education Using R},\n  ISBN={9780367822842},\n  url={http://dx.doi.org/10.4324/9780367822842},\n  DOI={10.4324/9780367822842},\n  publisher={Routledge},\n  author={Estrellado,  Ryan A. and Freer,  Emily A. and Mostipak,  Jesse and Rosenberg,  Joshua M. and Velásquez,  Isabella C.},\n  year={2020},\n  month={oct}\n}\n\n@article{Gebre2022conceptions,\n  title={Conceptions and perspectives of data literacy in secondary education},\n  volume={53},\n  ISSN={1467-8535},\n  url={http://dx.doi.org/10.1111/bjet.13246},\n  DOI={10.1111/bjet.13246},\n  number={5},\n  journal={British Journal of Educational Technology},\n  publisher={Wiley},\n  author={Gebre,  Engida},\n  year={2022},\n  month={jun},\n  pages={1080–1095}\n}\n\n@article{Jiang2022datascience,\n  title={Data science education across the disciplines: Underexamined opportunities for K‐12 innovation},\n  volume={53},\n  ISSN={1467-8535},\n  url={http://dx.doi.org/10.1111/bjet.13258},\n  DOI={10.1111/bjet.13258},\n  number={5},\n  journal={British Journal of Educational Technology},\n  publisher={Wiley},\n  author={Jiang,  Shiyan and Lee,  Victor R. and Rosenberg,  Joshua M.},\n  year={2022},\n  month={jul},\n  pages={1073–1079}\n}\n\n@inproceedings{Kandlhofer2016artificial,\n  title={Artificial intelligence and computer science in education: From kindergarten to university},\n  url={http://dx.doi.org/10.1109/fie.2016.7757570},\n  DOI={10.1109/fie.2016.7757570},\n  booktitle={2016 IEEE Frontiers in Education Conference (FIE)},\n  publisher={IEEE},\n  author={Kandlhofer,  Martin and Steinbauer,  Gerald and Hirschmugl-Gaisch,  Sabine and Huber,  Petra},\n  year={2016},\n  month={oct},\n  pages={1–9}\n}\n\n@article{McFarland2021education,\n  title={Education Data Science: Past,  Present,  Future},\n  volume={7},\n  ISSN={2332-8584},\n  url={http://dx.doi.org/10.1177/23328584211052055},\n  DOI={10.1177/23328584211052055},\n  journal={AERA Open},\n  publisher={SAGE Publications},\n  author={McFarland,  Daniel A. and Khanna,  Saurabh and Domingue,  Benjamin W. and Pardos,  Zachary A.},\n  year={2021},\n  month={jan}\n}\n\n@article{Stanja2022formative,\n  title={Formative assessment strategies for students’ conceptions—The potential of learning analytics},\n  volume={54},\n  ISSN={1467-8535},\n  url={http://dx.doi.org/10.1111/bjet.13288},\n  DOI={10.1111/bjet.13288},\n  number={1},\n  journal={British Journal of Educational Technology},\n  publisher={Wiley},\n  author={Stanja,  Judith and Gritz,  Wolfgang and Krugel,  Johannes and Hoppe,  Anett and Dannemann,  Sarah},\n  year={2022},\n  month={nov},\n  pages={58–75}\n}\n\n@book{tomlinson2017differentiate,\n  title={How to Differentiate Instruction in Academically Diverse Classrooms, Third Edition},\n  author={Tomlinson, C.A.},\n  isbn={9781416623304},\n  lccn={2016049811},\n  url={https://books.google.co.uk/books?id=zoh2DgAAQBAJ},\n  year={2017},\n  publisher={ASCD}\n}\n\n@article{Zhai2020meta,\n  title={A Meta-Analysis of Machine Learning-Based Science Assessments: Factors Impacting Machine-Human Score Agreements},\n  volume={30},\n  ISSN={1573-1839},\n  url={http://dx.doi.org/10.1007/s10956-020-09875-z},\n  DOI={10.1007/s10956-020-09875-z},\n  number={3},\n  journal={Journal of Science Education and Technology},\n  publisher={Springer Science and Business Media LLC},\n  author={Zhai,  Xiaoming and Shi,  Lehong and Nehm,  Ross H.},\n  year={2020},\n  month={nov},\n  pages={361–379}\n}\n\n@misc{harvard2025ip,\n\ttitle = {{Intellectual Property}},\n\tyear = {2025},\n\tmonth = jun,\n\tnote = {[Online; accessed 16. Jul. 2025]},\n\turl = {https://datamanagement.hms.harvard.edu/share-publish/intellectual-property}\n}\n\n@misc{oxford2023narrative,\n  author={{University of Oxford}},\n  title={Narrative CV Guide},\n  year={2023},\n  url={https://researchsupport.admin.ox.ac.uk/sites/default/files/researchsupport/documents/media/narrative_cv_guide_oxford_june_2023_0.pdf}\n}\n\n@article{aslan2021problem,\n  title = {Problem- based learning in live online classes: Learning achievement,  problem-solving skill,  communication skill,  and interaction},\n  volume = {171},\n  ISSN = {0360-1315},\n  url = {http://dx.doi.org/10.1016/j.compedu.2021.104237},\n  DOI = {10.1016/j.compedu.2021.104237},\n  journal = {Computers &amp; Education},\n  publisher = {Elsevier BV},\n  author = {Aslan,  Alper},\n  year = {2021},\n  month = {oct},\n  pages = {104237}\n}\n\n@article{Cekic2021formative,\nauthor = {Çekiç, Ahmet and Bakla, Arif},\nyear = {2021},\nmonth = {sep},\npages = {1459-1485},\ntitle = {A review of digital formative assessment tools: Features and future directions},\nvolume = {8},\njournal = {International Journal of Teaching & Education}\n}\n\n@article{Dewsbury2019inclusive,\n  title = {Inclusive Teaching},\n  volume = {18},\n  ISSN = {1931-7913},\n  url = {http://dx.doi.org/10.1187/cbe.19-01-0021},\n  DOI = {10.1187/cbe.19-01-0021},\n  number = {2},\n  journal = {CBE—Life Sciences Education},\n  publisher = {American Society for Cell Biology (ASCB)},\n  author = {Dewsbury,  Bryan and Brame,  Cynthia J.},\n  year = {2019},\n  month = {jun},\n  pages = {fe2}\n}\n\n@inproceedings{Milo2020automating,\n  series = {SIGMOD/PODS ’20},\n  title = {Automating Exploratory Data Analysis via Machine Learning: An Overview},\n  url = {http://dx.doi.org/10.1145/3318464.3383126},\n  DOI = {10.1145/3318464.3383126},\n  booktitle = {Proceedings of the 2020 ACM SIGMOD International Conference on Management of Data},\n  publisher = {ACM},\n  author = {Milo,  Tova and Somech,  Amit},\n  year = {2020},\n  month = {may},\n  pages = {2617–2622},\n  collection = {SIGMOD/PODS ’20}\n}\n\n@article{Qureshi2021factors,\n  title = {Factors affecting students’ learning performance through collaborative learning and engagement},\n  volume = {31},\n  ISSN = {1744-5191},\n  url = {http://dx.doi.org/10.1080/10494820.2021.1884886},\n  DOI = {10.1080/10494820.2021.1884886},\n  number = {4},\n  journal = {Interactive Learning Environments},\n  publisher = {Informa UK Limited},\n  author = {Qureshi,  Muhammad Asif and Khaskheli,  Asadullah and Qureshi,  Jawaid Ahmed and Raza,  Syed Ali and Yousufi,  Sara Qamar},\n  year = {2021},\n  month = {feb},\n  pages = {2371–2391}\n}\n\n@inproceedings{Sakulkueakulsuk2018kids,\n  title = {Kids making AI: Integrating Machine Learning,  Gamification,  and Social Context in STEM Education},\n  url = {http://dx.doi.org/10.1109/TALE.2018.8615249},\n  DOI = {10.1109/tale.2018.8615249},\n  booktitle = {2018 IEEE International Conference on Teaching,  Assessment,  and Learning for Engineering (TALE)},\n  publisher = {IEEE},\n  author = {Sakulkueakulsuk,  Bawornsak and Witoon,  Siyada and Ngarmkajornwiwat,  Potiwat and Pataranutaporn,  Pornpen and Surareungchai,  Werasak and Pataranutaporn,  Pat and Subsoontorn,  Pakpoom},\n  year = {2018},\n  month = {dec},\n  pages = {1005–1010}\n}\n\n@article{Savonen2023motivation,\n  title = {Motivation,  inclusivity,  and realism should drive data science education},\n  volume = {12},\n  ISSN = {2046-1402},\n  url = {http://dx.doi.org/10.12688/f1000research.134655.1},\n  DOI = {10.12688/f1000research.134655.1},\n  journal = {F1000Research},\n  publisher = {F1000 Research Ltd},\n  author = {Savonen,  Candace and Wright,  Carrie and Hoffman,  Ava and Humphries,  Elizabeth and Cox,  Katherine and Tan,  Frederick and Leek,  Jeffrey},\n  year = {2023},\n  month = {sep},\n  pages = {1240}\n}\n\n@article{Tsai2024empowering,\n  title = {Empowering students through active learning in educational big data analytics},\n  volume = {11},\n  ISSN = {2196-7091},\n  url = {http://dx.doi.org/10.1186/s40561-024-00300-1},\n  DOI = {10.1186/s40561-024-00300-1},\n  number = {1},\n  journal = {Smart Learning Environments},\n  publisher = {Springer Science and Business Media LLC},\n  author = {Tsai,  Yun-Cheng},\n  year = {2024},\n  month = {apr}, \n}\n\n@article{Waskom2021statistical,\n  title = {seaborn: statistical data visualization},\n  volume = {6},\n  ISSN = {2475-9066},\n  url = {http://dx.doi.org/10.21105/joss.03021},\n  DOI = {10.21105/joss.03021},\n  number = {60},\n  journal = {Journal of Open Source Software},\n  publisher = {The Open Journal},\n  author = {Waskom,  Michael},\n  year = {2021},\n  month = {apr},\n  pages = {3021}\n}\n\n@article{Haven2019prereg,\n  title = {Preregistering qualitative research},\n  volume = {26},\n  ISSN = {1545-5815},\n  url = {http://dx.doi.org/10.1080/08989621.2019.1580147},\n  DOI = {10.1080/08989621.2019.1580147},\n  number = {3},\n  journal = {Accountability in Research},\n  publisher = {Informa UK Limited},\n  author = {L. Haven,  Tamarinde and Van Grootel,  Dr. Leonie},\n  year = {2019},\n  month = {mar},\n  pages = {229–244}\n}\n\n@article{Stewart2020primer,\n  title = {Pre-registration and Registered Reports: a Primer from UKRN},\n  url = {http://dx.doi.org/10.31219/osf.io/8v2n7},\n  DOI = {10.31219/osf.io/8v2n7},\n  publisher = {Center for Open Science},\n  author = {Stewart,  Suzanne and Rinke,  Eike Mark and McGarrigle,  Ronan and Lynott,  Dermot and Lunny,  Carole and Lautarescu,  Alexandra and Galizzi,  Matteo M and Farran,  Emily Kate and Crook,  Zander},\n  year = {2020},\n  month = {oct} \n}\n\n@article{Nosek2018revolution,\n  title = {The preregistration revolution},\n  volume = {115},\n  ISSN = {1091-6490},\n  url = {http://dx.doi.org/10.1073/pnas.1708274114},\n  DOI = {10.1073/pnas.1708274114},\n  number = {11},\n  journal = {Proceedings of the National Academy of Sciences},\n  publisher = {Proceedings of the National Academy of Sciences},\n  author = {Nosek,  Brian A. and Ebersole,  Charles R. and DeHaven,  Alexander C. and Mellor,  David T.},\n  year = {2018},\n  month = {mar},\n  pages = {2600–2606}\n}\n\n@misc{Weinberger2025what,\n\tauthor = {Weinberger, Julia and Yam, Steph},\n\ttitle = {Preregistering qualitative research: what, why, and how? – Open Science in applied linguistics and SLA},\n\turl = {https://elenlefoll.quarto.pub/os-linguistics2025/projects/Steph-Julia/qualprereg.html},\n\tyear = {},\n\tnote = {[Accessed 13-11-2025]}\n}\n\n@article{Farran2025openpractices,\n  title = {Open Research: Examples of good practice, and resources across disciplines (2025 edition)},\n  url = {https://doi.org/10.31219/osf.io/3r8hb},\n  DOI = {10.31219/osf.io/3r8hb},\n  journal = {OSF Preprints},\n  publisher = {Center for Open Science},\n  author = {Farran, Emily K. and Silverstein, Priya and Ameen, Aminath A. and Misheva, Iliana and Gilmore, Camilla},\n  year = {2025},\n}\n\n@article{Kovacs2024labmanual,\n  title = {Lab manuals for efficient and high quality science in a happy and safe work environment},\n  url = {https://osf.io/gtn63},\n  DOI = {10.31222/osf.io/bzcxg},\n  publisher = {Center for Open Science},\n  author = {Kovacs, Marton and Jaquiery, Matt and Algermissen, Johannes and Arriaga, Patrícia and Gau, Rémi Gau, and Gokce, Ahu and Grassi, Massimo and Kouros, Chrystyna D. and Yeung, Siu K. and Aczel, Balazs},\n  year = {2024},\n}\n\n@article{Chapman2005data,\n  title = {Principles of Data Quality, version 1.0. Report for the Global Biodiversity Information Facility, Copenhagen},\n  url = {https://doi.org/10.15468/doc.jrgg-a190},\n  DOI = {10.15468/doc.jrgg-a190},\n  publisher = {Global Biodiversity Information Facility, Copenhagen},\n  author = {Chapman, A.D.},\n  year = {2005},\n}\n\n@misc{filip2023hipaa,\n  author = {Filip, Alena},\n  title = {Data Management Handbook for Human Subjects Research},\n  year = {2023},\n  url = {https://www.sjsu.edu/research/docs/irb-data-management-handbook.pdf}\n}\n"
  },
  {
    "path": "book/website/reproducible-research/binderhub/binderhub-build.md",
    "content": "(rr-binderhub-build)=\n# Build your own BinderHub\n\n[mybinder.org](https://mybinder.org/) is the free, public BinderHub that hosts almost 100k Binder launches per week.\nWhy might you want to build your own?\n\nBinder [{term}`def<Binder>`] is an open source project maintained by volunteers and as such they ask that users stay within certain computational limitations in order to keep running costs as low as possible whilst still providing a usable service.\nBy hosting your own BinderHub, you can offer your users much more flexible and tailored resources.\n\nThese customisations could include:\n\n- authentication,\n- greater computational resources per user,\n- bespoke library stacks and packages,\n- allowing access to private repos,\n- persistent storage for users,\n- restrict sharing within a certain institution or team.\n\n## Issues you may face when deploying a BinderHub\n\nBinderHubs are becoming increasingly popular amongst universities and research institutes.\nThis is because they can facilitate multiple instances of the same set of notebooks for use in a tutorial or workshop setting.\n\nIf you are deploying a cloud-hosted BinderHub on behalf of your organisation, you may need specific permissions on your organisation's cloud platform subscription.\nWhich permissions you require will vary based on the cloud platform you have access to and your IT Services policies.\nAt minimum, you'll need to be able to assign [Role Based Access Control (RBAC)](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview) to your resources so they can act autonomously in order to manage user traffic.\n"
  },
  {
    "path": "book/website/reproducible-research/binderhub/binderhub-compute.md",
    "content": "(rr-binderhub-compute)=\n# Compute Resources\n\nBinderHub is cloud-neutral which means it can be deployed on any cloud platform.\nTherefore, the minimum requirement is a subscription to a cloud platform of your choosing.\n\nIn fact, BinderHub is not dependent on cloud-hosting at all and can be deployed onto an on-premise computing system.\n\n## Kubernetes\n\n[Kubernetes](https://kubernetes.io/) is a system for automating deployment, scaling (making more or fewer copies), and management of containers across a compute cluster (it doesn't have to be cloud-based).\nBinderHub uses Kubernetes to manage the resources requested by the users of the Binder service, and to support the tools that build the environments.\n\n## Helm\n\n[Helm](https://helm.sh/) is a package manager for Kubernetes.\nPackages come in the form of *Charts* which are a set of instructions to deploy, upgrade and manage applications running on a Kubernetes cluster.\nThey can make installing and managing Kubernetes applications much easier and specific Charts for projects can be published online.\nFor example, the Helm Chart for BinderHub is available [here](https://jupyterhub.github.io/helm-chart/#development-releases-binderhub).\n\n## repo2docker\n\n[repo2docker](https://repo2docker.readthedocs.io/en/latest/?badge=latest) is a tool that automatically builds a Docker image from a code repository given a configuration file.\nThis Docker image will contain all of the code, data and resources that are listed in the repository.\nAll the software required to run the code will also be preinstalled from the configuration file.\n\n## JupyterHub\n\n[JupyterHub](https://jupyter.org/hub) is a multi-user server for Jupyter Notebooks and containers alike.\nIn the context of Binder, the JupyterHub's main role is to connect the user's browser to the BinderHub instance running on the Kubernetes cluster.\nHowever, the JupyterHub can be further customised to provide greater control over the operation of the BinderHub.\n\nBinderHub can be thought of as thin layer that sits on top of repo2docker and JupyterHub, orchestrating their interactions and resolving URLs.\n\n## What happens when a Binder link is clicked?\n\n1. The link to the repository is resolved by BinderHub.\n2. BinderHub searches for a Docker image relating to the provided reference (for example, git commit hash, branch or tag).\n3. **If a Docker image is not found**, BinderHub requests resources from the Kubernetes cluster to run repo2docker to do the following:\n   - Fetch the repository,\n   - Build a Docker image containing the software requested in the configuration file,\n   - Push that image to the Docker registry.\n4. BinderHub sends the Docker image to JupyterHub.\n5. JupyterHub requests resources from the Kubernetes cluster to serve the Docker image.\n6. JupyterHub connects the user's browser to the running Docker environment.\n7. JupyterHub monitors the container for activity and destroys it after a period of inactivity.\n"
  },
  {
    "path": "book/website/reproducible-research/binderhub/binderhub-introduction.md",
    "content": "(rr-binderhub-inntroduction)=\n# Introduction to BinderHub\n\n[BinderHub](https://binderhub.readthedocs.io/en/latest/index.html) is a cloud-based technology that can launch a repository of code (from GitHub, GitLab, and others) in a browser window such that the code can be executed and interacted with.\nA unique URL is generated allowing the interactive code to be easily shared.\n\nThe purpose of these Binder instances is to promote reproducibility in research projects by encouraging researchers to document their software dependencies and produce fun, interactive environments!\n\nBinder, as a user interface, is useful for reproducibility because the code needs to be version controlled and the computational environment needs to be documented in order to benefit from the functionality of Binder.\nEach change to the code repository also forces a new build of the Binder instance.\nThis acts as a proxy for continuous integration of the computational environment as the Binder instance will break if the configuration file is not updated.\n\nLearn more about Continuous Integration {ref}`here<rr-ci>`.\n\n## How does a BinderHub work?\n\nBinderHub relies on different tools and resources in order to create and launch the Binder instances.\n\nFor more information, see this [high-level explanation of the BinderHub architecture](https://binderhub.readthedocs.io/en/latest/overview.html).\n"
  },
  {
    "path": "book/website/reproducible-research/binderhub/binderhub-resources.md",
    "content": "(rr-binderhub-resources)=\n# Resources\n\n## Further reading\n\n- [Binder documentation](https://mybinder.readthedocs.io/en/latest/)\n- [BinderHub documentation](https://binderhub.readthedocs.io/en/latest/index.html)\n- [Zero-to-JupyterHub with Kubernetes documentation](https://zero-to-jupyterhub.readthedocs.io/en/latest/index.html)\n- [JupyterHub documentation](https://jupyterhub.readthedocs.io/en/stable/)\n- [_The Turing Way_ Build a BinderHub Workshop](https://github.com/the-turing-way/build-a-BinderHub/blob/main/workshop-presentations/zero-to-binderhub.md)\n\n## References specific for this chapter\n\n- **Kubernetes documentation**: [https://kubernetes.io/](https://kubernetes.io/)\n- **Helm documentation**: [https://helm.sh/](https://helm.sh/)\n- **repo2docker**: [https://repo2docker.readthedocs.io/en/latest/?badge=latest](https://repo2docker.readthedocs.io/en/latest/?badge=latest)\n- **Microsoft Azure documentation on Role Based Access Control**: [https://docs.microsoft.com/en-us/azure/role-based-access-control/overview](https://docs.microsoft.com/en-us/azure/role-based-access-control/overview)\n"
  },
  {
    "path": "book/website/reproducible-research/binderhub.md",
    "content": "(rr-binderhub)=\n# BinderHub\n\n## Prerequisites/recommended skill level\n\n| Prerequisite | Importance |\n|---|---|\n| {ref}`Version Control<rr-vcs>` | Very Important |\n| {ref}`Reproducible Environments<rr-renv>` | Very Important |\n\nThis chapter will discuss [BinderHub](https://binderhub.readthedocs.io/en/latest/index.html), which is the cloud technology powering [Binder](https://mybinder.readthedocs.io/en/latest/).\nWe will cover the technologies and tools that BinderHub utilises and the resources you will need to setup your own BinderHub.\n\nThis chapter is primarily aimed at Research Software Engineers and IT Services who wish to provide a BinderHub as a service to a group of researchers.\nThough anyone can build a BinderHub.\n\n```{figure} ../../figures/binderhub.*\n---\nname: binderhub\nalt: A representation of the BinderHub architecture that involves GitHub, repo2docker, docker, jupyterhub and shipping to clients in company.\n---\nIllustration about BinderHub architecture.\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: 10.5281/zenodo.3332807.\n```\n\n## Motivation and Background\n\nReading this chapter will give you a clearer picture of how Binder services (such as [mybinder.org](https://mybinder.org)) operate, the technologies powering BinderHub and how they interact with one another.\nThis chapter also covers reasons why you might build your own BinderHub, rather than using the public service at mybinder.org.\n"
  },
  {
    "path": "book/website/reproducible-research/case-studies/case-study-statistical.md",
    "content": "(rr-cs-statistical-methods-manuscript)=\n# A Statistical Methods Manuscript\n\n## About this case study\n\nThe purpose of this case study is to discuss the different components of\nresearch reproducibility implemented in designing and conducting a\nstatistical study.\nWith the help of their manuscript, the authors provide a catalog of methods\nused in their research and cross-reference them to the respective\nsections discussed in this {ref}`rr`.\n\n## About the Manuscript\n\n- **Title:** A review of Bayesian perspectives on sample size derivation\nfor confirmatory trials{cite:ps}`Kunzmann2020CS`.\n- **Authors:** Kevin Kunzmann, Michael J. Grayling, Kim May Lee,\nDavid S. Robertson, Kaspar Rufibach, James M. S. Wason\n- **Publication month & year**: June 2020\n\n### Overview\n\nThe manuscript {cite:ps}`Kunzmann2020CS` itself is concerned with the problem of\nderiving a suitable sample size for a clinical trial.\nThis is a classical problem in statistics and particularly important in\nmedical statistics where collecting trial data is extremely expensive and\nethical considerations need to be addressed.\nThe manuscript reviews and extends methods to systematically incorporate\nplanning uncertainty into the sample size derivation.\n\n### Citation summary\n\nThe manuscript can be cited in plain text APA format:\n\n> Kunzmann, K., Grayling, M. J., Lee, K. M., Robertson, D. S., Rufibach, K., & Wason, J. (2020).\nA review of Bayesian perspectives on sample size derivation for confirmatory trials.\narXiv preprint arXiv:2006.15715.\n\nBibTeX format:\n\n```\n@article{\n    kunzmann2020,\n      title = {A review of Bayesian perspectives on sample size derivation for confirmatory trials},\n     author = {Kunzmann, Kevin and Grayling, Michael J and Lee, Kim May and Robertson, David S and Rufibach, Kaspar and Wason, James},\n    journal = {arXiv preprint arXiv:2006.15715},\n       year = {2020}\n}\n```\n\n## Catalog of different methods for reproducible research\n\n### Version control\n\nThe git repository\n[https://github.com/kkmann/sample-size-calculation-under-uncertainty](https://github.com/kkmann/sample-size-calculation-under-uncertainty)\ncontains all code required to produce the manuscript\n[arXiv:2006.15715](https://arxiv.org/abs/2006.15715)\nfrom scratch.\nFor an in-depth explanation of the importance of version control for\nreproducible research, see {ref}`Version Control Systems<rr-vcs>`.\n\n\n### Research data management\n\nIn this particular case,\n{ref}`data management <rr-rdm>` aspects are not an issue since the\nmanuscript is exclusively based on hypothetical examples and no\nexternal, protected data is required.\n\n\n#### Literate programming\n\nThe manuscript {cite:ps}`Kunzmann2020CS` itself is written in and built with\n[LaTeX](https://www.latex-project.org/).\nThe source files are contained in the subfolder `latex/`.\nPlain TeX files were preferred over literate programming solutions like\n[knitr](https://github.com/rstudio/rmarkdown) for [R](https://www.r-project.org/)\nto facilitate the use of dedicated LaTeX editors like [Overleaf](https://www.overleaf.com/project).\nThis means, however, that all figures used in the manuscript need to be\ncreated separately.\nA dedicated [Jupyter notebook](https://jupyter.org/)\n`notebooks/figures-for-manuscript.ipynb` combining code and rudimentary\ndescriptions are provided to that end.\n\n\n### Reproducible software environment\n\nAlthough this means that all code required to compile the manuscript from scratch\nis available in a self-contained environment,\nit is not yet sufficient for ensuring reproducibility.\nInstalling LaTeX, Jupyter, and R with the same specification\nneeded to run all code can still be challenging for less experienced users.\nTo avoid this from keeping interested readers from experimenting with the code,\na combination of the Python package\n[repo2docker](https://github.com/jupyter/repo2docker) and a free\n[BinderHub](https://mybinder.org/) hosting service is used.\nFor details on these techniques, see the chapters on {ref}`Binder<binder>` and {ref}`BinderHub<rr-binderhub>`.\nThis allows interested individuals to start an interactive version of the\nrepository with all required software preinstalled - in exactly the right\nversions!\nNote that it is possible to provide *version stable* binder links\n\n[![badge](https://img.shields.io/badge/Jupyter%20lab-0.2.1-579ACA.svg?logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFkAAABZCAMAAABi1XidAAAB8lBMVEX///9XmsrmZYH1olJXmsr1olJXmsrmZYH1olJXmsr1olJXmsrmZYH1olL1olJXmsr1olJXmsrmZYH1olL1olJXmsrmZYH1olJXmsr1olL1olJXmsrmZYH1olL1olJXmsrmZYH1olL1olL0nFf1olJXmsrmZYH1olJXmsq8dZb1olJXmsrmZYH1olJXmspXmspXmsr1olL1olJXmsrmZYH1olJXmsr1olL1olJXmsrmZYH1olL1olLeaIVXmsrmZYH1olL1olL1olJXmsrmZYH1olLna31Xmsr1olJXmsr1olJXmsrmZYH1olLqoVr1olJXmsr1olJXmsrmZYH1olL1olKkfaPobXvviGabgadXmsqThKuofKHmZ4Dobnr1olJXmsr1olJXmspXmsr1olJXmsrfZ4TuhWn1olL1olJXmsqBi7X1olJXmspZmslbmMhbmsdemsVfl8ZgmsNim8Jpk8F0m7R4m7F5nLB6jbh7jbiDirOEibOGnKaMhq+PnaCVg6qWg6qegKaff6WhnpKofKGtnomxeZy3noG6dZi+n3vCcpPDcpPGn3bLb4/Mb47UbIrVa4rYoGjdaIbeaIXhoWHmZYHobXvpcHjqdHXreHLroVrsfG/uhGnuh2bwj2Hxk17yl1vzmljzm1j0nlX1olL3AJXWAAAAbXRSTlMAEBAQHx8gICAuLjAwMDw9PUBAQEpQUFBXV1hgYGBkcHBwcXl8gICAgoiIkJCQlJicnJ2goKCmqK+wsLC4usDAwMjP0NDQ1NbW3Nzg4ODi5+3v8PDw8/T09PX29vb39/f5+fr7+/z8/Pz9/v7+zczCxgAABC5JREFUeAHN1ul3k0UUBvCb1CTVpmpaitAGSLSpSuKCLWpbTKNJFGlcSMAFF63iUmRccNG6gLbuxkXU66JAUef/9LSpmXnyLr3T5AO/rzl5zj137p136BISy44fKJXuGN/d19PUfYeO67Znqtf2KH33Id1psXoFdW30sPZ1sMvs2D060AHqws4FHeJojLZqnw53cmfvg+XR8mC0OEjuxrXEkX5ydeVJLVIlV0e10PXk5k7dYeHu7Cj1j+49uKg7uLU61tGLw1lq27ugQYlclHC4bgv7VQ+TAyj5Zc/UjsPvs1sd5cWryWObtvWT2EPa4rtnWW3JkpjggEpbOsPr7F7EyNewtpBIslA7p43HCsnwooXTEc3UmPmCNn5lrqTJxy6nRmcavGZVt/3Da2pD5NHvsOHJCrdc1G2r3DITpU7yic7w/7Rxnjc0kt5GC4djiv2Sz3Fb2iEZg41/ddsFDoyuYrIkmFehz0HR2thPgQqMyQYb2OtB0WxsZ3BeG3+wpRb1vzl2UYBog8FfGhttFKjtAclnZYrRo9ryG9uG/FZQU4AEg8ZE9LjGMzTmqKXPLnlWVnIlQQTvxJf8ip7VgjZjyVPrjw1te5otM7RmP7xm+sK2Gv9I8Gi++BRbEkR9EBw8zRUcKxwp73xkaLiqQb+kGduJTNHG72zcW9LoJgqQxpP3/Tj//c3yB0tqzaml05/+orHLksVO+95kX7/7qgJvnjlrfr2Ggsyx0eoy9uPzN5SPd86aXggOsEKW2Prz7du3VID3/tzs/sSRs2w7ovVHKtjrX2pd7ZMlTxAYfBAL9jiDwfLkq55Tm7ifhMlTGPyCAs7RFRhn47JnlcB9RM5T97ASuZXIcVNuUDIndpDbdsfrqsOppeXl5Y+XVKdjFCTh+zGaVuj0d9zy05PPK3QzBamxdwtTCrzyg/2Rvf2EstUjordGwa/kx9mSJLr8mLLtCW8HHGJc2R5hS219IiF6PnTusOqcMl57gm0Z8kanKMAQg0qSyuZfn7zItsbGyO9QlnxY0eCuD1XL2ys/MsrQhltE7Ug0uFOzufJFE2PxBo/YAx8XPPdDwWN0MrDRYIZF0mSMKCNHgaIVFoBbNoLJ7tEQDKxGF0kcLQimojCZopv0OkNOyWCCg9XMVAi7ARJzQdM2QUh0gmBozjc3Skg6dSBRqDGYSUOu66Zg+I2fNZs/M3/f/Grl/XnyF1Gw3VKCez0PN5IUfFLqvgUN4C0qNqYs5YhPL+aVZYDE4IpUk57oSFnJm4FyCqqOE0jhY2SMyLFoo56zyo6becOS5UVDdj7Vih0zp+tcMhwRpBeLyqtIjlJKAIZSbI8SGSF3k0pA3mR5tHuwPFoa7N7reoq2bqCsAk1HqCu5uvI1n6JuRXI+S1Mco54YmYTwcn6Aeic+kssXi8XpXC4V3t7/ADuTNKaQJdScAAAAAElFTkSuQmCC)](https://mybinder.org/v2/gh/kkmann/sample-size-calculation-under-uncertainty/0.2.1?urlpath=lab/tree/notebooks/figures-for-manuscript.ipynb) [![badge](https://img.shields.io/badge/Shiny-0.2.1-579ACA.svg?logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFkAAABZCAMAAABi1XidAAAB8lBMVEX///9XmsrmZYH1olJXmsr1olJXmsrmZYH1olJXmsr1olJXmsrmZYH1olL1olJXmsr1olJXmsrmZYH1olL1olJXmsrmZYH1olJXmsr1olL1olJXmsrmZYH1olL1olJXmsrmZYH1olL1olL0nFf1olJXmsrmZYH1olJXmsq8dZb1olJXmsrmZYH1olJXmspXmspXmsr1olL1olJXmsrmZYH1olJXmsr1olL1olJXmsrmZYH1olL1olLeaIVXmsrmZYH1olL1olL1olJXmsrmZYH1olLna31Xmsr1olJXmsr1olJXmsrmZYH1olLqoVr1olJXmsr1olJXmsrmZYH1olL1olKkfaPobXvviGabgadXmsqThKuofKHmZ4Dobnr1olJXmsr1olJXmspXmsr1olJXmsrfZ4TuhWn1olL1olJXmsqBi7X1olJXmspZmslbmMhbmsdemsVfl8ZgmsNim8Jpk8F0m7R4m7F5nLB6jbh7jbiDirOEibOGnKaMhq+PnaCVg6qWg6qegKaff6WhnpKofKGtnomxeZy3noG6dZi+n3vCcpPDcpPGn3bLb4/Mb47UbIrVa4rYoGjdaIbeaIXhoWHmZYHobXvpcHjqdHXreHLroVrsfG/uhGnuh2bwj2Hxk17yl1vzmljzm1j0nlX1olL3AJXWAAAAbXRSTlMAEBAQHx8gICAuLjAwMDw9PUBAQEpQUFBXV1hgYGBkcHBwcXl8gICAgoiIkJCQlJicnJ2goKCmqK+wsLC4usDAwMjP0NDQ1NbW3Nzg4ODi5+3v8PDw8/T09PX29vb39/f5+fr7+/z8/Pz9/v7+zczCxgAABC5JREFUeAHN1ul3k0UUBvCb1CTVpmpaitAGSLSpSuKCLWpbTKNJFGlcSMAFF63iUmRccNG6gLbuxkXU66JAUef/9LSpmXnyLr3T5AO/rzl5zj137p136BISy44fKJXuGN/d19PUfYeO67Znqtf2KH33Id1psXoFdW30sPZ1sMvs2D060AHqws4FHeJojLZqnw53cmfvg+XR8mC0OEjuxrXEkX5ydeVJLVIlV0e10PXk5k7dYeHu7Cj1j+49uKg7uLU61tGLw1lq27ugQYlclHC4bgv7VQ+TAyj5Zc/UjsPvs1sd5cWryWObtvWT2EPa4rtnWW3JkpjggEpbOsPr7F7EyNewtpBIslA7p43HCsnwooXTEc3UmPmCNn5lrqTJxy6nRmcavGZVt/3Da2pD5NHvsOHJCrdc1G2r3DITpU7yic7w/7Rxnjc0kt5GC4djiv2Sz3Fb2iEZg41/ddsFDoyuYrIkmFehz0HR2thPgQqMyQYb2OtB0WxsZ3BeG3+wpRb1vzl2UYBog8FfGhttFKjtAclnZYrRo9ryG9uG/FZQU4AEg8ZE9LjGMzTmqKXPLnlWVnIlQQTvxJf8ip7VgjZjyVPrjw1te5otM7RmP7xm+sK2Gv9I8Gi++BRbEkR9EBw8zRUcKxwp73xkaLiqQb+kGduJTNHG72zcW9LoJgqQxpP3/Tj//c3yB0tqzaml05/+orHLksVO+95kX7/7qgJvnjlrfr2Ggsyx0eoy9uPzN5SPd86aXggOsEKW2Prz7du3VID3/tzs/sSRs2w7ovVHKtjrX2pd7ZMlTxAYfBAL9jiDwfLkq55Tm7ifhMlTGPyCAs7RFRhn47JnlcB9RM5T97ASuZXIcVNuUDIndpDbdsfrqsOppeXl5Y+XVKdjFCTh+zGaVuj0d9zy05PPK3QzBamxdwtTCrzyg/2Rvf2EstUjordGwa/kx9mSJLr8mLLtCW8HHGJc2R5hS219IiF6PnTusOqcMl57gm0Z8kanKMAQg0qSyuZfn7zItsbGyO9QlnxY0eCuD1XL2ys/MsrQhltE7Ug0uFOzufJFE2PxBo/YAx8XPPdDwWN0MrDRYIZF0mSMKCNHgaIVFoBbNoLJ7tEQDKxGF0kcLQimojCZopv0OkNOyWCCg9XMVAi7ARJzQdM2QUh0gmBozjc3Skg6dSBRqDGYSUOu66Zg+I2fNZs/M3/f/Grl/XnyF1Gw3VKCez0PN5IUfFLqvgUN4C0qNqYs5YhPL+aVZYDE4IpUk57oSFnJm4FyCqqOE0jhY2SMyLFoo56zyo6becOS5UVDdj7Vih0zp+tcMhwRpBeLyqtIjlJKAIZSbI8SGSF3k0pA3mR5tHuwPFoa7N7reoq2bqCsAk1HqCu5uvI1n6JuRXI+S1Mco54YmYTwcn6Aeic+kssXi8XpXC4V3t7/ADuTNKaQJdScAAAAAElFTkSuQmCC)](https://mybinder.org/v2/gh/kkmann/sample-size-calculation-under-uncertainty/0.2.1?urlpath=shiny/apps/sample-size-calculation-under-uncertainty/)\n\nThis badge points to the state of the repository at a specific point in time (via\nthe git tagging feature).\nThis means that the links will remain valid and unchanged even if there are\nlater corrections to the contents of the repository!\nBinder supports multiple user interfaces.\nThis is leveraged to provide and Jupyter lab Integrated Development Environment\nview on the repository to explore file, the Jupyter notebook, or to open a shell for\nfurther commands.\nThe second badge directly opens an interactive Shiny app that illustrates\nsome of the points discussed in the manuscript and requires no familiarity with\nprogramming at all.\nAll relevant configurations for Binder are located in the subfolder `.binder`.\n\n\n### Workflow management using Snakemake\n\nSince JupyterLab also allows to open a shell in the repository instance opened\nusing a Binder link,\nanother feature of the repository can be used to reproduce the *entire manuscript from scratch*.\nThe Python workflow manager [Snakemake](https://snakemake.readthedocs.io/en/stable/)\nwas used to define all required steps in a `Snakefile`.\nTo execute this workflow,\nyou can open a shell in the [online version of JupyterHub](https://mybinder.org/v2/gh/kkmann/sample-size-calculation-under-uncertainty/0.2.1?urlpath=shiny/apps/sample-size-calculation-under-uncertainty/).\nOnce the user interface finished loading, open a new terminal and type\n```\nsnakemake -F --cores 1  manuscript\n```\nThis will execute all the required steps in turn:\n\n1. create all plots by executing the Jupyter notebook file\n2. compiling the actual `latex/main.pdf` file from the LaTeX sources\n\nYou should then see a `main.pdf` file in the `latex` subfolder.\n\n\n### Support for local instantiation of the software environment\n\nThe Python package repo2docker can also be used locally to reproduce the\nsame computing environment.\nTo this end, you will need to have Python and Docker installed.\nFor details on Docker and container technologies in general,\nplease see the chapter on {ref}`reproducible environments and containers<rr-renv-containers>`.\nThen simply clone the repository on your local machine using the commands\n```\ngit clone git@github.com:kkmann/sample-size-calculation-under-uncertainty.git\ncd sample-size-calculation-under-uncertainty\n```\nAfter cloning the repository,\nyou can build and run a Docker container locally using the configuration files\nprovided in the `.binder/` folder using the following command\n```\njupyter-repo2docker -E .\n```\nThe container is started automatically after the build completes and you can\nuse the usual Jupyter interface in your browser\nby following the link printed by repo2docker\nto explore the repository locally.\n\n\n### Use of continuous integration\n\nAlthough not necessary for the reproducibility of this manuscript,\nthe repository also makes use of continuous integration ({ref}`CI <rr-ci>`)\nusing [GitHub actions](https://github.com/features/actions).\nGitHub actions runners are provided directly from GitHub (see `rr-ci-github-actions`).\n\nThe repository defines two workflows in `.github/workflows` directory.\nThe first one, [`.github/workflows/build_and_run.yml`](https://github.com/kkmann/sample-size-calculation-under-uncertainty/blob/master/.github/workflows/build_and_run.yml),\nis activated whenever the master branch of the repository is updated and the specifications in `.binder` are changed.\nThis builds the container, pushes it to a public container repository [docker hub](https://hub.docker.com/repository/docker/kkmann/sample-size-calculation-under-uncertainty), and then checks that the Snakemake workflow runs through without problems.\nThe second one, [`.github/workflows/run.yml`](https://github.com/kkmann/sample-size-calculation-under-uncertainty/blob/master/.github/workflows/run.yml),\nruns when the folder `.binder` was not changed and uses the pre-built\nDocker container to run the Snakemake workflow.\nThe latter saves a lot of computing time since the computational\nenvironment will change much less often than the contents of the repository.\nThe use of CI thus facilitates checking contributions by pull requests for\ntechnical integrity and makes the respective latest version of the required container\navailable for direct download.\nThis means that instead of building the container locally using repo2docker you could thus just\ndownload it directly and execute the workflow using the following commands\n```\ndocker run -d --name mycontainer kkmann/sample-size-calculation-under-uncertainty\ndocker exec --name mycontainer /\n    snakemake -F --cores 1  manuscript\n```\n\n### Long term archiving and citability\n\nThe GitHub repository is also linked with [zenodo.org](https://zenodo.org/) to ensure long-term\narchiving, see {ref}`cm-citable-cite-software`\n\n[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3899943.svg)](https://doi.org/10.5281/zenodo.3899943)\n\nNote that a DOI provided by Zenodo can also be used with BinderHub to turn a\nrepository snapshot backed up on Zenodo in an interactive environment\n([see this blog post](https://blog.jupyter.org/binder-with-zenodo-af68ed6648a6)).\n"
  },
  {
    "path": "book/website/reproducible-research/case-studies.md",
    "content": "(rr-case-studies)=\n# Case Studies: Reproducible Research\n\n## Prerequisites / recommended skill level\n\nThis chapter assumes familiarity with several topics covered in this {ref}`rr`.\nSince not all examples will demonstrate the use of the same combinations of methods covered in this guide, the prerequisite and skill level will vary across the case studies.\nTherefore, we recommend the authors to indicate those skills for each case study separately.\n\n## Summary\n\nIn this chapter, a selection of case studies is presented that can be used to\nsee how reproducible research methods are used in practice and applied across fields.\nIf you think that you might have an example to contribute yourself, feel free\nto open an issue at [here](https://github.com/the-turing-way/the-turing-way/issues).\n\n## Motivation and Background\n\nLearning by example can be an effective way to learn new concepts.\nMaybe you can start your personal project by adapting one of the examples\nto your needs?\n"
  },
  {
    "path": "book/website/reproducible-research/ci/ci-building-gh-actions.md",
    "content": "(rr-ci-building-gh-actions)=\n# Building a Block of a Github Actions\n\nAs described previously, workflow files use YAML syntax, which has either a `.yml` or `.yaml` file extension.\nIf you're new to YAML and want to learn more, {ref}`see our section about YAML<rr-renv-yaml>`.\nThis workflow files must be stored in the `.github/workflows` directory of your repository.\n\nEach workflow is defined in a separate YAML. We will introduce the building block of a workflow using Hello World Example:\n\n```\nname:\n    Hello World package\non:\n  push:\n    branches: [ main ]\nJobs:\n  build:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions/checkout@v3\n```  \n\n**1. name**\n\nThis is the name of the workflow and it is optional. GitHub will use this name to be displayed on the repository's actions page.\n```\nname:\n    Hello World package\n```\n\n**2. on**\n\nThe `on` field tells GHA when to run. For example, we can run the workflow anytime there's a `push` or a `pull` on the `main` branch.\n```\non:\n  push:\n    branches: [ main ]\n  pull_request:\n    branches: [ main ]\n```\nThere are many events which can be used to trigger a workflow. You can explore them [here](https://docs.github.com/en/free-pro-team@latest/actions/reference/workflow-syntax-for-github-actions).\n\n**3. jobs and steps**\n\nThis block defines the core component of an Action workflow. Workflows are made of `jobs`.\nEvery job also needs a specific host machine on which to run, the `runs-on:` field is how we specify it.\nThe template workflow is running the `build` job in the latest version of Ubuntu, a Linux-based operating system.\n\n```\njobs:\n  build:\n  runs-on: ubuntu-latest\n```\n\nWe can also separate the `build` and `test` functions of our workflow into more than one job that will run when our workflow is triggered. Jobs are made of `steps`.\nThese allow you define what to run in each job.\nThere are three ways to define steps.\n\n- With `uses`\n- With `run`\n- With `name`\n\n```\n\njobs:\n  build:\n    runs-on: ubuntu-latest\n    steps:\n    - uses: actions/checkout@v3\n  test:\n    steps:\n    - name: npm install\n      run: |\n        npm install\n        npm test\n```\n\nThe most basic action is `actions/checkout@v3`.\nThis uses a GitHub provided action called [`checkout`](https://github.com/actions/checkout) to allow the workflow to access the contents of the repository.\nAll the steps of a job run sequentially on the runner associated with the job.\nBy default, if a step fails, the subsequent steps of the job are skipped. Each run keyword represents a new process and shell in the runner environment.\nWhen you provide multi-line commands, each line runs in the same shell.\n\nProviding a comprehensive guide of all the available options is beyond the scope of this overview, and instead, we would urge you to study [official reference documentation](https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions) and/or the CI configuration open-source projects references in the previous section.\n"
  },
  {
    "path": "book/website/reproducible-research/ci/ci-github-actions.md",
    "content": "(rr-ci-github-actions)=\n# Continuous Integration with GitHub Actions\n\nThis section will walk you through the basic setup of continuous integration (CI) using **GitHub Actions (GHA)**. GHA is a task automation system fully integrated with GitHub. In other words, it is an API that orchestrates any workflow based on any event. Although there are many CI service providers, GHA makes it easier than ever to incorporate CI into your repositories. It provides a flexible way to automate nearly every aspect of your project workflow. Here are just a few examples of use cases of GitHub Actions:\n\n- Automated testing of the software\n- Generate reports of the status of any changes in the repository\n- Responding to workflow triggers using labels, issues, special mentions, and more\n- Triggering code reviews and pull requests\n- Managing branches\n\nGitHub Actions are event-driven, which means it responds to any event (Examples: pull request (PR) created, issue created) and triggers an action (Examples: adds a label, runs tests, sort). Any collection of these actions is called a workflow. A more detailed description of this GitHub-related Vocabulary is described in the next section.\n\n```{figure} ../../../figures/github-actions.*\n---\nwidth: 700px\nalign: center\nname: Github actions\nalt: A diagram describing how GitHub action listen to an event (for example, `PR` created, issue created, PR merged) and then trigger a job which can be testing, sorting, labelling or deployment.\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n## GitHub-related Vocabulary\n\n### 1. WorkFlow\n\n**The workflow** is a unit of automation from start to finish. It consists of all the aspects which should be taken into account during the automation including what event can trigger the automation. The workflow can be used to build, test, package, release, or deploy a project on GitHub. It is made of multiple jobs which is formed from steps as shown in the overview diagram below.\n\n```{figure} ../../../figures/ci-01.*\n---\nname: ContinuousIntegration-Nov20\nalt: An illustration of how continuous integration works with multiple jobs and actions working alongside each other to feed into an illustration of steps to show merging into the main version.\n---\nOn the left: _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807). On the right: Overview diagram of the most important concepts of GitHub Actions, adapted from [morioh.com](https://morioh.com/p/aadcfe6cac57).\n```\n\n### 2. Job\n\nA **job** is defined as a set of sequential steps run on the same runner. A workflow can build up of one or several jobs, and can be run either parallel (default) or sequentially.\n\n### 3. Step\n\nA **step** represents one individual task. A step could be either an action or another command unit, like running a Python script or printing something to the console.\n\n### 4. Actions\n\nA GitHub **Action** is a piece of automation written in a way that is compatible with workflows. Actions can be written by [GitHub](https://github.com/actions), by the open source [community](https://github.com/sdras/awesome-actions), or you can write them yourself!\n\n## Getting started with GitHub Action\n\nGitHub Actions uses YAML syntax and stored in a directory called `.github/workflows` in the repository. You can either use a templated workflow or create your own.\n\n\n### 1- Using GitHub Actions template\n\nIf you want to get started with GitHub Actions, you can start by clicking the \"Actions\" tab in the repository where you want to create a workflow, as shown below. Under the \"Actions\" tab, you will find popular CI workflows, which can help deploy or automate some tasks in the repository.\n\n```{figure} ../../../figures/gifs/start_ghactions.gif\n---\nwidth: 600px\nalign: center\nname: GitHub action template\nalt: A gif showing where you can find GitHub Actions template in your Github repo.\n---\n```\nYou can choose any of these starter workflows and customise them further.  An explanation for building blocks within the workflow is described in a later section.\n\n\n### 2- Using libraries-specific templates.\n\n\nGithub Action template is not the only starter kit available; there are libraries-specific templates for the language of interest. For example, you can  use  {usethis} package in R to create a template for R packages by running `usethis::use_github_action_check_standard()`. This will generate GitHub Actions to run CRAN checks after every commit or pull request. That’s all you have to do!\n\n\n### 3- Using the configuration of other projects as inspiration\n\nMany well maintained open source libraries and estableshed projects use GitHub Actions for their CI.\nHave a look at the checks lists on pull requests of these projects for inspiration and ideas;\nfollowing by checking out their CI configuration files.\nIn most cases their licence will allow to copy the bits that would work for your case.\nThe advantage of this approach is to use some approaches that are already working.\n\nFor example:\n\n- The Turing Way workflow to [build the Turing Way book and to provide a preview for the pull requests](https://github.com/the-turing-way/the-turing-way/blob/main/.github/workflows/ci.yml)\n- A matrix of tests on [3 operating systems and multiple Python versions for the Python package NetworkX](https://github.com/networkx/networkx/blob/main/.github/workflows/test.yml)\n- A more complex setup of testing the [build in multiple circumstances for the Python package Numpy](https://github.com/numpy/numpy/blob/main/.github/workflows/build_test.yml)\n\n\nIn the next section, we will explain building blocks for the workflow.\n\n<!-- (I'll explain each vocab separately using diagrams made with adobe illustrator) -->\n"
  },
  {
    "path": "book/website/reproducible-research/ci/ci-options.md",
    "content": "(rr-ci-options)=\n# What is continuous integration?\n\nContinuous integration (CI) is the practice of integrating changes to a project made by individuals into a main, shared version frequently (usually multiple times per day). CI software is also typically used to identify any conflicts and bugs that are introduced by changes, so they are found and fixed early, minimising the effort required to do so. Running tests regularly also saves humans from needing to do it manually. By making users aware of bugs as early as possible researchers (if the project is a research project) do not waste a lot of time doing work that may need to be thrown away, which may be the case if tests are run infrequently and results are produced using faulty code.\n\nThis chapter demands a strong understanding of version control. The central concepts you will need to recall are:\n\n- How it can be used to enable people collaborating on a single project to combine their work via merging\n- What merge conflicts are and the difficulties they can present\n- What GitHub is and how to use it\n\nIn brief if a group of researchers are collaborating on a project it is good practice for them to use version control to keep track of their changes over time, and combine their work regularly. If they do not combine (integrate) their work regularly then when they come to do so it is likely to be very difficult as different people may have made contradictory changes.\n\nContinuous Integration is a software development practice where members of a team integrate their work frequently, rather than doing work in isolation and merging in large changes at infrequent intervals. In CI usually each person integrates at least daily. Each integration is verified by an automated build (usually including tests) to detect integration errors as quickly as possible.\n\nThe idea is to minimize the cost of integration by making it an early consideration. Researchers can discover conflicts at the boundaries between new and existing code early, while they are still relatively easy to reconcile. Once the conflict is resolved, work can continue with confidence that the new code honours the requirements of the existing codebase. The goal is to build healthier software by developing and testing in smaller increments. Many teams find that this approach leads to significantly reduced integration problems and allows a team to develop more rapidly.\n\nIntegrating code frequently does not, by itself, offer any guarantees about the quality of the new code or functionality. This leads us to the second aspect of CI. When a developer merges code into the main repository, automated processes build a working version of the project. Afterwards, test suites are run against the new build to check whether any bugs were introduced. If either the build or the test phase fails, the team is alerted so that they can work to fix the problem. It is easier to fix a bug in something you wrote a few minutes ago than something you wrote yesterday (or last week, or last month).\n\nBy ensuring that your code is built and tested regularly CI helps researchers to demonstrate that their code does what it claims to do, and that it does so correctly. Typically, continuous integration servers will also allow build-and-test jobs to run at specific times, so a [cron job](https://en.wikipedia.org/wiki/Cron), nightly-build-and-test, can be done, as well as a build-and-test job run on-demand.\n\n\n## Some options for CI service providers, covering the most often used ones\n\nThere are many CI service providers readily available, providing free access for open, public projects. Each of these\nservices however has its own advantages and disadvantages.  In this section we provide a brief overview with links to\nexamples to help you select the most suitable one for you.  Alternatively a few systems also provide the option of self-hosting.\n\n - [GitHub Actions](https://help.github.com/en/actions), for some examples see the [language and framework guides](https://help.github.com/en/actions/language-and-framework-guides) and [this tutorial](https://github.com/NLESC-JCER/ci_for_science#-github-actions).\n - [GitLab CI](https://docs.gitlab.com/ee/ci/), for some examples the [GitLab CI examples](https://docs.gitlab.com/ee/ci/examples/README.html) and [this tutorial](https://github.com/NLESC-JCER/ci_for_science#-gitlab-ci).\n - [Azure Pipelines](https://azure.microsoft.com/en-us/services/devops/pipelines/), for some examples see the [ecosystem support page](https://docs.microsoft.com/en-us/azure/devops/pipelines/ecosystems/?view=azure-devops) and [this tutorial](https://github.com/trallard/ci-research).\n - [Circle CI](https://circleci.com/), for getting started visit [this circleCI project tutorial](https://circleci.com/docs/2.0/project-walkthrough/) or [these shorter \"Hello World\" examples](https://circleci.com/docs/2.0/hello-world/).\n - [Jenkins](https://www.jenkins.io/), for some examples the see [this tutorial](https://www.jenkins.io/doc/tutorials/)\n - [Travis CI](https://travis-ci.com/), for some examples the [Travis tutorial](https://docs.travis-ci.com/user/tutorial/).\n\n\nA more extensive list of CI service providers can be found in [this guide](https://www.software.ac.uk/resources/guides/hosted-continuous-integration)\nprovided by the Software Sustainability Institute.\n"
  },
  {
    "path": "book/website/reproducible-research/ci/ci-practices.md",
    "content": "(rr-ci-practices)=\n# Best Practices and Recommendations\n\n## Small, iterative changes\n\nOne of the most important practices when adopting continuous integration is to encourage project members to make and commit small changes. Small changes minimise the possibility and impact of problems cropping up when they're integrated, which minimises the time and effort cost of integration.\n\n## Trunk-based development\n\nWith trunk-based development, work is done in the main branch of the repository or merged back into the shared repository at frequent intervals. Short-lived feature branches are permissible as long as they represent small changes and are merged back as soon as possible.\n\nThe idea behind trunk-based development is to avoid large commits that violate of concept of small, iterative changes discussed above. Code is available to peers early so that conflicts can be resolved when their scope is small.\n\n## Keep the building and testing phases fast\n\nBecause the build and test steps must be performed frequently, it is essential that these processes be streamlined to minimise the time spent on them. Increases in build time should be treated as a major problem because the impact is compounded by the fact that each commit kicks off a build.\n\nWhen possible, running different sections of the test suite in parallel can help move the build through the pipeline faster. Care should also be taken to make sure the proportion of each type of test makes sense. Unit tests are typically very fast and have minimal maintenance overhead. In contrast, automated system or acceptance testing is often complex and prone to breakage. To account for this, it is often a good idea to rely heavily on unit tests, conduct a fair number of integration tests, and then back off on the number of later, more complex testing.\n\n## Computational expense\n\nSome software will require significant compute resource to build and/or run. Examples include weather and climate models. This can make the use of continuous integration impractical as the tests either take too long or use too much resource. Therefore, a compromise needs to be found to balance the risk of incomplete testing against a usable development process.\n\nOne approach is to use different levels of testing, with different subgroups being required depending on what is being changed. A common broad subgroup can be used in every case, with additional ones being invoked to test certain areas in more detail. This introduces an element of judgement to the testing process, but can be applied successfully.\n\n## Dependencies tracking\n\nChecking for dependency updates should be done regularly. It can save a lot of time, avoiding bugs due to code dependent on deprecated functionality. Services such as [David](https://david-dm.org/) are available for dependency management.\n\n## Consistency throughout the pipeline\n\nA project should be built once at the beginning of the pipeline, the resulting software should be stored and accessible to later processes without rebuilding. By using the exact same artefact in each phase, you can be certain that you are not introducing inconsistencies as a result of different build tools.\n"
  },
  {
    "path": "book/website/reproducible-research/ci/ci-resources.md",
    "content": "(rr-ci-resources)=\n# Checklist and Resources\n\n## Checklist\n\n- Have a project that you collaborate on with at least one other person\n- Put the project on GitHub\n- Have project members regularly commit their work to this central repository\n- That project should have at least some tests\n- Write a `ci.yml` file which:\n  - Must be inside `.github/workflows`\n  - Define the name of the GitHub event that triggers the workflow using `on` key on the YMAL.\n  - Defines a specific host machine on which to run the job using `jobs` and `runs-on`.\n  - Includes code to install any dependencies required to run the project in a before_install step\n  - Contains a script to run the project tests\n- Commit the `ci.yml` file to the project's GitHub repository\n- Each time a new commit is pushed CI will run the tests and return the results. If these report that a commit causes test/tests to fail then find and fix the problem as soon as possible\n\n## What to learn next\n\nIf you have not already read the testing chapter it is suggested to do so to learn more about the different kinds of tests and their benefits in order to make the most of CI.\n\n## Definitions/glossary\n\n**Continuous integration:** The process of regularly combining the work of project members into a centralised version. Also called CI. CI software typically runs tests on the integrated version of a project to identify conflicts and bugs introduced by the integration.\n\n**Build:** A group of jobs. For example, a build might have two jobs, each of which tests a project with a different version of a programming language. A build finishes when all of its jobs are finished.\n\n**Computational environment:** The environment where a project is run, including the operating system, the software installed on it, and the versions of both.\n\n**GitHub:** A widely used version control platform.\n\n**GitHub Actions:** It is a CI/CD service that runs on GitHub repos.\n\n**Workflows** They are YAML files stored in the _.github/workflows_ directory of a repository.\n\n**Action** It is a package you can import and use in your **workflow**. GitHub provides an **[Actions Marketplace](https://github.com/marketplace?type=actions)** to find actions to use in workflows.\n\n**Job** It is a virtual machine that runs a series of **steps**. **Jobs** are parallelized by default, but **steps** are sequential by default.\n\n## Practical Tutorials\n\n- To get you started with GitHub Actions, Padok provides [a hand-on tutorial](https://github.com/padok-team/github-actions-tutorial) where you can build a workflow that automatically tests, builds, releases, and deploys a simple microservice.\n- GitHub Learning Lab also offers an interactive guide for [practical projects to learn GitHub actions](https://lab.github.com/githubtraining/github-actions:-continuous-integration).\n\n## References\n\n- [What is CI](https://github.com/travis-ci/docs-travis-ci-com/blob/master/user/for-beginners.md) **MIT**\n- [SSI blog](https://software.ac.uk/using-continuous-integration-build-and-test-your-software?_ga=2.231776223.1391442519.1547641475-1644026160.1541158284) **Creative Commons Attribution Non-Commercial 2.5 License**\n- [The difference between continuous integration, continuous deployment, and continuous delivery](https://www.digitalocean.com/community/tutorials/an-introduction-to-continuous-integration-delivery-and-deployment) **Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.**\n- [CI with python](https://docs.python-guide.org/scenarios/ci/) **Attribution-NonCommercial-ShareAlike 3.0 Unported**\n- [Getting started with GitHub Actions: concepts and tutorial](https://www.padok.fr/en/blog/github-actions)\n- [CI/CD tutorial using GitHub Actions](https://dev.to/michaelcurrin/intro-tutorial-to-ci-cd-with-github-actions-2ba8)\n- [Creating a Docker container action](https://docs.github.com/en/actions/creating-actions/creating-a-docker-container-action)\n\n### Materials used: What is Github actions and how does it work?\n\n- [GitHub Actions Cheat Sheet](https://resources.github.com/whitepapers/GitHub-Actions-Cheat-sheet/)\n- [GitHub docs: Actions - Core concepts](https://docs.github.com/en/actions/getting-started-with-github-actions/core-concepts-for-github-actions)\n- [GitHub docs: Actions - Configuring and managing workflows](https://docs.github.com/en/actions/configuring-and-managing-workflows)\n\n## Acknowledgements\n\nThanks to David Jones of the University of Sheffield RSE group for useful discussions.\n"
  },
  {
    "path": "book/website/reproducible-research/ci.md",
    "content": "(rr-ci)=\n# Continuous integration\n\n| Prerequisite | Importance | Notes |\n| -------------|------------|-------|\n| {ref}`Experience with the command line<rr-overview-resources-commandline>` | Necessary | Continuous integration will follow command line instructions\n| {ref}`Version control<rr-vcs>` | Necessary | Continuous integration runs every time a new _commit_ is made to your project |\n| {ref}`Reproducible computational environments<rr-renv>` | Necessary | Continuous integration runs your tests on a separate computer (usually in the cloud) so you need to set it up in the same way. |\n| {ref}`Testing<rr-testing>` | Very helpful | Continuous integration _tests_ if anything important has changed when you make a change in your project |\n\n## Summary\n\nContinuous integration (CI) is the practice of integrating changes to a project made by individuals into a main, shared version frequently (usually multiple times per day). CI software is also typically used to identify any conflicts and bugs that are introduced by changes, so they are found and fixed early, minimising the effort required to do so. Running tests regularly also saves humans from needing to do it manually. By making users aware of bugs as early as possible researchers (if the project is a research project) do not waste a lot of time doing work that may need to be thrown away, which may be the case if tests are run infrequently and results are produced using faulty code.\n\n```{figure} ../../figures/continuous-integration-may19.*\n---\nheight: 500px\nname: continuous-integration-may19\nalt: A sketch showing how continuous integration helps developers plan, design, integrate code into a shared repository, and then observe the influence of any changes.\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n## Motivation and Background\n\nCI has a number of key benefits:\n\n- Helps bugs to be found early, minimising their damage and making them easier to fix\n- Keeps project contributors up to date with each other's work so they can benefit from it as soon as possible\n- Encourages users to write tests\n- Automates running of tests\n- Ensures tests are run frequently\n"
  },
  {
    "path": "book/website/reproducible-research/code-documentation/code-documentation-code.md",
    "content": "(rr-documentation-code)=\n# Code documentation\n\nIt is a good practice to document the source code of software regardless of how time consuming it may be. \nThe goal of code documentation is to provide context and explanations for the source code. \nThis way others can understand why a piece of software exists, how it was built and how to use it or reuse it.\n\n## Extended Software Documentation\n\nDocumenting software may require you to prepare extensive descriptions of the key aspects of software, \nsuch as explanations about how to start using the software, or examples of how to use the software for particular tasks. \nWhat to document will be different for each software, and how to document it will be different for each audience.   \nBelow, there is guidance on how writing extended software documentation can be approached.\n\n(divio-documentation-system)=\n### Diataxis Documentation Framework\nWhen extended documentation is necessary, common questions are: What to document? and \nHow to organise documentation concisely?\nTo answer such questions, Daniele Procida proposed the [Diátaxis documentation framework](https://diataxis.fr/) to organise software documentation.\nThe system distinguishes between four types of documentation: tutorials, how-to guides, explanation and reference.\n\n* **Tutorials** aim to teach others how to use the software by describing things step by step.\nFor example, how to navigate the graphical interface of software $X$.\n* **How-to guides** describe the specific steps required to solve particular problems with the software in question.\nFor example, how to find research dataset $A$ in the data archive $B$, using software $X$.\n* **Explanations** aim to create understanding by providing context to relevant topics for the software.\nFor example, if software $X$ implements a [quickSort algorithm](https://www.geeksforgeeks.org/quick-sort/) to find a value in a lists of integers,\nit might be relevant to include an explanation about why that algorithm was chosen and how such algorithm operates.\n* **Reference guides** describe the code and how to use it. \nThey should include  descriptions of functions, fields, attributes, methods and APIs, and how to use them.\nFor example, if software $X$ includes a function $S$ that adds two numbers. \nA reference guide for $S$ should describe what inputs it expects, what outputs it produces and in which cases it can or cannot be used. \n\n### User's Documentation vs. Developer's Documentation\n\nAnother way to think about software documentation is to distinguish between the documentation for the end user of the software, \nand the documentation oriented to describe the insides of the software to other developers. \nThis approach for organising documentation is simpler than [Divios Documentation System](#divio-documentation-system), \nbut it does not offer further guidance about how to distinguish which aspects of software documentation are relevant for an end user and which are relevant for a developer. \nIt is up to the developer's experience to decide what content is relevant and for whom.\nThe table below offers some examples on what might be included as user and developer documentation.\n\n| User Documentation | Developer Documentation |\n|----------|----------|\n| Installation instructions  | Development setup  |\n| Default settings  | How to run tests  |s\n| Tutorials | Development roadmap |\n\n> Regardless of which approach is used to document software. The bottom line is 'some documentation is better than no documentation'\n\n## Code Comments \n\nSome software documentation can be written directly as part of the source code using **code comments**.\nCode comments can be included as *block comments* or *inline comments*. \nThey are used to explain what some pieces of code do, or to explain why something in the code was done in a particular way. \nA good practice is to comment only what is necessary, and not to aim to comment each single line of code. \n\nHow to write code comments depends on the programming language and the codinging styles that one wants to follow. These are some references relevant for writing code comments.\n\n- [Best practices for writing code comments](https://stackoverflow.blog/2021/12/23/best-practices-for-writing-code-comments/)\n- [Docstrings Converntions for Python](https://peps.python.org/pep-0257/)\n- [Creating docstrings in R](https://josephcrispell.github.io/2021/07/26/creating-R-docstring.html)\n- [](#rr-code-quality-readability)\n"
  },
  {
    "path": "book/website/reproducible-research/code-documentation/code-documentation-project.md",
    "content": "(rr-project-documentation)=\n# Project Documentation\n\nProject documentation describes aspects of a software project that are important for managing and tracking the development of software. \nAnd also aspects such as {ref}`rr-licensing` and citations. \n\nProject documentation should include the following:\n\n## README\n\nA README file is ```\n*\"a text file that introduces and explains a project. It contains information that is commonly required to understand what the project is about.\"* \nThe [make a README](https://www.makeareadme.com/) website provides guidance on how to write a good README file.\n\n## Contributing Guidelines\n\nA contributing file describes how people can contribute to the development of software. \nContributing guidelines are very important in open-source software projects. \nThe {ref}`cl` provides information on the many aspects relevant for contributing guidelines, \nand this is a [template for a contributing file](https://github.com/jessesquires/.github/blob/main/CONTRIBUTING.md) used in GitHub.\n\n## Roadmap\n\nA roadmap provides an overview of the current and future development plans. \nLetting potential users know about the development plan is essential because they can be aware of when to expect new features,\nwhat functionality is expected to be removed, \nand how changes are being made to the software actively. \nFor developers, a roadmap is essential because they can quickly identify parts of the software they can work on without duplicating efforts and what tasks are a priority.\n\n## Changelog\n\nA changelog is a plain text file that contains a record of what *notable* changes are made between versions of software.  \nThe [keep a changelog](https://keepachangelog.com/en/1.1.0/) website provides a detailed explanation of what a change log is, \nand this [changelog template](https://gist.github.com/juampynr/4c18214a8eb554084e21d6e288a18a2c) is a good starting point for \ncreating change log files. \n\n## Licensing\n\nChoosing or writing a license for software is of the utmost importance. \nIt lets users know under what legal conditions they are allowed to use the software. \nThe section on {ref}`rr-licensing` provides excellent detail on open-source licensing.\n\n## Code of Conduct\n\nWhen collaboration is an important aspect of a software project,\ndefining a *code of conduct* is necessary to create and maintain a collaboration environment that promotes participation and fosters the exchange of ideas, \nwhile fostering respect among developers. \n\nThe [contributor's covernant](https://www.contributor-covenant.org/) describes a code of conduct for open source software, \nand this [template](https://github.com/jessesquires/.github/blob/main/CODE_OF_CONDUCT.md) can be used as is or be adapted for a software project.\nSee also the Turing Way's {ref}`ch-coc`.\n\n## Software Citation\n\nLet people know how to cite your software using a `CITATION.cff` file. The citation file contains metadata to make software citable. The tool [CFFINIT](https://citation-file-format.github.io/cff-initializer-javascript/#/) helps you to create a citation file that you can include as part of the project documentation. \nThe section on {ref}`cm-citable-cff` provides greater detail on why and how to edit `cff` files. \n"
  },
  {
    "path": "book/website/reproducible-research/code-documentation/code-documentation-resources.md",
    "content": "(rr-documentation-resources)=\n# Other resources\n\n- [The Documentation System](https://docs.divio.com/documentation-system/): A unified theory of documentation.\n- [Markdown](https://daringfireball.net/projects/markdown/)\n- [How to document your research software](https://coderefinery.github.io/documentation/#how-to-document-your-research-software) by CodeRefinery\n"
  },
  {
    "path": "book/website/reproducible-research/code-documentation.md",
    "content": "(rr-documentation)=\n# Code documentation\n\n(rr-documentation-prerequisites)=\n## Prerequisites\n\nNo previous knowledge is needed to start reading this chapter.\nThis chapter aims to provide guidance to projects with different types of code and thus different needs (from small scripts to large libraries), so at some points it may require some knowledge of writing code.\n\n(rr-documentation-summary)=\n## Summary\nA famous quote be Harold Abelson says that \"Programs must be written for people to read, and only incidentally for machines to execute.\"\nThis refers to the fact that code should be written in a way that it can be understood by people other than the author (and even the author in the future).\nAnd this is not limited to the code itself being well written, but also (and perhaps more importantly) for the code to be clearly documented.\n\nDocumentation is the written text that accompanies the code and explains different aspects of it: what it does, how it works, how it is structured, and any other relevant information.\nDepending on the complexity of the code, it may be suitable to have different types of documentation aimed at different audiences for example, the users of the software, or other developers.\n\nIt is important to emphasise that not all projects need extensive documentation;\nsometimes a basic README and a few comments in the code are sufficient for your audience.\nAs the author of your code, it is up to you to decide the level of documentation that you need.\n\nIn this chapter we cover different types of documentation, from the very basics of {ref}`how to document your code itself <rr-documentation-code>` up to {ref}`how to document your software project<rr-project-documentation>`.\nThe {ref}`other resources<rr-documentation-resources>` section includes multiple links to external resources that can help you further.\n\n\n\n\n"
  },
  {
    "path": "book/website/reproducible-research/code-quality/code-quality-naming.md",
    "content": "(rr-code-style-naming)=\n# File and Variable Naming\n\n### File Naming\n\nThe [Centre for Open Science](https://help.osf.io/article/146-file-naming) has some useful suggestions for the naming of files, particularly ensuring that they are readable for both humans and machines.\nThis includes avoiding the use of wildcard characters (`@£$%`) and using underscores (`_`) to delimit information, and dashes (`-`) to conjunct information or spaces.\nThey also suggest dating or numbering files and avoiding words like FINAL (or FINAL-FINAL).\nThe dating suggestion is the long format `YYYY-MM-DD`, followed by the name of the file, and the version number.\nThis results in automatic, chronological order. For example:\n\n```r\ndata <- read.csv(\"2019-05-17_Turing-Way_Book-Dash.csv\")\n```\n\nThe R style guide suggests keeping file names basic.\nThis might be appropriate for small compact projects, however over larger projects with lots of similar files, or if you are not using version control (see chapter on {ref}`Version Control<rr-vcs>`) it may be more appropriate to use the COS guidelines.\nFor more details please see the chapter on {ref}`File Naming<pd-filenaming>`.\n\n#### Versioning\n\nAn extra consideration to file-naming is versioning your software.\nUsing versioning guidelines will help avoid using words like `_FINAL.R`.\nA typical convention is the MajorMinorPatch (or MajorMinorRevision) approach.\nIn this, your first attempt at a package or library might look like this:\n```\nmy-package_1_0_0.py\n```\nThis indicates that the software is in the unrevised/patched alpha stage (0) of the first major release.\n\n### Variable Naming\n\nIn maths projects at school, variables are often unimaginatively named \"x\", \"y\", and \"z\".\nThis brevity is probably because teachers (understandably) do not want to repeatedly write long variable names on the board.\nIn coding, however, you have the freedom to name your variables anything you like.\nThis can be useful for representing the flow of your script.\n\nBe creative!\n\n#### Naming conventions\n\nFor clarity and readability, choosing a set of naming conventions for your variables is useful.\nThere is a large variety, and some people can be quite vocal about which one is 'correct' (pick one that is right for you!).\nThese include:\n\n- CamelCase\n- lowerCamelCase\n- Underscore_Methods\n- Mixed_Case_With_Underscores\n- lowercase\n\nFor example:\n\n```r\nraw_data <- read.csv(\"data.csv\") # Not very creative\nrawData <- read.csv(\"data.csv\")  #lowerCamelCase\n```\n\nOK, `raw_data` is not very creative, but it could easily have been `spam` or `eggs` if that makes sense in your script.\nYou may also have a function that recodes a variable:\n\n```r\nrawDat <- recode(rawDat)\n```\n\nReusing the variable name provides no information about the process that rawDat has been through.\nStoring it as a separate variable lets us see what transformations have been carried out on the original variable:\n\n```\nrawDat_recoded <- recode(rawDat)\n```\n\nIf you like you can clear out the old variable using remove as above.  \n\n```\nremove(rawDat) #In R\ndel(rawDat) # In Python\n```\n\nIt is important to choose one style and stick to it:\n\n```\nThisIs Because_SwitchingbetweenDifferentformats is.difficult to read.\n```\n\n```\nWhere_as if_you stick_to one_style, your_code will_be easier_to_follow!\n```"
  },
  {
    "path": "book/website/reproducible-research/code-quality/code-quality-readability.md",
    "content": "(rr-code-quality-readability)=\n# Writing Human Readable Code\n\nWriting clear, well commented, readable and reusable code benefits not only you but the community (or audience) that you are developing it for.\nThis may be your lab, external collaborators, stakeholders, or you might be writing open source software for global distribution!\nWhatever scale you work at, readability counts!\n\nHere are a few aspects to consider when making your code easy to read by others.\n\n## Line Length\n\nThere is some agreement on the length of the coding lines.\nPEP8 suggests a maximum of 79 characters per line and 80 by the R style guide.\nThis means that the lines can easily fit on a screen, and multiple coding windows can be opened.\nIt is argued that if your line is any longer than this then your function is too complex and should be separated!\nThis is the crux of the Tidy method of R programming, which even has a special operator `%>%` which passes the previous object to the next function, so fewer characters are required:\n\n```r\nrecoded_melt_dat <- read_csv('~/files/2019-05-17_dat.csv') %>%\nrecode() %>%\nmelt() #We now have a recoded, melted dataframe called recoded_melt_dat\n```\n\n## Commenting\n\nComments have been described as \"Love letters to your future self\" by Jon Peirce, creator of PsychoPy.\nComments can be blocked or inline.  \nThe PEP8 guidelines have firm suggestions that block comments should be full sentences, have two spaces following a period, and follow a dated style guide (Strunk and White). \nFortunately the Elements of Style no longer 'requires' an unfair emphasis on masculine pronouns.\nWhereas inline comments should be used sparingly.\nKeeping clear and concise comments not only allows you to keep track of the decisions you have made, what particular functions do, and what variables are used, it also allows other people to see your thought processes.\nThe syntax for comments varies with programming languages.\nIn R and Python, a hashtag is used, whereas in C and Java the brackets `/* /*` are used, and in C++/C# a double slash `//` comments single lines.\n\nIn Python:\n```python\ntimes = 10 # Set integer\nmy_variable = \"my variable is %s times better than yours\" %times #Set my_variable to a string\nprint(my_variable) #print the value\n```\n\nIn R:\n```r\nmy_func = function(number){ #R function\n\n(number * 5) - 2\n}\nprint(my_func(2))\n```\n\nFor longer comments, information can be included above the code block.\nIn Python, you can use triple speech marks as a parenthesis.\nThis will comment out anything in between.\n\n```python\n\"\"\"\nThe following function takes a number, multiplies it by 5, and subtracts 2.\nThis may seem pointless but is simple for demonstration.\n\"\"\"\ndef myfunc(numb): #python function\n      return((numb*5)-2)\nprint(myfunc(8))\n```\nLonger blocks of comments are not available in R.\nThere are ways around this, such as setting up a string, or an if(false) statement:\n\n```r\n\"1 - This is a string. It will not be evaluated by R, and will not raise\nand exception\"\n\nif(false){\n2 - All of your comment can go here and will never be evaluated.\nIt also means you keep to the 80 character line length suggestion.\nAlso, in RStudio you can fold away the comment using the arrow next to the\nline number of the if statement.\n}\n```\n\nOr commenting out individual lines:\n\n```r\n#This is also a very long comment\n#covering many lines.\n```\nYour IDE will probably have a keyboard shortcut for commenting out blocks.\n\n## Indentation\n\nThe R style guide suggests that lines should be separated:\n```r\nby\n  two spaces\n```\nAnd not\n```r\n a mixture\n   of\n   \ttabs\n   \t  and \tspaces.\n```\n\nObviously, sometimes the arguments of a function can far expand 80 characters.\nIn this case, it is recommended that the second line be indented to the start of the arguments:\n\n```r\nmy_variable <- a_really_long_function(data = \"2019-05-17_Long_File_Name_2\",\n                                      header = TRUE, verbose = TRUE)\n\n```\n\nThese are of course just guidelines, and you should choose elements that suit your coding style.\nHowever, and again, it is important to ensure that you are consistent when collaborating, and can agree on a common style.\nIt could be useful to create a readme file describing your coding style so collaborators or contributors can follow your lead.\n\n## Whitespace after sentences\n\nIf you are sharing text files or working collaboratively on manuals or documents, then there is a lot of controversy surrounding whether to use one or two spaces after a period.\nWhen using {term}`Markdown`, it can be clearer to include a new line after every sentence.\nThis makes the {term}`Markdown` source easier to read, but doesn't change the appearance of the output document.\nThis practice is part of a system of requirements and recommendations called [semantic line breaks](https://sembr.org/), which aim to make {term}`markup` source easier to read without affecting the rendered output.\nThis chapter (and most, if not all, of this book) has a new line after every sentence that makes the raw text easier to read, review and solve the spacing issue.\n\n```{figure} https://imgs.xkcd.com/comics/third_way.png\n---\nname: xkcd1285\nalt: Two groups holding different flags and fighting, one says \"two spaces after a period\" and other says \"one space after a period\". While a person stands with their flag that says \"Line break after every sentence\"\n---\nLine break after each sentence makes it easy to review and comment. [Reproduced from xkcd 1285](https://xkcd.com/1285), used under CC BY-NC 2.5.\n```\n"
  },
  {
    "path": "book/website/reproducible-research/code-quality/code-quality-resources.md",
    "content": "# Checklist and Reading Recommendations\n\n## Checklist\n\n### For code auto-formatting\n\n- Write your development code in your favourite IDE/text-editor.\n- Enable auto formatting in your editor by tweaking the preferences/settings.\n- Type `Ctrl + s` (windows, linux) or `⌘ + s` (mac) to save the work to format the code.\n\n### For static code analysis\n\n- Build the project to enable `linters` to spot the errors/warnings in the code (if any).\n- Make relevant changes and repeat the above step.\n- {ref}`Commit and push<rr-vcs-git-commit>` the changes to remote **Github/GitLab/BitBucket** repository to run the pre-deployment tests.\n\n### For robust code\n\n- Find assumptions in your program, and make them explicit.\n- Write if/else statements to test your assumptions.\n- Consider errors that may be raised in your program.\n- Decide per assumption and error what should happen: redirect, report, or abort.\n- When raising errors, make suree to write informative and actionable messages.\n\n## Further reading\n\n- [Article by University of Freiburg](https://swt.informatik.uni-freiburg.de/service/coding-conventions)\n- [Coding Conventions - Wikipedia](https://en.wikipedia.org/wiki/Coding_conventions)\n- [An exhaustive list of static code analysis tools - Wikipedia](https://en.wikipedia.org/wiki/List_of_tools_for_static_code_analysis)\n- [Excellent compilation of code analysis guidelines - OWASP](https://owasp.org/www-community/controls/Static_Code_Analysis)\n- [ECMA International ES6 guide](http://www.ecma-international.org/ecma-262/6.0/)\n\n## References specific for this chapter\n\n- [Static Tool analysis guide](https://en.wikipedia.org/wiki/Static_program_analysis)\n- [KeyBindings in VSCode](https://code.visualstudio.com/docs/getstarted/keybindings)\n- [Dev.To blog about text-editor customization](https://dev.to/josuerodriguez98/my-vs-code-customization-i4o)\n- [EditorConfig guide](https://editorconfig.org/)\n"
  },
  {
    "path": "book/website/reproducible-research/code-quality/code-quality-robust.md",
    "content": "(rr-code-error)=\n# Writing robust code\n\nWe all have experienced it: you just wrote a new piece of code, but when you try it, it does not work as expected.\nPerhaps there is a typo, a bug, or you just passed the wrong parameter to a function.\nIt is not a big deal, as long as you notice!\nNoticing something is wrong is the first step to fixing it.\n\n## Silent failures\nThere will be many assumptions you make when writing a program.\nFor example, the data type of your imports, the structure of a data file, but also the behavior of any dependencies, from individual functions, entire libraries, to the programming language you use and how it functions in various operating systems.\nIt is natural to have assumptions to build on.\nHowever, it can become problematic when these assumptions are incorrect for a specific instance and the program carries on regardless.\nThis is what is called a 'silent failure'.\n\nSilent failures can lead to problems down the line, likely resulting in strange and unintelligible error messages that do not have anything to do with the actual problem.\nA silent failure that stays silent will generate results that are wrong, and needs sharp eyes to be detected.\nTo make sure these things do not happen, your program needs built-in checks and balances.\nHaving good error management practices dramatically reduces the chance that a problem occurs, and especially, that it passes unnoticed.\nThis chapter's main purpose is to help you make your code robust, and capable of dealing with different potential problems.\n\n(rr-code-error-workflow)=\n## Workflow\n\n(rr-code-error-workflow-step1)=\n### Step 1: Describe your assumptions\n\nYour code contains many assumptions.\nFor example, a function performing a simple mathematical operation assumes that its input is numerical.\nWhat happens if this function is used on a bit of text?\nOr a dataframe?\nOr an open file?\n\nIn a different example, let's imagine a data science workflow.\nAs part of this workflow, a column labeled \"Age\" is selected.\nWhat happens if this column does not exist?\nThe workflow plots the column \"Age\", but the plot is cut off at age 100.\nWhat happens if the data contains ages over 100?\nOr if this column contains negative numbers?\n\nIn making decisions about cases like these, the first step is to be explicit about the assumptions made.\nTo identify assumptions in your code, you can ask yourself:\n\n- What type of object/data do I expect here?\n- What files need to exist for my workflow to run, and where?\n- When calling a function, am I relying on default settings for arguments?\n- When a function returns multiple outputs, do I ensure they are in the right order?\n\nIf you think critically, there is no end to the assumptions that you make.\nFor instance, you assume that a built-in function you use works in a specific way.\nLabeling all these assumptions would perhaps keep you busy eternally, and that is not the point of this exercise.\nInstead, try to focus on assumptions you make about the data and/or files a user puts into your workflow or code.\n\n(rr-code-error-workflow-step2)=\n### Step 2: Assert/verify assumptions\n\nOnce you have identified assumptions, you can verify if they are true.\nThis is also called '**asserting**'.\nDepending on your programming language, and the nature of the assumption, there are many creative ways to do this.\nA good starting point for verifying an assumption can be an if/else statement:\n\n```\nif my_assumption is not TRUE:\n    do something\nelse:\n    continue\n```\n\nIf the assumption is `TRUE`, nothing happens and your code executes as usual.\n\nHowever, simply the existence of this if/else block will be able to alert a user if an important condition is not met.\nIf they are trying to select a column that does not exist, for instance.\nOr if they are performing mathematical operations on pieces of text.\n\nYou can also take advantage of errors that are raised by the programming language you use.\nWe will go into that in more detail in [Error handling](#rr-code-error-handling).\n\n(rr-code-error-workflow-step3)=\n### Step 3: Deal with unmet assumptions\n\nWhat can you do when a condition is not met?\n\nThere are roughly three ways you can deal with an unmet assumption:\n\n- Redirect: you can send the program in a different direction based on the information you are given;\n- Report: you can inform the user that something is different than what the program expects;\n- Abort: you can stop executing the program.\n\nAll programming languages have the option to raise an error.\nThese errors can come in different flavors.\nTwo main flavors that you will find in most programming languages are 'warning' and 'error'.\nA '**warning**' is less severe than an 'error'; it indicates a potential problem, but does not stop the program.\nAn '**error**' is thrown when the program needs to halt.\n\nThus, error types fit well with the different ways of dealing with unmet assumptions:\n\n|          | Error type | Action           |\n|:---------|:-----------|:-----------------|\n| Redirect | None       | Choose next step |\n| Report   | Warning    | No action        |\n| Abort    | Error      | Stop executing   |\n\n(rr-code-error-handling)=\n## Error handling\n\nWhatever programming language you are using, errors already exist.\nThe good part about errors appearing is that something has gone wrong and your user knows about it.\nThe bad part is that the message is likely not informative to your user:\n\n```output\nobject of type 'closure' is not subsettable\n```\n\nYou can catch these errors in your workflow, and deal with them in the same way as you deal with unmet assumptions: redirect, report, or abort.\nRedirecting from an error has a technical term: '**exception handling**'.\nIn this case, you expect a certain error to be raised, but instead of stopping your program, you change its course.\nIn many programming languages, this is done in a `try... except` or `try... catch` block:\n\n```\ntry:\n    do_something_that_might_fail()\nexcept ErrorType:\n    do_something_else()\n```\n\nReporting or aborting from an error can be done in the same way, but instead of using the default error, you raise your own.\nImportantly, raising a warning or error message from your own program means you have control over the quality of the message.\nAnd, contrasting most built-in errors, it can give a user instructions on how to fix it.\n\n(rr-code-error-messages)=\n## Writing good error messages\n\nWhen raising an error (or warning), you should add information about the problem in an error message.\nThis is important information for a user who attempts to use your program and runs into a problem.\nThe information you provide can help them 'debug': make the changes necessary to successfully execute the run.\n\n> \"Make sure that when [your program] fails, it fails informatively.\"\n>\n> [Jenny Bryan](https://github.com/jennybc/debugging#readme)\n\nWriting good error messages is a skill that comes with a lot of practice.\nYou have likely been on the receiving end of error messages that were of little use to you, and instead of helping you fix the problem, they only confused you.\nAn error message is unhelpful when it is too broad, too vague, or unclear about what the next steps may be.\nWhen making your program robust, you should therefore put thought into the information you provide in an error message.\n\n```{figure} ../../../figures/error-management.*\n---\nname: error-management\nalt: Three stages of error management. Left, a person working on a computer that is smoking, but the screen is clear and the person is unaware that there is a problem. Middle, a person with a computer that is smoking, displaying an error message. The person does not understand the message and is confused. Right, a person with a smoking computer that is presenting a clear error message. The person can now fix the problem and is happy.\n---\nThree stages of error management: silent failures (left) leave a user blissfully unaware of problems; unintelligible errors (middle) show there is a problem, but confuse the user; informative errors (right) both show a user there is a problem, and how to solve it.\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\nThese qualities make a good error message:\n\n- It clearly pinpoints the problem.\n- It points a user to next steps: items to check, or other steps they can take to further understand or fix the problem.\n- It uses jargon appropriately, and keeps its target audience in mind.\n- It is honest about what it knows and does not know.\n\n## Read more\n\nThe practices described in this chapter are not the same as testing your code.\nInstead, they go hand in hand, and can be used to complement each other.\nFor example:\n\n- Use tests to pass strange data to your workflow, and confirm that your workflow redirects, reports, or aborts as expected.\n- Use tests to confirm you receive the expected error messages.\n\nTo read more about how to implement code testing in your project, see the dedicated chapter on {ref}`rr-testing`."
  },
  {
    "path": "book/website/reproducible-research/code-quality/code-quality-style-formatting.md",
    "content": "(rr-code-style-and-formatting)=\n# Automatic Formatting\n\nNumerous tools exists to automatically format code such that it follows a certain style. Automatic formatting enables higher code quality, especially when you are collaborating in a team and other people need to look at the code you've written.\nMany developers and organisations maintain standards of code formatting like **2-space** or **4-space indentation**. Using these is highly recommended since the probability of finding bugs (if any) increases multifold.\n\n[EditorConfig](https://editorconfig.org) is a language independent tool that helps maintain consistent whitespace styles for multiple people working on the same project across various editors.\nMost editors support EditorConfig either natively or through a plugin.\nAlmost all widely used IDEs and text-editors support automatic code formatting upon typing. For example: [JetBrains IDE Suite](https://www.jetbrains.com/products.html#) and [VSCode](https://code.visualstudio.com/).\n\nIn addition to that, there are many language specific tools for automatically formatting code according to a particular style.\nNote that editors often support using these tools directly from the editing environment.\n\n| Language      | Formatter Tool              |\n|---------------|-----------------------------|\n| C/C++         | [GNUIndent](http://www.gnu.org/software/indent/), [GreatCode](http://sourceforge.net/projects/gcgreatcode/)|\n| Python        | [Black](https://black.readthedocs.io), [yapf](https://pypi.org/project/yapf/)|\n| Javascript    | [beautifier.io](https://beautifier.io/)|\n| Java          | [Google Java format](https://github.com/google/google-java-format), [JIndent](http://www.jindent.com/)|\n| MATLAB/Octave | [MISS_HIT](https://florianschanda.github.io/miss_hit/)|\n| PHP           | [phpStylist](http://sourceforge.net/projects/phpstylist/)|\n| Perl          | [PerlTidy](http://perltidy.sourceforge.net/)|\n| R             | [formatR](https://yihui.org/formatr/)|\n| Shell/Bash    | [ShellIndent](http://www.bolthole.com/AWK.html)|\n| CSS           | [CSSTidy](http://csstidy.sourceforge.net/)|\n| HTML          | [Tidy](http://tidy.sourceforge.net/)|\n\n**Quick Tip**: If you use VS Code as your primary text editor, you can enable automatic code formatting right into your browser. Open your preferences page in JSON mode and add the following line:\n\n```\n\"editor.formatOnSave\": true,\n```\n\n(rr-code-style-linting-tools)=\n## Linting Tools\n\nLinting tools, also known as linters, analyze your code to find potential errors, style violations, and other issues without running the code.\nThese tools help maintain code quality and consistency across your projects.\n\n### lintr (R)\n\n[lintr](https://cran.r-project.org/web/packages/lintr/lintr.pdf) is an R package that checks your code using a variety of style guidelines.\nIt can be installed from CRAN.\nThe function `lint` takes a filename as an argument and a list of 'linters' that it should check your code against.\nThese range from whitespace conventions to checking that curly brackets do not have their own lines.\nThe output provides a list of markers with recommendations for changing the formatting of your code line-by-line, meaning it is best used early and often in your project.\n\n```{figure} ../../../figures/lintr-output.png\n---\nheight: 500px\nname: lintr_output\nalt: lintr output showing recommendations to add space, remove commented code, remove training whitespace, have character size per line less than 80 where needed in the input code.\n---\nAn example of how the lintr output may look like for an input file with R code.\n```\n\nFor more details, please visit the [GitHub repository](https://github.com/jimhester/lintr).\n\n### Autopep8 (Python)\n\n[Autopep8](https://pypi.org/project/autopep8/) is a Python module that can be run from the terminal and automatically formats a file to [pycodestyle](https://github.com/PyCQA/pycodestyle) (formerly called pep8) guidelines.  \nIt is available on [pypy](https://pypi.org) and can be installed using pip.\n\n```\n# Install autopep8\npip install --upgrade autopep8\n```\n\nYou can modify a file in place by running the following command:\n\n```\nautopep8 --in-place --aggressive --aggressive <filename>\n```\n\nTo some extent, the module can also be used on R scripts!\n\n### Black (Python)\n\n[Black](https://black.readthedocs.io/en/stable/) is an auto-formatting package for Python.\nThis means that it will automatically change your code to adhere to certain guidelines, like spaces around operators and removing unnecessary whitespace.\nIt is also consistent, so that the code that you and your collaborators work on will look the same once black formats it.\nIt does not change what the code does.\nThis can reduce the time spent making the above changes to the code.\n\n### Static Code Analysis Tools\n\nStatic code analysis tools examine code and detect software vulnerabilities before your code is executed or the project is built and deployed.\nIn addition to finding bugs, many of these tools can also help maintain a consistent coding style.\n\nSome of the most widely used static analysis tools are mentioned in the table below:\n\n| Language                  | Static code analysis tool|\n|---------------------------|------------------------|\n| C/C++                     | [Cppcheck](http://cppcheck.sourceforge.net/), [cpplint](https://github.com/cpplintcpplint)|\n| Python                    | [Pylint](https://pypi.org/project/pylint/), [prospector](https://prospector.readthedocs.io)|\n| Javascript                | [ESLint](https://eslint.org/), [JSlint](https://jslint.com/), [JSHint](https://jshint.com/)|\n| Java                      | [Checkstyle](https://checkstyle.sourceforge.io/), [FindBugs](http://findbugs.sourceforge.net), [PMD](https://pmd.github.io/)|\n| Perl                      | [PerlTidy](https://metacpan.org/pod/perltidy)|\n| R                         | [lintr](https://github.com/jimhester/lintr)|\n| Shell/Bash                | [shellcheck](https://www.shellcheck.net)|\n\n(rr-code-style-service)=\n## Online Services Providing Software Quality Checks\n\nThere are several web services that analyse code and make the quality of the code visible.\nUsually these services run one or more static code analysis tools that can also be used from the command line or integrated into your editor on your own computer.\nUsing a code quality service that integrates with a GitHub/GitLab repository is highly recommended, as it can detect and communicate quality issues in pull requests.\n\nCode quality analysis services are websites that often offer the following features:\n\n- Automatically analyse your code after pushing it to GitHub/GitLab\n- Usually free for open source projects\n- Support multiple programming languages, but not every language will have the same level of features\n- Grade or score for the quality of all of the code in the repository\n- List of issues with the code, grouped by severity\n- Drill down to location of issue\n- Default list of checks which the service provider finds the best practice\n- Can be configured to make the list of checks more strict or relaxed\n- Can be configured to ignore files or extensions\n- Can read a configuration file from repository\n- Track issues over time and send alerts when quality deteriorates\n- Optionally reports on code coverage generated by a CI build\n- Automatically deploy the repository and generates a preview build for review before final release.\n\nFor a list of choices see [shields.io](https://shields.io/badges) or [this list of services that are free for open source projects](https://github.com/ripienaar/free-for-dev#code-quality)."
  },
  {
    "path": "book/website/reproducible-research/code-quality/code-quality-style.md",
    "content": "\n(rr-code-style)=\n# Code Style and Formatting\n\nA coding style is a set of conventions on how to format code.\nFor instance, what do you call your variables? Do you use spaces or tabs for indentation? Where do you put comments?\nConsistently using the same style throughout your code makes it easier to read.\nCode that is easy to read is easier to understand by you as well as by potential collaborators.\nTherefore, adhering to a coding style reduces the risk of mistakes and makes it easier to work together on software.\n[Why Coding Style Matters](http://coding.smashingmagazine.com/2012/10/25/why-coding-style-matters/) is a nice article on why coding styles matter and how they increase software quality.\n\n```{figure} ../../../figures/linting-no.jpeg\n---\nheight: 500px\nname: linting-no\nalt: A lint roller cleaning up code, symbolizing the transformation of messy, disorganised information into a clean and readable format.\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.13882307](https://doi.org/10.5281/zenodo.13882307).\n```\n\n## Style Guides\n\nStyle guidelines differ between organisations, languages, and over time. \nEven the Python style guide Python Enhancement Proposal 8 (PEP 8) has had numerous revisions since it was released in 2001.\nYou must choose a framework that is best for your purposes: be they for your benefit or the benefit of others.\nIt is also important to remain consistent (and not consistently inconsistent)!\n\nFor example, [PEP8](https://www.python.org/dev/peps/pep-0008/) is the most widely used Python coding style and [ECMAScript 6](http://es6-features.org/) aka [ES6](http://es6-features.org/) is the scripting-language specification standardized by ECMA International for programming in Javascript.\n\nFor commonly used style guides for various programming languages see the [Language Guides](https://guide.esciencecenter.nl/#/best_practices/language_guides/languages_overview).\nGoogle also has a [style guide](https://code.google.com/p/google-styleguide/) for many languages that are used in open source projects originating out of Google.\n\nHere are links to existing style guides for various languages:\n\n* [PEP8](https://www.python.org/dev/peps/pep-0008/) for Python.\n* [Hadley Wickham's](http://adv-r.had.co.nz/Style.html) style guide for R.\n* [Google's](https://google.github.io/styleguide/Rguide.xml) style guide for R.\n* [Microsoft's](https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/inside-a-program/coding-conventions) style guide for C#.\n* [PEP7](https://www.python.org/dev/peps/pep-0007/) for C.\n* [Harvard Strategic Data Project](https://hwpi.harvard.edu/files/sdp/files/sdp-toolkit-coding-style-guide.pdf) coding style guide for Stata.\n* [The Style Guide chapter](https://datamgmtinedresearch.com/style) in Data Management \nin Large-Scale Education Research provides examples for file naming, variable naming, and general code styling.\n\n```{figure} ../../../figures/zen-of-python.png\n---\nheight: 500px\nname: zen-of-python\nalt: The Zen of Python, by Tim Peters. Listing all aphorisms for coding design in Python.\n---\n*Point 7 of the [Zen of Python](https://www.python.org/dev/peps/pep-0020/) is \"Readability Counts\". (This can be printed with the python command `>>> import this`)*\n```"
  },
  {
    "path": "book/website/reproducible-research/code-quality.md",
    "content": "(rr-code-quality)=\n# Code Quality\n\n| Prerequisite                                                                                  | Importance |\n| --------------------------------------------------------------------------------------------- | ---------- |\n| {ref}`Experience with the command line<rr-overview-resources-commandline>` | Helpful    |\n\n## Summary\n\nThere are several ways to improve software quality that require relatively little effort.\nBy following a coding style, code will be easier for yourself and others to understand and therefore it will contain fewer bugs.\nTools for static code analysis can report bugs as well as style issues without even running the code.\n\n## Static code analysis\n\nStatic code analysis is a method that examines code and detects software vulnerabilities before your code is executed or the project is built and deployed.\nThis analysis is capable of identifying quality issues, including security weaknesses and errors.\nIn addition to finding bugs, many of these tools can also help maintain a consistent coding style.\n\n(rr-code-quality-advantages)=\n### Advantages of Static code analysis\n\n- Write high-quality code: Early detection of possible programming errors help developers to know where they went wrong.\n\n- Achieve regulatory compliance: Achieving software compliance is crucial for the stability and security of products.\nWith this, developers can comprehensively test their code in a non-runtime environment, ensuring all code standards are met and enterprise security is achieved.\n\n- Accelerate software development life-cycles: Static code analysis ensures high-quality code reaches testers in less time.\nThis means that even testers take much less time to test the product, thus accelerating software development life-cycles.\n\nSome of the most widely used `linters` are mentioned in the below table:\n\n| Language                  | Static code analysis tool|\n|---------------------------|------------------------|\n| C/C++                     | [Cppcheck](http://cppcheck.sourceforge.net/), [cpplint](https://github.com/cpplintcpplint)|\n| Python                    | [Pylint](https://pypi.org/project/pylint/), [prospector](https://prospector.readthedocs.io)|\n| Javascript                | [ESLint](https://eslint.org/), [JSlint](https://jslint.com/), [JSHint](https://jshint.com/)|\n| Java                      | [Checkstyle](https://checkstyle.sourceforge.io/), [FindBugs](http://findbugs.sourceforge.net), [PMD](https://pmd.github.io/)|\n| Perl                      | [PerlTidy](https://metacpan.org/pod/perltidy)|\n| R                         | [lintr](https://github.com/jimhester/lintr)|\n| Shell/Bash                | [shellcheck](https://www.shellcheck.net)|\n"
  },
  {
    "path": "book/website/reproducible-research/code-reuse/code-reuse-details.md",
    "content": "\n(rr-code-reuse-details)=\n# Detailed Recommendations for Code Reuse\n\nMake sure you (or somebody else) can reuse your code to do the same exact thing you did.\nThis section contains a simple checklist of recommendations for making your software more reusable.\nIn this section contains a more in-depth explanation of each of these recommendations, with pointers to other relevant parts of this guide.\n\n## Repeatable Recommendations\n\nAt this stage, you might not even need to be able to open the code and read it, you just want to make sure you can re-run all the needed steps and obtain the same results you had.\n\n### 1. Make sure you can find it (in space)\n\nYour code must be stored publicly and shared with collaborators. It has an unique persistent identifier, so that everyone can find it and access it.\n\n**See also**: {ref}`rr-vcs`\n\n### 2. Make sure you can find it (in time)\n\nIdeally the temporal evolution of the code is documented with version control. This allows you to retrieve a specific version from the past.\n\n**See also**: {ref}`rr-vcs`\n\n### 3. Make sure you can execute the same sequence of operations\n\nOften the human who set up the environment is also the one who wrote the code and the one who knows the exact order of steps needed to be able to re-run the code and reproduce the results.\nThis could surely be carefully documented for another human to re-do it.\n\n**See also**: [CodeRefinery lesson on Reproducible Research](https://coderefinery.github.io/reproducible-research/)\n\n### 4. Make sure your environment and sequence of operations is robust and no human is needed to replicate what was done\n\nYou do not want to depend on humans. \nThey tend to make errors even if they do not have bad intentions. \nSo you want your environment to be scripted and be re-created when needed and you want your sequence of operations to be run by a pipeline script that glues together all the sequence of steps.\nA nice side-effect of scripting the sequence of operations is that this often can serve as documentation of the steps.\n\n**See also**: {ref}`rr-renv-options`\n\n### 5. License your code\n\nMake sure you attach a license to your code and specify how you want to be cited when people reuse it.\nConsider using a permissive license that allows for reuse.\nAlso, you should choose a license which is compatible with the licenses of libraries or packages your software depends on.\n\n**See also**: {ref}`rr-licensing`, {ref}`rr-licensing-floss`, {ref}`rr-licensing-compatibility`\n\n### 6. Make sure it is citable\n\nMake sure to specify how you want to be cited when people reuse it.\n\n**See also**: {ref}`cm-citable-cite-software`\n\n### 7. Include necessary data\n\nIf the software depends on any sort of data, the data should be available\n\n**See also**: {ref}`rr-rdm-data`\n\n## Re-runnable recommendations\n\nMake sure you (or others) can reuse it to do the thing you did, but with different data/different parameters\n\n### 1. Remove hardcoded bits and make the code modular\nYou do not want to have details specific to your data or analysis parameters hardcoded into the code.\nIf something can become a reusable function, separate it from the hardcoded parameters and turn it into something (re)usable on its own.\nMake the modules pure: given the same input, a pure function always returns the same value.\nInstead of specifying file paths inside the scripts, consider passing them as command line arguments for a more portable and general and reusable script.\n\n**See also**: [CodeRefinery Modular Code Development lesson](https://cicero.xyz/v3/remark/0.14.0/github.com/coderefinery/modular-code-development/master/talk.md/#1)\n\n### 2. Test that the modules you made can take different types of input data or parameters\nYou might not know yet how your code will be re-used in the future, but you can prevent how it should not be used if you can test which parameters are allowed.\n\n**See also**: [CodeRefinery lesson on Automated testing](https://coderefinery.github.io/testing/motivation/)\n\n### 3. Turn the modules into a package/toolbox\nSeparate even more the specifics of your project with the bits that can be reused in other of your projects or by other people.\n\n**See also**: {ref}`rr-renv-package`, [Packaging software](https://scicomp.aalto.fi/scicomp/packaging-software/), [Software packaging in Python](https://aaltoscicomp.github.io/python-for-scicomp/packaging/)\n\n## Portable Recommendations\nPortability refers to the ability to transfer software to a new environment.\nThis could refer to an identical (but not the same) machine, but it can also refer to a new hardware architecture, operating system and such.\nBoth of these are important for software reuse.\n\n### 1. Make sure you can recreate the environment where it lived\nThe environment is a fragile snapshot in time which silently accompanies the code.\nIt can include the human who operated the software, the steps the human did to prepare the data, the hardware, the OS, the libraries, external packages/toolboxes/dependencies.\nAll this can be carefully documented for another human to re-do all the same exact steps.\n\n**See also**: {ref}`rr-renv`\n\n## Extendable and Modifiable Recommendations\nMake sure others can build on your code to extend it and improve it.\n\n### 1. Make sure your code is readable by humans\nIt often pays more to write code for other humans so they can read it (including your future self).\nA cryptic oneliner with obscure variable names is not any faster or more efficient than splitting the one liner into multiple steps with readable variable names that make sense.\nFurthermore, using coding conventions will help other readers.\n\n**See also**: {ref}`rr-code-style-and-formatting`, {ref}`rr-code-quality-advantages`\n\n### 2. Make sure comments are present\nWrite comments before writing the actual code. Imagine that somebody could just read the comments and skip all the code bits between comments and get a full picture of what is going on as if they read the whole code.\n"
  },
  {
    "path": "book/website/reproducible-research/code-reuse/code-reuse-overview.md",
    "content": "(rr-code-reuse-recommendations)=\n# Overview of Code Reuse\n\nThis section contains a checklist of recommendations for making your software more reusable.\nThe {ref}`rr-code-reuse-details` section contains a more in-depth explanation of each of these recommendations.\nYou can follow the recommendations that are more suitable for your type of software and skip the ones which are not relevant in your case.\n\n## Repeatable Recommendations\n\n1. Make sure you can find it (in space; meaning: being able locate the repository/project)\n1. Make sure you can find it (in time; meaning: being able to locate a particular version)\n1. Make sure you can execute the same sequence of operations\n1. Make sure your environment and sequence of operations is robust and no human is needed to replicate what was done\n1. License your code\n    - with a license that allows for reuse;\n    - with a license compatible with the dependencies’ licenses\n1. Make sure it is citable\n1. Include necessary data\n1. Write useful documentation*\n\n## Re-runnable Recommendations\n\n1. Remove hardcoded bits (such as paths that only existed on the hard drive where the pipeline was run) and make the code modular\n1. Test that the modules you made can take different types of input data or parameters\n1. Turn the modules into a package/toolbox\n1. Write useful documentation*\n\n## Portable Recommendations\n1. Make sure you can recreate the environment where it lived\n1. Write useful documentation*\n\n## Extendable Recommendations\n1. Write useful documentation*\n\n## Modifiable Recommendations\n1. Make sure your code is readable by humans\n1. Make sure comments are present\n1. Write useful documentation*\n\nThe observant reader might will notice that `Write useful documentation` is mentioned for every level of reuse.\nThis is because different levels of documentation are required for different levels of reuse.\n\n## Documentation\n\n*Different documentation requirements for different levels of reuse*\n\nWriting useful documentation is an important requirement for all levels of reuse.\nHowever, for the different levels of reuse, there are different documentation requirements:\n\nThe documentation:\n- explains usage, specifying:\n  - what the software does; (required for repeatable)\n  - how it can be used; (required for repeatable)\n  - what options/parameters are available. (required for repeatable)\n- contains examples of how to run it. (required for repeatable)\n- has installation instructions, including good descriptions of:\n  - the hardware it depends on (for example GPUs); (required for portable)\n  - the operating system the software has been tested on; (required for portable)\n  - software requirements (such as libraries and shell settings). (required for portable)\n"
  },
  {
    "path": "book/website/reproducible-research/code-reuse/code-reuse-packages.md",
    "content": "(rr-code-reuse-packages)=\n# Overview of writing packages\n\nThis section provides an overview of why software packages and libraries are useful for code reproducibility and why you might want to write your own packages. \nPackages are written to a high standard of reproducible code (see the guidelines for [publishing an R package on CRAN](https://cran.r-project.org/web/packages/policies.html)).\nThe {ref}`rr-code-reuse-details` and {ref}`rr-code-reuse-recommendations` sections of the Turing Way also provide useful guidelines that are applicable to writing software packages.\n\n# What are packages?\nA package -- sometimes called a library or a module -- is a basic unit of reproducible, and often efficient, code that aims to create or extend the functionality of a programming language.\nSome packages, such as Python's `numpy` package, are so famous that they even [get published in scientific journals such as Nature](https://www.nature.com/articles/s41586-020-2649-2)!\nBesides user-defined functions, every function that you call in any programming language is defined within a package, and anyone can write a package that can be shared and used within a standard install of a given programming language. \nIn fact, all programming languages are simply comprised of many packages that provide certain functionality, even down to the simple `print` function that you can find in almost every programming language:\n\n```python\n# This Python program prints “Hello, world!”\nprint('Hello, world!')\n```\n\nWhen you install Python, the `print` function is already included as part of a package called `bltinmodule.c`: 2,843 lines of code written to define some core functionalities of the Python language... written in the C programming language! \nYou can see the source code for yourself at the [Python Github Repository](https://github.com/python/cpython/blob/3.8/Python/bltinmodule.c#L1821). \nYou might be asking \"why is a Python library written in C?\"\nThe answer is that compiled C code runs extremely fast compared to higher-level code such as Python code; this gives you another insight into good practices employed when writing code to be shared (via a package) with other users - try and optimize your code so that it runs efficiently. \nMany other languages will also write packages that aren't written using the language itself, instead written in languages such as C or Fortran. \n\n# Where / how can I get packages?\nProgramming languages can offer a central resource to download and install packages, such as [CRAN](https://cran.r-project.org/), [PyPi](https://pypi.org/) and [npm](https://www.npmjs.com/). \nThe following table shows a list of popular languages and how many packages they contain (taken from https://github.com/breck7/pldb).\n\n```{table} Central package resources\n:name: central-resources\n| Language          | Website                                             | Packages | Appeared |\n| ------------ | ----------------------------------------------------- | -------- | -------- |\n| javascript   | http://npmjs.org                                      | 901,025  | 1995     |\n| java         | https://search.maven.org/                             | 266,776  | 1995     |\n| php          | https://packagist.org/                                | 211,636  | 1995     |\n| perl         | https://www.cpan.org/                                 | 176,876  | 1987     |\n| python       | https://pypi.python.org/pypi                          | 167,097  | 1991     |\n| csharp       | https://www.nuget.org/                                | 141,524  | 2000     |\n| swift        | https://cocoapods.org/                                | 57,000   | 2014     |\n| clojure      | https://clojars.org/                                  | 23,459   | 2007     |\n| rust         | https://crates.io/                                    | 22,486   | 2010     |\n| r            | https://cran.r-project.org/                           | 13,674   | 1993     |\n| haskell      | https://hackage.haskell.org/                          | 13,487   | 1990     |\n| ruby         | https://rubygems.org/                                 | 9,889    | 1995     |\n| matlab       | https://www.mathworks.com/matlabcentral/fileexchange/ | 9,718    | 1984     |\n| erlang       | https://hex.pm/                                       | 8,069    | 1986     |\n| tex          | https://ctan.org/                                     | 5,649    | 1978     |\n| stata        | https://www.stata.com/manuals/rssc.pdf                | 4,608    | 1985     |\n| smalltalk    | http://smalltalkhub.com/                              | 4,534    | 1972     |\n| powershell   | https://www.powershellgallery.com/                    | 4,382    | 2006     |\n| emacs-editor | https://melpa.org/                                    | 4,079    | 1976     |\n| dart         | https://pub.dartlang.org/                             | 2,751    | 2011     |\n```\nIn addition to central package resources, many packages are often developed and accessible from repositories such as GitHub; you can however get a package from anywhere that you can download a zip or tar file with an internet connection.\nGiven the nature of reproducible code, of which a package is a fundamental unit, you will likely find that most packages that exist in a central resource also have their code published in a git repository.\n\n# Why write software packages?\nIf you have written a set of functions that work together and are used to achieve something specific, writing a package is a great way of making it available for others to use. \nSome examples might include:\n\n- A methodology described in a research paper that comes with code to implement it\n- A new package that extends functionality when working with other packages such as those that are part of R’s tidyverse\n- An extension to an existing software package\n- A package created just for fun!\n\nAs fundamental units of reproducibile code, packages can be useful to share publicly even if they’re packages that you use just for yourself. \nOne such package that started out as a personal library is [HMisc](https://cran.r-project.org/web/packages/Hmisc/index.html) (Harrell Miscellaneous): a statistics package with a collection of useful functions maintained by Professor Frank Harrell that is now widely used amongst R users. \n\n## What standards should be adhered to when writing a package?\nIf you plan on writing a package for others to use, there are numerous considerations to make. \nYou will want to ensure your code will work reliably, and do so on systems other than your own.\nSome recommendations would be:\n\n- {ref}`Unit Testing <rr-testing-unittest>` and {ref}`Integration Testing <rr-testing-types-integrationtest>` to ensure code within the package is robust and provides useful feedback to the end user while using it (warnings, errors).\n- {ref}`Version Control <rr-vcs>` of the codebase to track development and fix bugs.\n- {ref}`Documentation <rr-rdm-metadata>`. This might be in the form of a website or a wiki. There are even language specific packages that aim to provide project templates that will render the template into a website or other form of documentation (see [packagedown](https://pkgdown.r-lib.org/) for R, [Sphinx](https://www.sphinx-doc.org/) for Python or [Doxygen](https://www.doxygen.nl/) for C++).\n- Host your versioned codebase somewhere accessible. There are a whole range of places to host code depending on your use case. Public GitHub/GitLab repositories are extremely common especially in open source, whereas private repositories can be used for proprietary packages (think Matlab). Even just a local git repository might be enough for your use-case. \n- Use Continuous Integration /  Continuous Development principles and pipelines such as GitHub Actions, Jenkins, Travis or GitLab Runners to help with a range of testing procedures.\n - Consider submitting your package to a central resource such as those listed above ([](#central-resources)). There are usually strict requirements needed as your code is more likely to be distributed and used (more on this later on). Often GitHub repositories are used to store both stable and \"daily\"/\"nightly\" builds of a package in addition to a central resource so that users can submit bugs an contribute to the current version, while testing experimental versions as a preview. \n - Write a publication. This could be in the form of a journal submission such as Numpy (in Nature!), or an abstract/paper in a conference proceeding. This allows your package to be peer-reviewed by experts in the field of intended use and might give more confidence to potential users that the package is robust.\n - Publicize your package. If you have gotten as far as hosting and publishing your package for others to use, you can publicize it in a variety of ways to let people know about it. It used to be that getting your package into a central resource provided ample opportunity for your package to be shared, but as these resources grow this is not necessarily the case anymore. Aside from publications in journals, use social media such as Twitter, Discord and Slack, as well as Medium articles and blog posts. \n - Build a community. Hopefully a few collaborators will have worked together to build a package, and by thinking about how the initial developers of the packages interact with future users you might be able to build a strong community that will help improve and maintain the package going forward.\n\n## Get Started - use a template\nWith so many existing packages across many languages, it should be pretty easy to find good examples of packages and their published code on software repositories such as GitHub.\nLooking at the codebase can give you an idea of how to structure your own packages, but they can be a little daunting especially if they are well-established, widely used packages. \n\nAs mentioned previously, there are packages that are specifically meant to help you create your own packages.\nThese work by creating the underlying structure of a package or even simulated toy repositories that you can then customize as you see fit.\nSuch templates will often factor in locations for documentation, code commenting conventions and built-in code linting, and sub-directories for header files like you might find in the C programming language. \n\n## Walkthrough of creating a package in R\nLet's walk through creating a basic package in R using with some help from some specialized packages, particularly `usethis` and `roxygen2`.\nBegin by loading some go-to libraries that help package development in R\n\n```r\nlibrary(devtools)   # various developer tools\nlibrary(usethis)    # create templates for repetitve tasks\nlibrary(roxygen2)   # automatically render documentation files from commented code\nlibrary(assertthat) # unit testing within functions\n```\nCreate a skeleton directory template commonly used for R packages - will include a Description file, sub-directory for R function files, a NAMESPACE file for global package information and an .Rproj file to easily share and load local project directories.\n\n```r\nusethis::create_package(\"/RDemoPackage\")\n```\n\n```\n├── DESCRIPTION\n├── NAMESPACE\n├── R\n└── RDemoPackage.Rproj\n```\n\nCreate a `.R` file in the R/ subdirectory and write a function to convert from degrees Celsius to Kelvin.\nNotice that we have some code comments in the preamble that will get used to render a {term}`Markdown` file for the documentation (we use `roxygen2` for this).\n\n```bash\n\n# create a function to convert degrees C to Kelvin\n\n#' Converts degrees C to Kelvin\n#'\n#' Allows the user to input temperature in degrees C and return the corresponding value in degrees Kelvin\n#'\n#' @param print_statement a logical value indicating\n#' whether to print the statement (default is \\code{TRUE})\n#'\n#' @import dplyr\n#'\n#' @export\n#'\n#' @return \\code{my_function} prints a declaration\n#' announcing itself if the parameter is \\code{TRUE}\n#'\n#' @examples\n#' celsius_to_kelvin(12)\n#'\n\ncelsius_to_kelvin <- function(temp_C) {\n  # assert value in degrees C greater than a certain amount\n  assert_that(temp_C > -89.2,\n              msg = \"The temperature in degrees C entered is lower\n              than the lowest recorded ground temperature on earth at\n              −89.2 °C (−128.6 °F; 184.0 K) at the then-Soviet Vostok Station\n              in Antarctica on 21 July 1983. It is likely you have entered an incorrect temperature.\")\n  # make the calculation\n  temp_K <- temp_C + 273.15\n  return(temp_K)\n}\n```\n\nWe also used the `assert_that()` function from the `assertthat` package that allows us to unit test within functions in R. In this case we don't allow the user to input a temperature of below -89.2 degrees C. We then use the document() function from the `roxygen2` package to automatically render documentation in the form of a {term}`Markdown` file based on the comments at the top of the function file.\n\n```r\ndocument()\n```\n\nWe can then install and load our new package in our local environment\n\n```r\ninstall()\nlibrary(TempConvert)\n```\n\n\nFinally - if we push our code up to GitHub, anyone can install it using the following:\n\n\n```r\ninstall_github(\"pinkpanther/TempConvert\")\nlibrary(TempConvert)\n```\n\n\n"
  },
  {
    "path": "book/website/reproducible-research/code-reuse.md",
    "content": "(rr-code-reuse)=\n# Reusable Code\nYour software project could range from a small script you use for data processing to a notebook used for data analysis, or a software library implementing your algorithms.\nRegardless of how big or small your software project is, it is important to make your code reusable.\n\nDifferent types of software have different requirements for being reusable: for a small script, having sufficient documentation might be enough, while for a mission critical software library, thorough testing might be necessary.\nAt the most basic level, all you need to do is put your code online somewhere that is likely to last a long time. \nA more elaborate approach to making your research software more reusable is by following the FAIR Principles for Research Software (FAIR4RS Principles) {cite:ps}`ChueHong2021FAIR4RS`.\n\nWhen we talk about making code reusable, it is useful to clarify what we mean. \nIn the {ref}`Table of Definitions for Reproducibility<rr-overview-definitions-reproducibility>` we defined reproducible research as using the same data and the same code.\nHowever, when we talk about code reuse this can take many forms: we may want to run the exact same code (for compiled programming languages, this could even mean the exact same binary file), or we may want to modify the source code and extend it in some particular way to fit our needs.\nFreire and Chirigati {cite:ps}`Freire2018Reproducibility` provide a framework of different levels of reproducibility, depending on what can be modified. \nThey define the following levels of reproducibility: repeatable, re-runnable, portable, extendable and modifiable.\n\nWe can map the definitions of reproducibly on the Freire framework as follows:\n\n| Freire framework | Definitions of reproducibly |\n|------------------|---|\n| Repeatable       | Reproducible (same data, same analysis) |\n| Re-runnable      | Robust & Replicable (same code, different data/analysis/parameters) |\n| Portable         | *Not considered* (same code/data, different environment) |\n| Extendable       | (partly) Generalisable |\n| Modifiable       | (partly) Generalisable |\n\nPortability was not previously considered, but for software a different environment (such as different hardware, operating system or even a fresh install on comparable hardware) may affect the ability for the software to work (for example it may affect dependencies).\n\nAlso, Generalisable encapsulates two concepts: Extendable (the ability to integrate with other software)\nand Modifiable (the ability to change part of the implementation to extend its functionality).\n\nIn the rest of this chapter we provide list of recommendations you can follow to make sure your code is reusable.\n"
  },
  {
    "path": "book/website/reproducible-research/compendia.md",
    "content": "(rr-compendia)=\n# Research Compendia\n\n## Prerequisite\n\n| Prerequisite | Importance | Notes |\n| -------------|----------|------|\n| {ref}`Version Control<rr-vcs>` | Helpful | Can be used to version the compendium|\n| {ref}`Open Research<rr-open>`       | Helpful | Components are part of the compendium |\n| {ref}`Reproducible Environments<rr-renv>` | Helpful | Can be used to make the compendium reproducible |\n| {ref}`Binder Hub<rr-binderhub>` | Helpful | Can be used to publish the compendium |\n| {ref}`Make<rr-make>` | Helpful | Can be used for automation in the compendium |\n\n## Summary\n\nA research compendium is a collection of all digital parts of a research project including data, code, texts (protocols, reports, questionnaires, meta data).\nThe collection is created in such a way that reproducing all results is straightforward {cite:ps}`Nuest2017compendia,Gentleman2007statistical`.\n\nThis chapter has many prerequisites as it takes all digital components of a project together into a reproducible research package.\nThat said: a research compendium can be constructed with minimal technical knowledge.\nThe main purpose is that all elements of a project are published together, so a basic folder structure combining all components can be sufficient.\n\n```{figure} ../../figures/research-compendium.*\n---\nheight: 500px\nname: research-compendium\nalt: An illustration showing a person churning a big machine that takes scientific information from multiple papers and gives one output of readable file.\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n## Motivation\n\nA research compendium [{term}`def<Research Compendia>`] combines all elements of your project, allowing others to reproduce your work, and should be the final product of your research project.\nPublishing your research paper along with a research compendium allows others to access your input, test your analysis, and, if the compendium can be executed, rerun to assess the resulting output.\nThis does not only instill trust in your research but can give you more visibility.\nOthers may use your research in unexpected ways, some of which are discussed below (refer to section: {ref}`Using a research compendium<rr-compendia-using>`).\n\n## Background\n\nA research compendium at its most basic is a comprehensive set of files that combines all components of a project.\nThis compendium can be downloaded and run locally to recreate the work done, or it can contain elements that allow it to be executed on a remote server.\nExecutable research compendia aim to make the computational part of a scientific publication reproducible by providing all the building blocks available and give a description of how the user can execute the contained code.\n\n\n### Structure of a Research Compendium\n\nThree principles should be kept in mind when constructing a research compendium {cite:ps}`Marwick2018compendia`.\n\n- Files should be organized in a conventional folder structure;\n- Data, methods, and output should be clearly separated;\n- The computational environment should be specified.\n\nWith these principles, a wide variety of compendia are possible.\nLet's start with the most basic version.\n\n\n#### Basic Compendium\n\nA basic compendium follows these three principles.\nIt separates data and methods into a conventional folder structure, and describes the computational environment in a designated file.\nFurthermore, any compendium should have a landing page in the form of a README document.\n\n```text\ncompendium/\n├── data\n│   ├── my_data.csv\n├── analysis\n│   └── my_script.R\n├── DESCRIPTION\n└── README.md\n```\n\n#### Executable Compendium\n\nThe following folder can be considered an executable research compendium.\nIt contains all the digital parts of the research project (code, data, text, figures) and all the information on how to obtain the results.\nThe computing environment is described in the `Dockerfile`, the dependencies of files and how to automatically generate the results are described in the `Makefile`.\nAdditionally we have a `README.md` describing what the compendium is about and a `LICENSE` file with info on how it can be used.\n\n```text\ncompendium/\n├── CITATION\n├── code\n│   ├── analyse_data.R\n│   └── clean_data.R\n├── data_clean\n│   └── data_clean.csv\n├── data_raw\n│   ├── datapackage.json\n│   └── data_raw.csv\n├── Dockerfile\n├── figures\n│   └── flow_chart.jpeg\n├── LICENSE\n├── Makefile\n├── paper.Rmd\n└── README.md\n```\n\n#### Separating Methods, Data, Output\n\nThe principles of a research compendium state that it should clearly separate Methods, Data, and Output.\nPhrased differently, this means we should distinguish between three types of files and folders:\n\n- **Read-only**: raw data (`data_raw\\`), metadata (`datapackage.json`, `CITATION`)\n- **Human-generated**: code (`clean_data.R`, `analyse_data.R`), paper (`paper.Rmd`), documentation (`README.md`)\n- **Project-generated**: clean data (`data_clean\\`, figures (`figures\\`), other output\n\nThe examples mentioned here are not exhaustive and some may first be \"human-generated\" and at some point become \"read-only\" (for example a human may generate the data metadata `datapackage.json`, but once that is done it may become something not to be touched).\nIn other words, whether a folder contains files in either of these categories, may depend on the life cycle of the project.\n\n\n### Creating a Compendium\n\nIf you already use some of the tools in this book - such as version control, Makefiles, and/or reproducible environments - it may come naturally to you to create a research compendium.\nThis is, because a version control repository can be a research compendium; A Makefile makes it executable; A reproducible environment makes it reproducible.\nTo create a research compendium, we recommend to first think about *what the components of your project are* and create the folder structure accordingly.\nUse names for files and folders that make it easy for others to understand what they contain.\nIt is a good idea to think about this early in the research process and start your project with the mindset that the output in the end is a research compendium rather than just a research paper.\n\n\n### Publishing a Compendium\n\nThere are several options to publish a research compendium:\n\n- On a versioning platform such as GitHub or GitLab (potentially with a link to Binder).\n- On a research archive such as Zenodo or the Open Science Framework (OSF).\n- As supplementary material of a paper publication.\n\nFor examples, see the label/tag/community \"research-compendium\" (applied on GitHub, Zenodo, OSF) or as a fallback the term \"research compendium\" in the description (used on GitLab). For more info, see also [Research Compendium](https://research-compendium.science).\n\nIn the future, the research compendium may even be the publication itself allowing peer review of the entire research project.\n\n(rr-compendia-using)=\n### Using a Compendium\n\nA research compendium can be used in several ways, including (but not limited to):\n\n- Peer review: If peers can check what you have done, they can review it much more thoroughly.\n- Understanding research: If you really want to understand what someone has done in their research project, the research compendium is what you need to look at.\n- Teaching: Research compendia can be great examples to be used in teaching.\n- Reproducibility studies / repro hacks: A research compendium allows other researchers to attempt (and hopefully succeed) to redo your computations.\n\n\n## Checklist\n\nTo create a research compendium, follow these steps:\n\n- Think about a good folder structure (see example above)\n- Create folder structure (main directory and sub directories)\n- Optional: Make the compendium into a git repository\n- Add all files needed for reproducing the results of the project\n- Try to have the compendium as clean and easy to use as possible when you advertise it for others to use\n- Optional: Have a peer check the compendium and see if it works correctly\n- Publish your compendium\n\nSee the [EMNLP 2020 reproducibility checklist](https://2020.emnlp.org/call-for-papers#new-reproducibility-criteria) or the [AGILE reproducible checklist](https://doi.org/10.17605/OSF.IO/CB7Z8) for conference submission checklists. \n\n## Further Reading\n\n- The website [Research Compendium](https://research-compendium.science) contains links to further resources and publications on research compendia as well as links to examples.\n"
  },
  {
    "path": "book/website/reproducible-research/licensing/licensing-checklist.md",
    "content": "(rr-licensing-checklist)=\n# Checklist\n\nThis is a checklist for adding a license to your project repository.\n\n- Go to your repository folder (local computer or online repository on GitHub/GitLab/BitBucket)\n- Create a new file and name is `License.txt` or `License.md` based on your  preference of the file format\n- Choose a type of license (or multiple license for mixed content) that is suitable for your project (visit [choosealicense.com](https://choosealicense.com/))\n- Copy the license content to the newly created file, for example, you can use an Open Source license [CC-BY 4.0](https://choosealicense.com/licenses/cc-by-4.0/) for text content and [MIT License](https://choosealicense.com/licenses/mit/) for software\n- Save your file and add details in your `README.md` file\n\n(rr-licensing-reading)=\n## Further Reading\n\nAdditional resources you can read to learn more about software licenses.\n\n - [Open source licenses: What, which, and why](https://arstechnica.com/gadgets/2020/02/how-to-choose-an-open-source-license/)\n\n- General Reading on copyright, its potential reforms, and history of application in software\n    - [Free as in freedom 2.0](https://archive.org/details/faif-2.0/mode/2up)\n    - [What if we could reimagine copyright?](https://www.jstor.org/stable/j.ctt1q1crjg)\n    - [Chokepoint capitalism](https://craphound.com/chokepoint/2022/09/27/twitch-does-a-chokepoint-capitalism/)\n    - [Intellectual Property & Monopoly Capitalism]( https://crashcourseeconomics.org/webinar/intellectual-property-and-monopoly-capitalism)\n    - [Can models be protected by copyright law?](https://www.comsol.com/blogs/can-models-be-protected-by-copyright-law/)\n- Tools\n    - [Reuse](https://reuse.software/)\n- Relevant Legal Materials\n\t- International treaties impacting most nation state level IP law\n\t\t- [Berne Convention for the Protection of Literary and Artistic Works](https://www.wipo.int/treaties/en/ip/berne/)\n\t\t- [TRIPS](https://www.wto.org/english/docs_e/legal_e/27-trips_01_e.htm)\n\t- Statutes / Directives\n\t\t- US\n\t\t\t- [DMCA](https://www.congress.gov/bill/105th-congress/house-bill/2281)\n\n<!-- additional statutes needed, add EU directives -->\n"
  },
  {
    "path": "book/website/reproducible-research/licensing/licensing-compatibility.md",
    "content": "(rr-licensing-compatibility)=\n# License Compatibility\n\nIf you use multiple external components in your program, then you may end up with multiple different constraints on the license of the combined work.\nIf these constraints conflict, then you cannot legally distribute the result (if proprietary software is involved, then you may not legally be able to make the combined work at all).\n\nIf two licenses specify incompatible constraints on the license of the combined work, then they are _incompatible_.\n\n(rr-licensing-software-derivative)=\n## Derivative Software\n\nWithin the category of free software, there are several subcategories, which are distinguished by what is allowed when making derivative software.\nThere are two basic ways of making a derivative work of a program or library: modifying it (forking), or combining it with other software (for example using a library in your program).\nOf course, you can modify and then combine as well.\n\nModifying a program leads to a new program that is derived from the original.\nThis is similar to deriving the new edition of a textbook from the original.\nBoth the original and modified versions are works under copyright law, and both of them may be licensed.\n\nAs an example of combining software, imagine a program A that uses two preexisting libraries B and C.\nThe complete program A will consist of library B, library C, and some code D that connects the libraries together and perhaps adds additional functionality.\nEach of these four items is a work of authorship with a license.\nProgram A can sometimes be referred to as the \"Combined work\", \"Work as a whole\" or \"Larger work\".\n\nDifferent free software licenses place different constraints on how modified versions and combined works can be licensed.\n\nCopyleft licenses add some restrictions to the licensing of derivative works.\nLike permissive licenses, they let you distribute the software unchanged under that license.\nHowever, if you distribute a binary, then you have to include the source code as well.\nModified versions have to be distributed under the same license as the original; you are not allowed to change the license.\n\nThe GNU GPL, for instance, is incompatible with proprietary licenses, because it requires the combined work to be licensed under the GPL, with no additional restrictions allowed.\nHaving a part of the work under a proprietary license is such an additional restriction, so you cannot distribute such a combination, unless the copyright owner of the GPL code gives special permission.\nHowever, GPL codebases often have many contributors and you need all of their permission. This is an intended feature of the license which is by design hostile to being re-licensed in a proprietary fashion.\n{ref}`Contributor License Agreements (CLAs)<rr-licensing-edge-clas>` can be used by GPL projects circumvent this by empowering a single party to make decisions about relicensing if they want to allow for dual licensing of GPL or AGPL codebases.\n\nWhen creating a combined work, a further distinction can be made.\n_Strong_ copyleft licenses on a component require a combined work to be licensed under the same license as the component.\nIn the example above, if library B is distributed under a strong copyleft license such as the GNU GPL, then program A must be distributed under that same license.\n\n_Weak_ copyleft licenses allow the combined work (A) to be distributed under any license, as long as the source for the licensed component (B) is also made available under its original license.\nThey may also require that the recipient of the combined work can re-link the modules after modifying the component.\n\n(rr-licensing-software-overview)=\n## Permission Overview\n\n<table>\n    <thead>\n        <tr>\n            <th rowspan=\"2\"></th>\n            <th colspan=\"2\">Copyleft</th>\n            <th rowspan=\"2\">Permissive</th>\n            <th rowspan=\"2\">Proprietary</th>\n        </tr>\n        <tr>\n            <th>Strong</th>\n            <th>Weak</th>\n        </tr>\n    </thead>\n    <tbody>\n        <tr>\n            <th>Use for anything</th>\n            <td>Yes</td>\n            <td>Yes</td>\n            <td>Yes</td>\n            <td>Sometimes</td>\n        </tr>\n        <tr>\n            <th>Private changes</th>\n            <td>Yes</td>\n            <td>Yes</td>\n            <td>Yes</td>\n            <td>Rarely</td>\n        </tr>\n        <tr>\n            <th>Distribute original</th>\n            <td>Same license, with source</td>\n            <td>Same license, with source</td>\n            <td>Same license, also binary-only<sup>1</sup></td>\n            <td>Rarely</td>\n        </tr>\n        <tr>\n            <th>Distribute modified</th>\n            <td>Same license, with source</td>\n            <td>Same license, with source<sup>2</sup></td>\n            <td>Any license, also binary-only</td>\n            <td>Rarely</td>\n        </tr>\n        <tr>\n            <th>Distribute combined</th>\n            <td>Same license, with source</td>\n            <td>Any license, binary additions</td>\n            <td>Any license, also binary-only</td>\n            <td>Rarely</td>\n        </tr>\n    </tbody>\n    <caption>\n      <div class=\"footnote\">\n        <sup>1</sup>Under any license for the MIT license <sup>2</sup>Relicensing LGPL to GPL is allowed\n      </div>\n      Permissive licenses grant the largest set of permissions to users. Copyleft licenses require redistribution of the original or modified source to use the same license, with weak copyleft licences allowing a different choice of license for the combined work. Proprietary licenses rarely provide any permissions beyond the right to use the software.\n    </caption>\n</table>\n\nWhen you use different pieces of software together to solve a problem, and want to distribute the result, here are the questions you have to answer:\n\n- Which separate works are there, and what is derived from what?\n- Can the derivative works be distributed? Do the licenses allow this, and are they compatible?\n- How should the work(s) be licensed?\n\nThe next section shows some examples of how this is done.\n\n(rr-licensing-compatibility-examples)=\n## Examples\n\nMany of the examples in this section relate to [xtas](http://xtas.net).\nxtas is a natural language processing toolkit for Python that reuses many third-party libraries, programs and data sets, and therefore provides a variety of excellent examples.\n\n```{figure} ../../../figures/xtas-overview96.*\n---\nname: xtas-overview96\nalt: A graphical overview of xtas. A large rectangle represents the combined work xtas. Within this rectangle, there is a wide low rectangle at the top representing the xtas Python code, licensed under the Apache License v2. Underneath this, there are three side-by-side squares, representing respectively Python libraries, software, and data, that are used by xtas. Within the Python libraries square, there are three boxes. The first box contains the words \"BSD\", \"MIT\" and \"ALv2\". The second box contains \"LGPLv2.1\". The third box contains \"GPLv2+\". Within the Software square, there are four boxes. The first box contains \"Web Service\". The second box contains \"LGPL v2.1+\". The third box contains \"Research only\", and the fourth box contains \"GPL 2+/3+\". The Data square also contains four boxes. The first box contains \"CC BY-SA 3.0\". The second box contains \"Research Only\". The third box contains \"No license, US\" and the fourth box contains \"CoNLL'02 only\".\n---\nA graphical overview of xtas.\n```\n\nxtas itself is written in Python, and it uses a number of Python libraries that are licensed under common free licenses.\nThese include the simple permissive BSD and MIT licenses, the permissive Apache License version 2.0 (ALv2), the GNU Lesser General Public License version 2.1 (LGPLv2.1), and the GNU General Public License version 2 or later (GPLv2+).\n\n(Note that the dependency on the GPLv2+ Python library is deprecated, but for the sake of these examples, we will assume it to still be there.)\n\nxtas' Python code is distributed under the Apache License version 2.0.\nSince the xtas authors own the copyright, they can license it any way they like (although there is a gray area concerning GPL dependencies, see below).\nThe xtas authors do not distribute any combined works or binaries, but in the examples below, we will assume that there is a combined work, so that we can consider how it should be licensed.\n\nIn the following examples, we will simplify most of this away and look at one or a few dependencies in turn.\n\n(rr-licensing-compatibility-examples-apachevsbsd)=\n### Apache vs. BSD\n\n```{figure} ../../../figures/xtas-snowball96.*\n---\nname: xtas-snowball96\nalt: An illustration of the xtas vs. Snowball example.  A large rectangle represents the combined work xtas. Within this rectangle, there is a wide low rectangle at the top representing the xtas Python code, licensed under the Apache License v2. Below that is a square containing the words \"Snowball Stemmer\" and \"Python lib BSD\".\n---\nAn illustration of the xtas vs. Snowball example.\n```\n\nxtas uses [Snowball](https://snowballstem.org/), a Python-based stemming library. Snowball is published under the 3-clause BSD license.\nConsidering only xtas and Snowball, we can answer the three questions as follows:\n\n#### Which separate works are there, and what is derived from what?\n\nThere are three works: Snowball, the xtas Python code, and the combined work xtas.\nThe combined work is derived from Snowball and xtas Python code, which are both independent works.\n\nNote that the ALv2 and the LGPL v2.1 explicitly state that source code that is intended to work in combination with a library is not a derivative work, while the binary resulting from (statically or dynamically) linking the pieces together is.\nOther licenses, including the GPL, do not make any explicit statement about this.\n\nAs far as I know, there is no case law on this; we will assume it to be the case in these examples.\n\n#### Can the derivative works be distributed? Do the licenses allow this, and are they compatible?\n\nSnowball is licensed under a permissive license.\nIt can be redistributed under that license, and there are no constraints on the license of derivative works.\nThe xtas authors can license it any way they want.\n\n#### How should the work(s) be licensed?\n\nThe xtas Python code, and the xtas combined work, are licensed under the Apache License v2.0.\n\nIf xtas authors redistribute Snowball, they must do so under the BSD license granted by Snowball authors.\n(They cannot give additional permissions for Snowball, since they do not own the copyright, and additional restrictions would be unenforceable for the same reason.)\n\n(rr-licensing-compatibility-examples-apachevslgpl)=\n### Apache vs. LGPL\n\n```{figure} ../../../figures/xtas-chardet96.*\n---\nname: xtas-chardet96\nalt: An illustration of the xtas vs. chardet example. A large rectangle represents the combined work xtas. Within this rectangle, there is a wide low rectangle at the top representing the xtas Python code, licensed under the Apache License v2. Below that is a square containing the words \"chardet\" and \"Python lib LGPLv2.1\".\n---\nAn illustration of the xtas vs. chardet example.\n```\n\nxtas uses [chardet](https://pypi.org/project/chardet/), a Python library for detecting the character set used in a string of text. Chardet is published under the GNU Lesser General Public License v2.1.\nConsidering only xtas and chardet, we can answer the three questions as follows.\n\n#### Which separate works are there, and what is derived from what?\n\nThere are three works: chardet, the xtas Python code, and the combined work.\nThe combined work is derived from chardet and xtas Python code.\nThe others are independent works.\n\n#### Can the derivative works be distributed? Do the licenses allow this, and are they compatible?\n\nChardet is licensed under a weak copyleft license, so it can be redistributed under the terms of that license.\nDerivative works can be licensed under any license.\nHowever, the LGPLv2.1 requires that the recipient can (and is allowed to) modify the library and use the modified library with the derivative work.\n\n#### How should the work(s) be licensed?\n\nxtas as a whole, and the xtas Python code, can be licensed in any way the authors want, so they used the Apache License v2.0.\nIf they distribute chardet, they must do so under the LGPLv2.1 license granted by its copyright owners.\n\n(rr-licensing-compatibility-examples-apachevsgplv2)=\n### Apache vs. GPLv2\n\n```{figure} ../../../figures/xtas-unidecode96.*\n---\nname: xtas-unidecode96\nalt: An illustration of the xtas vs. unidecode example. The large rectangle represents the combined work xtas. Within this rectangle, there is a wide low rectangle at the top representing the xtas Python code, licensed under the Apache License v2. Below that is a square containing the words \"unidecode\" and \"Python lib GPLv2+\".\n---\nAn illustration of the xtas vs. unidecode example.\n```\n\nxtas previously used [unidecode](https://pypi.org/project/Unidecode/), a Python library for converting text encoded according to The Unicode® Standard into an ASCII approximation of it.\nUnidecode is published under the GNU General Public License version 2 or later (GPLv2+).\nConsidering only xtas and unidecode, we can answer the three questions as follows.\n\n#### Which separate works are there, and what is derived from what?\n\nThere are three works: unidecode, the xtas Python code, and the combined work. The combined work derives from unidecode and the xtas Python code.\n\nWhether the xtas Python code is a derivative work of unidecode is not clearly defined by the law, and there is no case law on this.\nThe Apache license and the LGPL explicitly state that it is not for the purpose of those licenses, but the GPL does not contain such a clause.\n\nAs they are developed separately, and there is no code from unidecode in the xtas code, we assume here that it is not a derivative work.\n\n#### Can the derivative works be distributed? Do the licenses allow this, and are they compatible?\n\nUnidecode is licensed under a strong copyleft license, so it is redistributed under the terms of that license. Derivative works must be licensed under the same license.\n\nUnidecode is licensed under the GPL version 2 or later. This is known as a _disjunctive license_.\nThe copyright owners of unidecode offer everyone a GPLv2 license, but also a GPLv3 license, and even proactively any later version of the GNU GPL that may be created in the future.\nA potential user may choose to accept any one of these licenses, or a combination of them, if they want to copy the work or make derivative works.\n\n#### How should the work(s) be licensed?\n\nIf the xtas authors distribute unidecode, they should do so under the GPL version 2 or higher, as arbitrarily removing licenses from someone else's code does not make sense.\nThe combined work xtas must be distributed under the same licenses or a subset of them.\nThe xtas Python code can be licensed in any way they want.\n\nThe xtas authors should choose a license for the xtas Python code that is compatible with at least one of the licenses that unidecode can be distributed under so that others can assemble and distribute combined works.\nThe ALv2 is compatible with the GPLv3 (but not with the GPLv2, for technical reasons), so they can use it here.\n\nThe combined work should then be licensed under the GPL version 3 or later.\nIf it is important that it can be used under the GPLv2 as well, then the xtas authors can license the xtas Python code under both the ALv2 and the GPLv2 (meaning, they offer both licenses, and the user can choose to accept either or both), and the combined work under the GPL version 2 or later.\n\nFinally, it may be decided later that the xtas Python source code is a derivative work of unidecode because it calls into it.\nEven if none of unidecode is included in the work, then the xtas authors must distribute the xtas Python code under at least one of the GPL licenses that unidecode is distributed under.\nIn that case, they can offer xtas under the ALv2 and GPLv2+ set of licenses.\n\nThe simplest solution, in this case, would be to simply license the xtas Python code and the derived work under the GPLv3.\n\nAs is probably clear by now, dependencies that are under a strong copyleft license complicate your life if you want people to be able to make proprietary works based on your software.\n\n(rr-licensing-compatibility-examples-apachevsall)=\n### Apache vs BSD vs LGPL vs GPLv2\n\n```{figure} ../../../figures/xtas-all-python-libs96.*\n---\nname: xtas-all-python-libs96\nalt: An illustration of the xtas and all Python libraries example. A large rectangle represents the combined work xtas. Within this rectangle, there is a wide low rectangle at the top representing the xtas Python code, licensed under the Apache License v2. Below this, there are three squares. The first square contains the words \"Snowball\" and \"Python lib BSD\". The second square contains \"chardet\" and \"Python lib LGPLv2.1\". The third square contains the words \"unidecode\" and \"Python lib GPLv2+\".\n---\nAn illustration of the xtas and all Python libraries example.\n```\n\nNow, we will consider all three of the above examples at the same time.\n\n#### How many separate works are there, and what is derived from what?\n\nThere are five works: Snowball, chardet, unidecode, the xtas Python code, and xtas the combined work. The combined work is derived from all its components.\n\n#### Can the derivative works be distributed? Do the licenses allow this, and are they compatible?\n\nThe four non-xtas components are under free software licenses, and the xtas authors own the copyright to the xtas Python code, so all five components can be distributed by the xtas authors.\nThe BSD, LGPLv2.1 and GPLv2+ all allow licensing the combined work under the GPL version 2 or higher, so there is at least one license that the combined work can be licensed under.\n\n#### How should the work(s) be licensed?\n\nThe xtas Python code should be licensed under the Apache License v2 and the combined work under the GPL version 3 or higher.\n(See the {ref}`unicode example <rr-licensing-compatibility-examples-apachevsgplv2>` above for alternatives.)\n\n\n### Call External Program\n\nxtas can run the [Stanford CoreNLP program](https://stanfordnlp.github.io/CoreNLP/), which is written in Java and distributed under the GNU GPL version 3 or later. When the user calls the corresponding xtas function, CoreNLP is started by xtas, the user's input is sent to it through a pipe, and then the CoreNLP output is handed back to the user or processed further.\n\n```{figure} ../../../figures/xtas-corenlp1-96.*\n---\nname: xtas-corenlp1-96\nalt: An illustration of the xtas vs. CoreNLP example. The square represents the combined work xtas. Within this square, there is a wide low rectangle at the top representing the xtas Python code, licensed under the Apache License v2. Below that is a square containing the words \"Stanford CoreNLP\" and \"Java program GPLv3+\".\n---\nAn illustration of the xtas vs. CoreNLP example.\n```\n\nOne interpretation of this situation is that it is no different from calling a function in a library and that any distribution of xtas, as a whole, including CoreNLP, should therefore be under the GPLv3+.\nContributing to this interpretation is the fact that xtas will download and install CoreNLP automatically if needed.\n\n```{figure} ../../../figures/xtas-corenlp2-96.*\n---\nname: xtas-corenlp2-96\nalt: Another illustration of the xtas vs. CoreNLP example. The square on the left represents the combined work xtas. Within this square, there is a rectangle representing the xtas Python code, licensed under the Apache License v2. On the right is a separate square representing CoreNLP, with the text \"Stanford CoreNLP\" and \"Java program GPLv3+\". Between the squares are two arrows, one at the top pointing from xtas to CoreNLP, and one at the bottom pointing from CoreNLP to xtas.\n---\nAnother illustration of the xtas vs. CoreNLP example.\n```\n\nAnother interpretation is that xtas and CoreNLP are separate works and that xtas merely communicates with CoreNLP over its standard user interface.\n\nIn this interpretation xtas is a separate program that helps a user use the CoreNLP program from the Python language, and not a derivative work of CoreNLP.\nOne can consider xtas analogous to a package installer and a command shell here, which are clearly not derivative works of the packages they install or the programs they start.\n\nUnder this interpretation, xtas as a whole (not including CoreNLP) can be distributed under any given license (subject to restrictions imposed by its other dependencies of course).\n\nIn practice, the xtas authors do not distribute CoreNLP at all; they only distribute the xtas Python code, under the Apache License version 2.\n\n\n### GPLv3 vs Proprietary License\n\nIn this example project we want to combine the [OpenIFS global circulation model](https://confluence.ecmwf.int/display/OIFS) with the [DALES large-eddy simulation model](https://github.com/dalesteam/dales).\nBoth these models are available as libraries, so the project entails combining the OpenIFS and Dales libraries into a single program.\n\n(This is a simplified example, the reality of this project is a notch or two more complicated, and the below is not exactly what we do.)\n\nThe OpenIFS library (part of the ECMWF weather model code) is available under a proprietary license that allows running the program and making private modifications, but does not allow distributing the program or any derivatives.\nDALES is published under the GPL version 3.\n\n#### How many separate works are there, and what is derived from what?\n\nThere are four works: OpenIFS, DALES, the rest of the program written by us, and the combination of them all. The combined work is derived from its components.\n\n#### Can the derivative works be distributed? Do the licenses allow this, and are they compatible?\n\nThe OpenIFS license does not allow redistribution, so it cannot be distributed. DALES can be distributed, under the GPLv3.\nThe rest of the program is written by us and can be licensed by us if we want to.\n\nThe whole combined work cannot be distributed, since it incorporates OpenIFS.\nIf it did not include OpenIFS, it would have to be distributed under the GPLv3, because of the DALES dependency.\n\n#### Can we work on this privately, without distributing anything?\n\nThe GPL allows making private modifications of software covered by it, with no restrictions, provided the changed software is not distributed at all.\nIn the case of the AGPL, running a server interacted with in some way by users over a network is equivalent to distribution under the GPL and you would be required to provide any users with the source code.\nThe OpenIFS license also allows making private modifications.\nSo we can work on this project (and prepare and run combined works) without violating the licenses, as long as we do not share the results with anyone.\n\nHowever, if we want to collaborate with someone outside our organization, this means that we exchange materials between different legal entities, which counts as distribution.\nWe can do that with our own code (which we can even publish openly under the ALv2) and with DALES, but not with OpenIFS or any combined works.\n\n#### What other options are there in this kind of situation?\n\nWe can try to split up the system into independent programs that run in separate processes and communicate with each other over well-documented, generic interfaces.\nIn this way, there would never be a combined work, just a few independent works that exchange information.\nHowever, to not be considered a single work, how separate the programs have to be is unclear.\n\nWe could also ask the OpenIFS and DALES copyright owners for permission to share combined works between our organization and the outsider.\nThat would remove all uncertainty, but may not be practical in general.\n\nAnother option would be to replace one of the dependencies by one we write.\nThis is usually impractical, both due to time constraints and because the new version would not have the scientific pedigree of the existing one.\n\nThe fundamental issue here is that the GPL tries to make everyone shared stewards of the software we use, while proprietary software tries to keep control in the hands of a single owner.\n\nCombining them in a single project is complicated and not without legal risk, and you should avoid it.\nIf that is not possible, you should tread carefully.\n"
  },
  {
    "path": "book/website/reproducible-research/licensing/licensing-data.md",
    "content": "(rr-licensing-data)=\n# Data Licenses\n\nLike a software license, a data license governs what someone else can do with data that you create or own and that you make accessible to others through, for example, a data repository.\nData licenses vary based on different criteria, such as:\n* Attribution to original owner\n* Permission to redistribute or modify original\n* Inclusion of the same license with derivatives or redistributions\n\nAs a result, accessibility to your data is affected by the data license you choose.\n\n(rr-licensing-data-cc)=\n## Creative Commons Licenses\n\nCC licenses, although not tailored for data, can be used as data licenses in some cases, such as CC0 for public domain data or the commonly used CC-BY license.\nThe Creative Commons website provides a [summary page](https://creativecommons.org/about/cclicenses/) @creativecommons2020licenses outlining all the available licenses, explained with visual symbols as discussed in [](#rr-licensing-documentation), and has also generated videos with explanation (for example, [CC-BY](https://www.youtube.com/watch?v=_IBTfklg8q0)).\n\n(rr-licensing-data-cc-cc0)=\n### Dedicating Your Work to the Public with CC0\n\nCC0 serves as a public dedication mechanism, where you relinquish all copyrights to your data.\nThis means that anyone can modify, redistribute or build on your work.\nFurther, by using CC0, you forfeit the right to attribution.\nInstead, you have to rely on norms such as good citation practices in academic communities to be recognized as the creator.\nSeveral organizations, such as universities, museums, governmental bodies and scientific publishers, have chosen CC0 for access to at least part of their data.\n\n(rr-licensing-data-odc)=\n## Open Data Commons\n\nOpen Data Commons provides three licenses that can be applied specifically to data.\nThe [webpages](https://opendatacommons.org/licenses/index.html) @odk2020odc of each of these licenses include human-readable summaries, with the ramifications of the legalese explained in a concise format.\n\n(rr-licensing-data-odc-pddl)=\n### The Public Domain Dedication and License or PDDL\n\nThe PDDL is analogous to CC0, where you waive all your rights to the data you are putting into the public domain.\nIt comes with a [set of recommended community norms](https://opendatacommons.org/licenses/pddl/norms.html), which are not mandatory to include and do not form a legal contract but can be useful to have as a guide to encourage fair, open sharing of data.\nIt is also possible to put together a customized set of norms that serve your data-sharing community better.\n\n(rr-licensing-data-odc-odc-by)=\n### The Attribution or ODC-BY License\n\nThis license protects your attribution rights as a data owner or creator, just like the **BY** permission mark of CC licenses.\nAny use or distribution of your database must also include information on the license used with the original.\n\n(rr-licensing-data-odc-odbl)=\n### The Open Database License or ODbL\n\nThe ODbL adds two more restrictions to the ODC-BY license.\nThe first is that any public uses of your data must be shared with the same license, similar to the CC **SA** permission mark.\nThe second is that if any version of your data is redistributed in a 'closed' format (for example, with Technological Protection Measures), it is mandatory for this redistribution to also be available in a version that is free of such closure measures.\n\n(rr-licensing-data-differences)=\n## A note on the differences between CC and ODC Licenses\n\nAlthough it can seem like the licensing options offered by Creative Commons and Open Data Commons are exactly the same, there are some important differences.\n\nOne difference is the scope of rights that are covered by the license, which is nicely explained [here](https://wiki.creativecommons.org/wiki/Data#What_is_the_difference_between_the_Open_Data_Commons_licenses_and_the_CC_4.0_licenses.3F).\nThe ODC licenses were made specifically to be applied to data, and typically cover only database rights.\nOn the other hand, the CC licenses are more general-purpose and can be applied to other materials.\nCC licenses also cover copyrights and other neighbouring rights.\n\nAnother difference is the availability of a standardised Community Norms document with the PDDL.\nThe lack of such a document with CC0 means that you have to rely on community norms, which may often be unspoken or unwritten and can vary from community to community, to ensure fair attribution.\nA comparison between the PDDL and CC0 is provided [here](https://opendatacommons.org/faq/).\n\n(rr-licensing-data-options)=\n## Other Licensing Options\n\nIt is also possible to choose other data licenses that may have been developed with a specific use case or community in mind or that are not in widespread global use.\nThese include licenses that were developed by national governments, such as the [Norwegian License for Open Government Data](https://data.norge.no/nlod/en/) @nlod2020governmentdata.\nOften, such licenses are the recommended data licensing option within the corresponding country, especially for data created or owned by their public bodies.\nAnother example is the [Open Government Licence](http://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/) or OGL, which was developed by The National Archives, UK.\n\nThe [Data Curation Center (DCC) guide](https://www.dcc.ac.uk/guidance/how-guides/license-research-data) @ball2011license on how to license research data expatiates on the licenses discussed in this chapter, and gives more information about [Prepared Licenses](https://www.dcc.ac.uk/guidance/how-guides/license-research-data#x1-6000), [Bespoke Licenses](https://www.dcc.ac.uk/guidance/how-guides/license-research-data#x1-7000), [Multiple Licensing](https://www.dcc.ac.uk/guidance/how-guides/license-research-data#x1-13000) and [Mechanisms for Licensing Data](https://www.dcc.ac.uk/guidance/how-guides/license-research-data#x1-14000).\n\nIf you would like to read more about the challenges and finer points of licensing, [this article](https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3320472) is a great resource to get you started.\n\n***Chapter Tags**: This chapter is curated for the `Turing Data Study Group` (`turing-dsg`).*\n"
  },
  {
    "path": "book/website/reproducible-research/licensing/licensing-documentation.md",
    "content": "(rr-licensing-documentation)=\n# Licensing Documentation and Creative Outputs\n\nLicensing documentation and creative outputs with an appropriate license clarify how accompanying materials can be used, copied, or shared.\nLicenses can be applied to a standalone resource or in combination with licenses associated with other kinds of artefacts, such as software.\n\nFor example, *The Turing Way* uses two licenses, one for documentation (Creative Commons) and another for code (MIT).\nYou can find details in the [LICENSE.md](https://github.com/the-turing-way/the-turing-way/blob/main/LICENSE.md) located in the main GitHub repository.\n\n## Creative Commons Licenses\n\nAppropriate license for documentation or other creative outputs allows making resources available to users with defined conditions (or limitations) for copying, reuse, redistribution, and modification.\n[Creative Commons (CC)](https://creativecommons.org/) is the most widely used license for text, images, audio, and video.\n\nTo help determine which Creative Commons License is right for you, the Creative Commons organisation offer a comprehensive [set of documentation](https://creativecommons.org/share-your-work/cclicenses/) and a [chooser to get started in a few steps](https://creativecommons.org/choose).\n\n```{note}\n\nCC licenses give everyone from individual creators to large institutions a standardised way to grant the public permission to use their creative work under copyright law. From the reuser’s perspective, the presence of a Creative Commons license on a copyrighted work answers the question, \"What can I do with this work?\"\n\nCC licenses are legal tools that creators and other rights holders can use to offer certain usage rights to the public while reserving other rights.\nThose who want to make their work available to the public for limited kinds of uses while preserving their copyright may want to consider using CC licenses. Others who want to reserve all of their rights under copyright law should not use CC licenses.\n\n*Reference: [Creative Commons (CC)](https://creativecommons.org/share-your-work/cclicenses/)*\n\n```\n\nThere are six different license types, listed from most to least permissive nature (illustrated in the image below):\n\n1. **CC 0** allows you to copy and publish, does not require attribution, allows commercial use, allows you to modify and adapt, and allows you to change the license.\n2. **CC BY** allows you to copy and publish, requires attribution, allows commercial use, allows you to modify and adapt, and allows you to change the license.\n3. **CC BY Share-Alike (SA)** allows you to copy and publish, requires attribution, allows commercial use, and allows you to modify and adapt, but does not allow you to change the license.\n* **CC BY Non-Disclosure (ND)** allows you to copy and publish, requires attribution, allows commercial use, does not allow you to modify and adapt, and allows you to change the license.\n* **CC BY Non-Commercial (NC)** allows you to copy and publish, requires attribution, does not allow commercial use, allows you to modify and adapt, and allows you to change the license.\n* **CC BY Non-Commercial Share-Alike (NC-SA)** allows you to copy and publish, requires attribution, does not allow commercial use, allows you to modify and adapt, and does not allow you to change the license.\n* **CC BY Non-Commercial Non-Disclosure (NC-ND)** allows you to copy and publish, requires attribution, does not allow commercial use, does not allow you to modify and adapt, and allows you to change the license.\n\n```{figure} ../../../figures/cc-license-chart.* \n---\nheight: 500px\nname: Creative Commons License Types\nalt: >\n  Down the left-hand side of the image, there is a list of Creative Commons license types and their corresponding symbols, across the top is a list of properties of these licenses.\n  This creates a matrix to indicate which licenses have which properties using checkmarks.\n  Public Domain is represented by a C in a circle with a line through it.\n  Attribution is represented by a person in a circle.\n  CC By attribution Share Alike is represented by a person in a circle and a circular arrow in a circle.\n  CC By attribution no derivatives is represented by a person in a circle and an equals sign in a circle\n  CC By attribution non commercial is represented by a person in a circle and a dollar sign in a circle with a line through it\n  CC By attribution non commercial share alike (NC-SA) is represented by a person in a circle, a dollar sign in a circle with a line through it, and a circular arrow in a circle.\n  CC By attribution non commercial no derivatives is represented by a person in a circle, a dollar sign in a circle with a line through it, and an equals sign in a circle.\n---\nCreative Commons License Types. From [George Washington University Libraries Open Textbooks](https://libguides.gwu.edu/opentextbooks/creative_commons). Used under a CC-BY 4.0 licence.\n```\n\nThe six licenses and the public domain dedication tool give creators a range of options.\nThe best way to decide which is appropriate for you is to think about why you want to share your work and how you hope others will use that work.\n\nThe [Creative Commons License Chooser](https://creativecommons.org/choose/) is a good place to assess which type of license is a good fit for your work.\n\n## Other Licenses for Documentation\n\n- **GNU Free Documentation License (GFDL)**: Often used for documentation alongside GNU software, GFDL requires users to use and distribute modified versions under the GFDL. Wikipedia is a prominent use of this license. Visit [gnu.org for details](https://www.gnu.org/licenses/fdl-1.3.html).\n- **Fonts**:  The Open Font License (OFL) attempts to be a compromise between the values of the free software and typeface design communities. It is used for almost all open source font projects, including those by Adobe, Google and Mozilla. Visit [choosealicense.com for details](https://choosealicense.com/licenses/ofl-1.1/).\n"
  },
  {
    "path": "book/website/reproducible-research/licensing/licensing-ethical-source.md",
    "content": "(rr-licensing-ethical-source)=\n# Ethical Source\n\nDecisions about the license selected at the inception of a project can have long-lasting and significant ramifications.\nThe choices that we make about how our work is licensed shape who can and cannot legally use our work and for what purpose.\n\nTherefore, in this subchapter, we discuss the ethical ramifications of licensing choices.\nSince there are divergent schools of thought on ethics, we aim to provide information about the implications of licensing choices without prescribing a specific ethic.\n\n## Ethical Source Movement\n\nThe ethical source movement seeks to affirmatively protect specific user rights by curtailing freedom 0, the freedom to use software 'for any purpose' and prohibiting the use of the software for unethical purposes.\nConsequently, these licenses by the classical definitions of free and open source software from the FSF and OSI would not be considered free or open source licenses.\nEthical Source licenses do generally resemble conventional free/libre and open source in the other three criteria of the definition.\nTheir merits versus conventional open source licenses have been the subject of some debate, and their adoption has thus far been relatively limited.\n\nA leading figure in this movement is Coraline Ada Ehmke, creator of the [Contributor Covenant](https://www.contributor-covenant.org/), the [Hippocratic License](https://firstdonoharm.dev/), and the founder in 2020 of the [Organisation for Ethical Source](https://ethicalsource.dev/).\nIn the words of its advocates, [Ethical Source](https://ethicalsource.dev/) was created to \"empower developers, giving us the freedom and agency to ensure that our work is being used for social good and in service of human rights.\"\nMotivated by the growing use of open source software for technologies such as mass surveillance and racial profiling, the movement aims to reduce this \"misuse\" of open source software.\n\nEthical Source extends upon the principles of open source to provide developers additional means to ensure their work is used for applications aligned with ethical values important to them, like:\n\n- Advocating for workers' rights and human rights\n- Ensuring protections against violence and discrimination\n- Protecting privacy\n\nA list of Ethical Licenses and their targeted applications can be found on the [Ethical Source website](https://ethicalsource.dev/licenses/).\nThe core Hippocratic license, for example, prohibits a variety of human rights abuses and mandates equal pay for equal work.\nIt can be further extended using [their license building tool](https://firstdonoharm.dev/build/) with modules covering:\n\n- Fossil Fuel Divestment\n- Ecocide\n- Extractive Industries\n- Boycott / Divestment / Sanctions\n- Taliban\n- Myanmar\n- Xinjiang Uygur Autonomous Region\n- US Tariff Act\n- Mass Surveillance\n- Military Activities\n- Law Enforcement\n- Media\n- Social Auditing\n- Workers on the Board of Directors\n- Supply Chain Transparency\n- Copyleft\n\nLicensees are given 30 days upon notification of a violation or harm to remedy it before the license is terminated.\nThe potential difficulty of demonstrating compliance with these terms and of bringing effective legal action against any party not complying with them has attracted some scepticism about the effectiveness of this approach.\n\nWhilst many potential violators of these license terms lie outside the jurisdictional reach of courts which might enforce them, many also do business with partners which might reside within the reach of these courts.\nIf for example Thermo Fisher Scientific had been using a library licensed under the Hippocratic license, especially one using the Xinjiang Uygur Autonomous Region module, in the software on their sequencing instruments they might have opened themselves up to liability when [selling DNA testing equipment to police departments in Xinjiang and Tibet](https://theintercept.com/2022/09/13/china-tibet-police-dna-thermo-fisher/) legal action against them in the US courts is more plausible than legal action against the CCP.\nThe challenge might then be one of persuading such companies to expose themselves to the liabilities associated with using software with these licenses.\n\n(rr-licensing-ethical-risks)=\n## Potential Risks\n\nIn the absence of case law deciding on license enforcement decisions for these licenses, it is as yet unknown what (if any) administrative burden may be associated with demonstrating compliance with ethical source and RAIL licenses.\nWhilst unlikely for any given user of software licensed in this fashion, it is hypothetically possible that such licenses could be weaponised by bad actors seeking to impose costs on the entities using the licenses, as [has occurred before](https://onezero.medium.com/beware-the-copyleft-trolls-a8b85c66b7eb) with 'exploits' in open licenses.\nA well-intentioned organisation using tools under such a license could theoretically be sued for not complying with the terms of these licenses and have to pay legal fees and/or incur other expenses associated with demonstrating compliance with the terms, depending on decisions made during the legal process.\nThese licenses, because they impose greater restrictions on their licensees, expose a greater attack surface for such bad actors.\n\nCompliance with the terms of conventional free software licenses is relatively easy to demonstrate.\nTo comply, you can simply share the code; if you have a well-managed internal code repository, this should be inexpensive.\n(If you have to comb through your git history to remove secrets you inadvisedly committed, then things might get more expensive.)\nCompliance with the terms of an ethical source license may, however, be considerably more complex and expensive to demonstrate definitively.\nSuch costs are less likely to be weaponised against individual end users of software licensed in this fashion, but rather institutions which depend on software of this kind.\nInstitutions which are either small enough to have their finances seriously damaged or their operation impeded, or which are large enough to extract a monetary settlement of some kind, would be possible targets.\nIn short, they suffer from the same issues as fair-use exemptions; they are not readily administrable.\n\nEven if it is not the intent of proponents of ethical source, some parties may seek to use technical enforcement measures, also known as digital rights/restrictions management (DRM), to enforce the terms of ethical source licenses.\nReturning to the earlier example, if sequencing instruments being used for unlicensed purposes could be remotely disabled by their manufacturers, this raises some questions.\nWhat about the use of these machines with 3rd party or unlicensed components in places which cannot afford 'official' components but which need to use these machines for public health reasons?\nProperty rights, the 'doctrine of first sale', and 'right(s) to repair' would conventionally protect the ostensible owners of equipment from such an imposition by its original manufacturer.\nThese rights come at the expense of being able to use technical enforcement measures to police the misuse of these systems, but with the benefit of protecting the freedoms to do as you will with your own property.\nTechnical enforcement measures are often brittle.\nWhat happens when your sequencer can't phone home to check in with the server that tells it if its license is valid, or when that server disappears because the model is no longer in its official support window?\nTechnical enforcement measures are often invasive; to avoid being circumvented, they must run with the highest level of privilege on a system, and this access can readily be abused to surveil users as well as create a security weakness.\n\nTechnical enforcement measures are often ineffective; they can often be bypassed by technically competent users who can share their bypasses with other less technical users.\nThese measures are often more effective legally than they are technically due to the existence of 'anti-circumvention' laws.\nThe canonical example of an anti-circumvention law is [17 U.S. Code § 1201](https://www.law.cornell.edu/uscode/text/17/1201), but many other jurisdictions have equivalent statutes as a result of treaties and trade agreements.\nThese laws criminalise bypassing such protections, meaning that law-abiding users must suffer the downsides of technical enforcement whilst the supposed targets, often outside the jurisdiction of would-be enforcers, simply circumvent these measures and use them anyway.\nThis often permits manufacturers to abuse these statutes to prevent users of their products from using them in ways not in the financial interest of the original manufacturer, such as by using cheaper 3rd party consumables or repairs.\n\nManufacturers can also leverage their ongoing access to their devices to non-consensually (generally with the veneer of consent provided by requiring the acceptance of an end user license agreement (EULA)), spy on end users, harvest their data and extract value from it.\nExpanded usage restrictions could create an incentive or excuse for manufacturers to strengthen or expand technical enforcement measures.\nIt could be argued that they now have a greater obligation to police the use of their tools in order to demonstrate compliance with these licenses.\n"
  },
  {
    "path": "book/website/reproducible-research/licensing/licensing-floss.md",
    "content": "(rr-licensing-floss)=\n# Free/Libre or Open Source software\n\nSince, in *The Turing Way*, we aim to promote open and reproducible ways of working, in this subchapter, we have explained free and open source software (FLOSS) licensing.\n\nThese same concepts developed originally in the context of software have often been applied to other creative outputs.\nConsequently, they are among the most developed and useful contexts for understanding the licensing of other things.\n\nSoftware that is not free (in the 'libre' sense defined below) is proprietary.\nSoftware that you are not allowed to copy or modify falls into this category, as does software with usage restrictions, for example, \"For research use only\" or \"For non-commercial use only\".\n\nPermissively licensed things can generally be used by anyone for any purpose.\nA popular minimal example of this for software is known as the [MIT license](https://mit-license.org/), for other works, [CC0](https://creativecommons.org/share-your-work/public-domain/cc0/) is the 'public domain' license.\nCopyleft licenses attempt to ensure that any re-distributions or derived works also remain 'free'; the canonical example is the [GPL](https://www.gnu.org/licenses/gpl-3.0.html).\nUnlike permissively licensed content, which can be modified and redistributed under a different license (including as a part of a closed and/or for-profit project), copyleft content (modified or unmodified) must be distributed under the same, or a compatible license, which retains the copyleft obligation.\nIn other words, if you take copyleft content, modify it, and distribute your modifications, those modifications must also be copyleft.\n\n(rr-licensing-floss-copyleft)=\n## Copyleft License\n\nThe concept of copyleft licenses and their first example, the GPL, originated with Richard Stallman, who founded the Free Software Foundation (FSF) in 1985.\nThe idea is a 'hack' of copyright law to use the protections that it affords to privately owned software to a software commons.\n<!-- citations needed -->\n\n### The FSF's four Fundamental Freedoms of FLOSS\n\n- Freedom 0: The freedom to run the program as you wish, for any purpose.\n- Freedom 1: The freedom to study how the program works, and change it, so it does your computing as you wish.\n  Access to the source code is a precondition for this.\n- Freedom 2: The freedom to redistribute copies so you can help others in your community.\n- Freedom 3: The freedom to distribute copies of your modified versions to others.\n  By doing this, you can give the whole community a chance to benefit from your changes.\n  Access to the source code is a precondition for this.\n\nOther influential definitions of free and open source software include: The Debian project's [Debian Free Software Guidelines (DFSG)](https://www.debian.org/social_contract#guidelines), and the open source initiative (OSI)'s [Open Source Definition](https://opensource.org/osd/).\nThe terms 'Free'/'Libre' & 'Open Source' software are often used somewhat interchangeably, but have different connotations.\nThe use of 'free software' typically denotes a more hardline political commitment to the ideals of the free software movement, and is associated with a preference for copyleft licenses.\nThe name 'open source' places the emphasis on freedom 1 and could more readily be confused with the concept of 'source available' software, based on a naive interpretation of the name.\n'Open source' is associated with, if not a preference for, then a more favourable view of, permissive licenses.\n\n```{note}\nThe word 'free' in English does not distinguish between something being monetarily free 'gratis' from politically free 'libre'.\nThis is often summarised along the lines of: \"free as in speech, not necessarily free as in beer\"\nThus, the phrase 'libre software' is sometimes encountered in English to succinctly distinguish the concept of software which respects your liberty from software which is financially free to use ('gratis').\n\nThe ambiguity in how 'free' is used/perceived has led to the name 'Freeware', which is software that can be copied without paying anyone, but comes without source and cannot be modified.\nThe 'free' in 'freeware' is gratis but not libre.\nIt is also common to encounter the acronyms FOSS (Free and open source software) and FLOSS (Free/libre and open source software)\n\nAn important thing to note here is that although open source software is free to use, building and maintaining software requires extensive labour and resources that are not free and should not be trivialised.\nTo reflect this, more recently, the phrasing of \"free as in puppy\" is used to imply that you need to care for it to survive and thrive.\n```\n\nThe FSF contends that all software should respect these freedoms and that all software which does not respect these freedoms creates an asymmetric relationship between the users and developers of that software, which can readily be abused by the developers to exploit their users.\nIf developers are bad stewards of a free software project, the friction for replacing them is lower, as all of the work put into the software does not need to be redone.\nA 'fork' of the project can be made, developed and maintained by different developers whom the community of users deem a better steward.\n\nThis is not true of proprietary projects where the developers own the rights to the code and thus cannot be readily replaced by the community of users if they begin to abuse these users, who are now held captive by switching costs.\nIt should be noted that an acrimonious project fork is quite uncommon and by no means always successful; it is the move of last resort.\nThe credible threat of a fork redresses the power balance between developers and users, giving users leverage if developers make unpopular choices.\n\n### Protecting the Rights of Creators and Users\n\nCopyleft licenses are an attempt to ensure that software remains effectively under community ownership and cannot be used to make proprietary software which does not respect the four freedoms and may thus result in the abuse of its users.\nTo attempt to achieve this goal, copyleft software requires that when distributing copyleft software or in some cases derived works that you do so under the same terms as the original license.\nCreative Commons 'share-alike' licenses attempt the same thing for other content.\nOne of the advantages of this approach is that the simplest way to redistribute your changes is often to contribute them to the 'upstream project' or to 'upstream' them.\nIf you add some features to a codebase for your own use and contribute them upstream, then you get the advantage of the assistance of upstream maintainers in keeping your code up to date and working correctly with the rest of the project.\nYou don't have to maintain your own fork and keep it up to date with the latest patches from the rest of the codebase, and you don't have to manage your own distribution.\nAll this also means that everyone else benefits from your improvements, and you benefit from everyone else's.\nBeing a good open source citizen means playing by these rules and, if you can, contributing your fixes and improvements to upstream projects, not just freeloading off of them.\n\nCopyleft licenses do not prohibit commercial use; indeed, numerous companies exist which develop copyleft projects.\nMany of those generate revenue through support services instead of selling licenses, which would incentivise an unhealthy relationship with their users.\n[Nextcloud](https://nextcloud.com/) is an excellent example of a commercial, open source project.\nNextcloud makes use of the [AGPL v3.0](https://www.fsf.org/bulletin/2021/fall/the-fundamentals-of-the-agplv3), a license which extends the protections of the GPL to software used over a network.\nIt gives users who interact with this software over a network, for example by using a web service, rather than running it on their own computers, the right to access a copy of the source code, which they are further free to modify and distribute as is usual for the GPL.\n\nWithin copyleft licenses, there are 'strong' and 'weak' copyleft licenses.\n'Strong' copyleft licenses require that combined works which contain them as a library also carry the same license, but weak copyleft licenses permit their re-distribution as a library within a combined work under a different license.\nWe will define derived and combined works in the section on license compatibility, where the detailed implications of the distinctions between strong & weak copyleft, and permissive licensing are explored in more practical detail.\nIt is important to note that licenses can be incompatible, such that creating a combined work is highly impractical to do legally.\n\n<table>\n    <thead>\n        <tr>\n            <th colspan=\"3\">Free</th>\n            <th rowspan=\"3\">Proprietary</th>\n        </tr>\n        <tr>\n            <th colspan=\"2\">Copyleft</th>\n            <th rowspan=\"2\">Permissive</th>\n        </tr>\n        <tr>\n            <th>Strong</th>\n            <th>Weak</th>\n        </tr>\n    </thead>\n    <tbody>\n        <tr>\n        <td>GPL<sup>1</sup> CDDL<sup>2</sup></td>\n        <td>LGPL<sup>3</sup> MPL<sup>4</sup></td>\n        <td>BSD<sup>5</sup> MIT<sup>6</sup> Apache</td>\n            <td>Research Only: No&nbsp;copying, No&nbsp;modification</td>\n        </tr>\n    </tbody>\n    <caption>\n      <div class=\"footnote\">\n        <sup>1</sup>GPL: GNU General Public License <sup>2</sup>CDDL: Common Development and Distribution License <sup>3</sup>LGPL: GNU Lesser General Public License <sup>4</sup> MPL: Mozilla Public License <sup>5</sup> BSD: Berkeley Software Distribution <sup>6</sup> MIT: Massachusetts Institute of Technology\n      </div>\n      Licenses can either be Free or Proprietary, with Free Licenses further classified as Copyleft or Permissive.\n    </caption>\n</table>\n\n(rr-licensing-usage-restriction)=\n## What are 'Usage Restricting' Licenses?\n\nUsage restricting licenses seek to affirmatively protect users or others affected by the use of the work by placing specific restrictions on its use.\nThis curtails freedom 0, the freedom to use software 'for any purpose' and prohibiting the use of the software, or other system, for unethical purposes.\nBoth 'Ethical source' & 'Responsible AI' Licenses are examples of this approach and seek to place restrictions on the uses to which the licensees can put the software or machine learning systems licensed in this fashion.\nConsequently, these licenses by the classical definitions of free and open source software from the FSF and OSI would not be considered free or open source licenses. They do however generally resemble them in the other three criteria of the definition.\nTheir merits versus conventional open source licenses have been the subject of some debate, and their adoption has thus far been relatively limited.\n\nEven an attribution requirement (the BY in CC-BY) can in some cases be considered a usage restriction.\nFor example the Debian project found the [Common Public Attribution License (CPAL)](https://en.wikipedia.org/wiki/Common_Public_Attribution_License) to be incompatible their free-software guidelines for this reason whilst it is approved by the Open Source Initiative.\nIn the case of academic works attribution requirements can serve to re-enforce the citation convention with the force of copyright law.\n\n(rr-licensing-welcoming)=\n### Alternative to Proprietary Solutions\n\nSome people avoid using proprietary or non-free resources, such as software, on principle to the greatest extent that they can.\nIt is highly impractical to completely avoid all non-free software in the world today, so many have compromises and workarounds.\nThis might include measures such as only running proprietary code in a sandboxed environment like a web browser, but this can impose an additional burden on these users.\nThis is especially true if proprietary tools do not offer first-class features in browsers or support free software operating systems like Linux.\nConsequently, the choice to use open infrastructure is important if you want to be inclusive of people who adhere strongly to the free software ethos and consider being asked to use non-free software as an imposition.\nA small minority of people simply will not participate if doing so requires that they use non-free software.\n\n(rr-licensing-choosing)=\n### Where to Find Open Licenses for Code and Software?\n\n- The [Open Source Initiative (OSI)](https://opensource.org/licenses/) maintains a list of [approved licenses](https://opensource.org/licenses/) open source licenses\n- [Free Software Foundation](https://www.fsf.org/) maintains a [list of GPL-Compatible Free Software Licenses](https://www.gnu.org/licenses/license-list.html#SoftwareLicenses)\n   - [GNU/FSF recommendations](https://www.gnu.org/licenses/license-recommendations.html)\n- [choosealicense.com](https://choosealicense.com/) provides a tool to guide you through the license choice project.\n- [Organisation for ethical source](https://ethicalsource.dev/) maintains a list of [ethical source licenses](https://ethicalsource.dev/licenses/)\n- License guidance for Machine Learning Models have been provided in the {ref}`rr-licensing-ml`\n  - You can refer to [Responsible AI Licenses (RAIL)](https://www.licenses.ai/) for Machine Learning (ML)/Artificial Intelligence (AI) systems\n  - [Creative Commons](https://creativecommons.org/) licenses do not contain specific terms about the distribution of source code, however, it can be combined with Software licenses to different parts of ML/AI systems: Creative Commons to training data and weights, software licenses to code used in training / deployment.\n\nLicense for documentation, data, hardware and machine learning models, please refer to next subchapters.\n\n(rr-licensing-enforcement)=\n### Licencing enforcement\n\nThere have been a number of successful legal cases that have been brought in defence of the terms of copyleft licenses obliging the parties abusing the terms of these licenses to appropriately release their code.\nBut this can be hard to discover, as it is not immediately obvious if copyleft code has been used from looking at a black box proprietary end product.\n\n<!-- citations needed -->\n\nOrganisations which take legal action in defence of free software, and which can provide information and resources for anyone else seeking to do the same, include:\n\n- [Software Freedom Conservancy](https://sfconservancy.org/)\n- [Software Freedom Law Centre](https://softwarefreedom.org/)\n- [FSF - licensing and compliance](https://www.fsf.org/licensing/)\n- [Free Software Foundation Europe (FSFe) - legal work](https://fsfe.org/activities/legal.en.html)\n- [Electronic Frontiers Foundation - legal cases](https://www.eff.org/cases)\n\n(rr-licensing-edge)=\n### Pertinent edge cases\n\n(rr-licensing-edge-clas)=\n#### Contributor license Agreements\n\nThe holder of the copyright on a copyleft project can still re-license that project or dual-license that project under a different license, for example to grant exclusive rights to commercially distribute that project with proprietary extensions or to make future versions proprietary.\nIn a large community developed project, this would require the consent of all contributors, as they each own the copyright to their contributions.\nTo get around this, some copyleft projects developed by companies that commercially license proprietary extensions to these projects ask their contributors to sign contributor license agreements (CLAs) which may assign the contributor's copyright to the company, or include other provisions so that they can legally dual-license the project.\n\n(rr-licensing-edge-available)=\n#### 'Source Available' or 'Shared Source'\n\nUnder a proprietary license the code is generally not made public.\nSome projects share their code but do not license its re-use, modification or redistribution.\nThis is known as being 'source available' or 'shared-source', the [Vivaldi](https://vivaldi.com/) web browser is an example of such a project.\n"
  },
  {
    "path": "book/website/reproducible-research/licensing/licensing-hardware.md",
    "content": "(rr-licensing-hardware)=\n# Open Hardware Licenses\n\n(rr-licensing-hardware-prerequisites)=\n## Prerequisites\n\nThis chapter builds on the chapter {ref}`rr-licensing` and it is advisable to read it before reading this one.\n\n## Introduction\n\nWhile this chapter focuses on open source hardware licenses, this should be considered within the broader open source movement. \nThe open source licensing of hardware came out of open source software licenses and, in fact, several open source software licenses are widely accepted within the open hardware community. \nPlease refer to the warnings and description of terms you will find in the introductory chapter\n{ref}`rr-licensing`.\n\nAs explained there, for many open source licenses to be applicable, it is necessary to figure out what parts of the project are actually copyrightable and therefore can be licensed.\nThis complicates thing for hardware, as copyrights do not protect functional items and hardware can be a combination of creative and functional elements.\nWhile the former is protected by copyright, the latter would usually need a patent (if it is indeed patentable) to be protected.\nIt is important to note that copyrights and patents are mutually exclusive: something is either protected by copyright or it is protected by a patent, but not both simultaneously.\n\n\n\n### Which licenses to use\n\nWhile, as discussed above, there are difficulties with regard to applying licenses to open source hardware projects, there are community practices that are good to know and follow.\nA good place to start is to see which licenses are generally accepted by OSHWA:\n\n- [GNU General Public License (GPL)](http://www.gnu.org/licenses/gpl.html/)\n-\t[Creative Commons licenses](https://creativecommons.org/licenses/)\n-\t[CERN Open Hardware Licenses](https://ohwr.org/project/cernohl/wikis/home)\n-\t[TAPR Open Hardware License](https://tapr.org/the-tapr-open-hardware-license/)\n-\t[Solderpad Hardware License](http://solderpad.org/licenses/)\n\nThe licenses listed above are used in open source hardware. \nThey can be broadly classified as permissive licenses and reciprocal or copyleft licenses.\nYou may see here the connection with software licenses.\nAs mentioned before, this is not an accident.\n\n\n\n#### Non-Hardware Native licenses\n\nFor the software and documentation part of your hardware documentation package, you should use a corresponding license. Please refer to the description below {ref}`rr-licensing-hardware-multiple` and to the other sub-chapter of the licenses chapter.\nUsually, the CC licenses offer a spectrum of licensing for documentation and data, with the CC0 and CC-BY licenses being permissive open source licenses. \n\nFor software, the GNU(GPL) developed within the context of the open source software movement (by Richard Stallman) is a popular copyleft license.\nThe MIT license and FreeBSD license are also permissive licenses. \n\n#### Hardware Native licenses\n\nDue to the unique challenges faced when licensing open source hardware, licenses specifically tailored to be used with open source hardware have been created.\nThe CERN Open Hardware License is a prominent member in this category with the [CERN OHL v2.0](https://ohwr.org/project/cernohl/wikis/Documents/CERN-OHL-version-2/) license coming in three flavours:\n\n- the copyleft or strongly reciprocal CERN-OHL-S variant\n- the weakly reciprocal CERN-OHL-W variant\n- the permissive CERN-OHL-P variant.\n \n  \nThe aforementioned TARP Open hardware license is also a copyleft license, while the Solderpad Hardware License is a permissive license. \n\nThe advantage of using the licenses developed specifically for hardware is that they try to address the peculiarities of licensing open source hardware.\nThe CERN OHL v2.0 for example address the fact that there are different elements to an open hardware project and can be used for the software parts of the open hardware project as well, though CERN itself encourages the use of dedicated open source software licenses for those parts. \n\n(rr-licensing-hardware-multiple)=\n### Multiple licenses for hardware\n\nAdopting the OSHWA certification regime to distinguish and apply the licenses is a good strategy. \nThe certification considers four elements: a) the **hardware**, b) **software**, c) **documentation** and d) **branding**.\nDepending on the type of project and scope one or two elements might not be relevant but for the most part having a plan for all four is a good idea. \n\n\n#### Hardware design and licenses\n\nThis consists of the actual hardware elements of the project and utilising a license like a CERN OHL would be appropriate.\nThis element consists of the functional parts of the \"product\".\nIn general, functional parts of an invention could be protected by a patent, but in our context the Open Hardware Licenses play that role. \n\nSince a patent has to be specifically applied for and given by the patent office of the country, the aspects that the open hardware licence actually protects can be uncertain.\nThis does not mean there is no point to utilizing such a license but simply that one must be mindful of their limitations.\nThe following line from the certification guidelines from OSHWA, gives a good perspective on the use of these hardware licenses, “It is best to think of hardware licenses as guiding tools for good actors, not ways to punish bad actors.”\n\n#### Software\nDepending on the type of open hardware project this element might not be needed.\nBut in the case where software is required for the functioning of the open source hardware this element should be addressed.\nUsing an open source initiative approved  compatible license is a good way to go about this.\nUsing for example the GNU(GPL) 3.0 for a copyleft license of the software and perhaps the MIT or FreeBSD in case of permissive software licensing.\nDo keep in mind that the software under discussion here includes things like firmware.\nFirmware is not considered an element of the hardware. \n\n#### Documentation\nThis element includes all the descriptions and discussions on how to build and use the hardware.\nThis include the design files.\nThe licenses applied here work on the basis of copyright and as such what is protected is the copyrightable aspects presented here.\nSo creative aspects of the design might be protected but not the functional ones. \n\nThe copyright protection of the documentation offers protection from unauthorised copying and distribution of the actual documentation, it does not prevent anyone from making the physical objects that are described in the documentation.\nNor does it prevent anyone from creating their own version of the documentation. \n\nUsing a CC license for the documentation is advisable.\nA CC-BY for permissible and a CC-BY-SA for copyleft.\nNote that for a project to be considered open source, restriction on field of use or commercial use should not be placed.\n\n#### Branding\nFor most small scale open source hardware projects and those that fall within scope of hobbies, branding is unlikely to be of concern.\nBut depending on the project, it is important that branding and trademarks are appropriately protected and presented.\nIf the hardware elements include brand logos or trademarks, it is advisable to include only \"clean\" versions (without branding) of the hardware in the open source documentation.\nThis will ensure that any recreations or distributions of the product do not contain your branding, unless explicit permission is given by you. \n\n> If branding and trademarks are relevant to your project it is important to apply for and obtain those certifications from the appropriate government authorities. \n\n### Limitations\n\n\nOpen source hardware licensing is relatively recent and appears to be entirely untested in an actual court of law.\nThis means that the protections offered by such licenses stand on unproven grounds.\nWe should alsa add that the licensing is based on copyright law which does not transfer well when dealing with actual hardware.\n\nThis mean that the open hardware licenses might not offer as much or even any protections.\nSo it is good to repeat, “It is best to think of hardware licenses as guiding tools for good actors, not ways to punish bad actors.”\n \n\n## Reference and further readings\n- Open source hardware https://larszimmermann.de/licensing-open-source-hardware-by-michael-weinberg/  (accessed Sep. 23, 2022).\n- OSHWA faq https://www.oshwa.org/faq/ (accessed Sep. 23, 2022)\n- Certification procedure from OSHWA  https://certification.oshwa.org/process/hardware.html (accessed Sep. 23, 2022)\n- Copyright https://europa.eu/youreurope/business/running-business/intellectual-property/copyright/index_en.htm#shortcut-1/  (accessed Sep. 23, 2022)\n- Open Source Initiative https://opensource.org/faq (accessed Sep. 23, 2022)\n- CERN Open Hardware License project https://ohwr.org/project/cernohl (accessed Sep. 23, 2022)\n- License selector https://ufal.github.io/public-license-selector/ (accessed Sep. 23, 2022)\n- Open source license litigation https://en.wikipedia.org/wiki/Open_source_license_litigation (accessed Sep. 24, 2022)\n- Legal guide to open source https://opensource.guide/legal/ (accessed Sep. 24, 2022)\n- Resources on Intellectual property https://www.wipo.int/reference/en/ (accessed Sep. 24, 2022)\n\n## Notes\nThis part of the book is a derivative of Licensing Open Hardware by Santosh Ilhamparuthi. (2022, September 23) Zenodo. https://doi.org/10.5281/zenodo.7195720\n"
  },
  {
    "path": "book/website/reproducible-research/licensing/licensing-ip.md",
    "content": "(rr-licensing-ip)=\n# Intellectual Property (IP)\n\nA basic understanding of IP law is important for anyone producing creative works governed by it, including documentation, software, datasets, graphics and more.\nThis is true irrespective of the nature of your project: closed commercial projects building on open tooling; commercial projects maintaining an open resource; open community-driven and/or non-profit projects building shared resources.\nEach of these may need to make slightly different licensing choices from the beginning of their projects to be compatible with their goals.\n\nWithout going into too much detail due to their complexity, in a subchapter, we provide a brief summary of relevant IP laws.\n\n## Copyrights, Patents and Trademarks\n\nIP is an umbrella term that refers to a number of distinct areas of law.\nPrimarily, these three areas are relevant in research and data science:\n\n- [Copyrights](https://europa.eu/youreurope/business/running-business/intellectual-property/copyright/index_en.htm#shortcut-1/)\n- [Patents](https://www.wipo.int/patents/en/)\n- [Trademarks](https://euipo.europa.eu/ohimportal/en/trade-mark-definition/)\n\nWhat these have in common is the attempt to extend property rights to intangible goods, meaning their use by others can be prevented or [licensed](https://www.oshwa.org/faq/#what-is-a-license/).\nGovernments with such laws effectively create a limited grant of monopoly over these goods for their creators and other holders of these rights.\nThis is generally done with the ostensible intent to incentivise the creation and improvement of such goods, but can in practice result in perverse incentives which fail to do so.\n\nThis chapter is intended to educate people on the basic concepts of Licensing. \nPlease do not take the descriptions provided or viewpoints shared as legal advice; they are not that.\nConsult your librarian and a legal expert to provide actual legal advice for your case.\n\n```{warning}\nIt is important to consider that copyright, licenses, and patents are all legal concepts.\nAs such, they are subject to what the law prescribes, which may change over time and space.\nSimply put, different countries have different laws and follow different procedures with regard to enforcing them.\nThe content provided here is broadly based on American and European law and legal traditions.\nIt might not be applicable - might even be contraindicated - or relevant in your particular context.\nHowever, most nations are signatories to international treaty agreements which somewhat harmonise these laws, notably the Berne Convention, the [TRIPS Agreement](https://www.wto.org/english/docs_e/legal_e/27-trips_01_e.htm), and others under the [World IP Organisation (WIPO)](https://www.wipo.int/portal/en/index.html).\nWhilst international efforts have sought to harmonise copyright enforcement, the real world is a messy place.\n```\n\nPerhaps the most relevant part of IP law for software, data and other creative works is copyright.\nWe will dispense quickly with patents and trademarks here, so we can move on to the main topic of copyright.\n\n(rr-licensing-patents)=\n## Patents\n\nThe most important difference between patent and copyright to be immediately aware of is that by default, all rights are retained by the author on works made public under copyright, whereas patents must be registered before their content is publicly disclosed.\nThus, if you want to patent something, you must do so prior to sharing it publicly.\nThe precise details of what constitutes a disclosure and the strictness of the application of this rule can vary by jurisdiction.\n\nPatents on processes and software rather than specific inventions are a matter of contention in US law and explicitly not recognised in EU law (at the time of writing).\nUnlike copyright, you generally have to pay to register and maintain a patent.\nYou must also do so in each jurisdiction in which you want this patent to apply, though some have reciprocal agreements for recognising patents from other jurisdictions.\nTo ensure that patents held by the authors of software do not impact on the freedom to use and distribute  open software, some licenses specifically include permission to use any applicable patents (for example, section 3 of the [Apache 2.0 license](https://www.apache.org/licenses/LICENSE-2.0.html)), though this cannot protect against patents held by 3rd parties.\n\n<!-- citations needed -->\n<!-- when should you patent something and when not?-->\n<!-- IP ownership employment & institutions -->\n<!-- UK patent info https://www.gov.uk/topic/intellectual-property/patents -->\n<!-- UK has a related but distinct concept of a 'registered design' https://www.gov.uk/topic/intellectual-property/designs -->\n\n(rr-licensing-trademarks)=\n## Trademarks\n\nTrademarks are a brand, symbol, or identifying mark associated with a project, product or service.\nTrademarks differ from copyrights & patents in that their primary function is consumer protection.\nThey prevent bad actors from impersonating recognisable brands and deceiving consumers into purchasing products that are not being offered by who they think they are.\nThey, like patents, must also be registered, but unlike patents, this can be done after they have been made public.\n\nRegistering a trademark generally comes with an administrative fee, but it is not as costly as maintaining a patent.\nTrademarks generally only apply within a specific sector, as people are unlikely to confuse brands which do completely different things.\nThey can be relevant in the context of the name and logo of a software project, especially when a project changes hands or is forked, in which case the fork may not be able to use the original name of the project even if that project is no longer maintained.\nOpen source projects not associated with a company which have trademarks may have these held by a legal entity, such as a non-profit, through which they might also take donations and pay for project infrastructure.\nIt can be valuable for open source projects to register for trademarks as their work can easily be cloned, modified and re-distributed with ill intent.\nExamples of modified open source tools distributed with malware added have been documented, and trademark enforcement could, in some cases, help to prevent or deter this.\nNextcloud, for example, has a [comprehensive guide to the use of their marks](https://nextcloud.com/trademarks/) with excellent explanations for the restrictions that they place on their use.\n<!--A subtler case is unofficial packages which charge a high rate for the software which could be downloaded elsewhere for free -->\n\n<!-- citations needed -->\n<!-- UK trade mark info https://www.gov.uk/topic/intellectual-property/trade-marks -->\n\n(rr-licensing-copyright)=\n## Copyright\n\n<!-- UK copyright info https://www.gov.uk/topic/intellectual-property/copyright -->\n\nBy default, if you make a work publicly available, you retain the copyright to that work and all rights that this gives you over it.\nAnyone wishing to re-use that work must seek to license the right to do so from you, or open themselves to the possibility of a lawsuit for infringing on your copyright.\nIrrespective of how you choose to license your work, however, there are some generally accepted exceptions to the protections of copyright that permit the re-use of works (or parts of works) without the consent of the copyright holder, under certain circumstances.\nThese are known as 'fair use' or 'fair dealing' exceptions.\nUnder the 'fair use' standard originating in the USA, the following criteria are considered on a case-by-case basis to decide if a use constitutes an infringement of copyright:\n\n> From [17 U.S.C § 107](https://www.law.cornell.edu/uscode/text/17/107)\n> - the purpose and character of the use, including whether such use is of a commercial nature or is for nonprofit educational purposes;\n> - the nature of the copyrighted work;\n> - the amount and substantiality of the portion used in relation to the copyrighted work as a whole; and\n> - the effect of the use upon the potential market for or value of the copyrighted work.\n\nThe 'fair dealing' standard, originating in British law, generally includes more explicitly enumerated exceptions but with similar intent.\nNotably disputes over what constitutes fair-use are not easily administrable and can require protracted court proceedings to settle definitively.\n<!-- citations needed -->\n\nFor anyone wishing to circulate their work and grant others the right to re-use, remix, or re-distribute that work free of charge, coming to individual licensing arrangements with everyone who might want to do this is obviously impractical.\nTo address this, there exist numerous pre-made 'off-the-self' licenses that you can apply to your work.\nWhich of these you choose shapes how and under what circumstances others are permitted to re-use your work without infringing on your copyright.\n\nPre-made licenses exist that are tailored to the differences between different types of works.\nFor example, there are licenses intended to be used for software and licenses intended to be used for other creative works such as images, prose (text), as well as hardware & designs.\n\nIn addition, there are now licenses tailored for machine learning or artificial intelligence models as these are comprised of several parts, including: training data, code, and model weights.\nEach of these parts may be licensed differently, and there is even some dispute as to whether model weights are subject to copyright at all under current law.\n<!-- citations needed -->\nThis is an area which is likely to see (by legal standards) rapid changes in the near future, given recent developments in the commercialisation of AI/ML models.\n\nThere are some general principles which apply to licenses across the different types of entity that they try to license.\nLicenses can generally be placed on a spectrum from proprietary, through permissive, to 'share alike' or 'copyleft' (the opposite of copyright).\nThis spectrum is something of an oversimplification, and there are some extensions and caveats we'll get to later.\n"
  },
  {
    "path": "book/website/reproducible-research/licensing/licensing-ml-case-studies.md",
    "content": "(rr-licensing-ml-case-studies)=\n\n# Case Studies: Choosing an ML License \n\nBelow are two hypothetical case studies based on concerns raised through the license selection process during [BigScience](https://bigscience.huggingface.co/), a one-year long research workshop on large multilingual models and datasets.\n\n## Responsible AI License for Research & Academia\n\nCidney, a hypothetical ML researcher, is working for a university lab, has developed as part of her PhD research an ML vision model for facial recognition. She is well aware of both the good quality of the model and its limitations, and is willing to inform users about it in the model card she is planing to release along with the model. \n\nCidney really wants to openly release the model to foster further research in the field, for other researchers to test it and provide feedback to her, or even to come up with improved versions of it. \n\nHowever, she is concerned about potential uses of the model which might lead to undesired outcomes, according to what she thinks is not good to use the model for, and also informed about her research lab ethical guidelines and code of conduct. \n\nConsequently, she decides to use a Responsible AI License to release her ML Model: \n1. She wants to place use-based restrictions for specific identified scenarios informed by her research literature review, her experience, and her awareness of the model technical limitations. Thus, she comes up with a set of scenarios where due to her concerns and the technical capabilities of the model she does not feel comfortable that the model is used for. Eventually, when drafting the restrictions, she will ask for legal advice from the university legal staff.\n2. She decides to license just the pre-trained model, not the training dataset nor an app embedding it. The source code is already available out there with an open source license, so there is no need to license it again.\n3. Her research lab allows her to release the model on an open basis for research purpose, thus enabling free access and distribution of the model solely for research and non-commercial purposes.\n4. As a result, Cidney will use a RAIL-M license to release her model. Even though the model is accessible on an open basis, the license does not allow for a permissive distribution of it for commercial purposes. \n\n\n## Responsible AI License for Industry\n\nHealthyCo is a hypothetical ML startup focused on the health sector and developing innovative solutions for market niches such as medicines testing processes, cardiovascular predictive algorithms, and protein folding, among other areas. \n\nHealthyCo is working on a platform wherein companies will be able to integrate their pipelines and end-consumers will be able to share the data generated by their smart-watches when running. The company is aware of the fierce competition in the market and wants to leverage the network effects-related capabilities of an open platform. Therefore, HealthyCo is considering to release several of its ML models, but also fine tuned versions embedded in specific software apps. The goal is to generate traction and foster adoption of the platform in the short term while allowing companies and users to test and experience. Moreover, they are already in talks with some investors and have agreed to start discussions for their next investment round in 3 months. \n\nHealthyCo is well aware of the capabilities of their ML models and apps, and according to its values as a company striving for ethics-informed research and ML development, it is reluctant to place the technology in the market under an open source license, as users could do whatever they would like with the technology and the company would not be able to control potential misuses.\n\nAccordingly, the startup decides to release the ML models and apps with Open & Responsible AI licenses. On the one hand, they would like companies with whom they are collaborating and other researchers to access, test and further improve or build upon their products. On the other hand, they know investors would highly appreciate that the company is taking pioneering steps forward towards a responsible use and distribution of ML artifacts in the AI space, as a much needed and new trend.\n\nHealthyCo decides to use an Open & Responsible AI License for its cardiovascular prediction ML app:\n1. It wants to place use-based restrictions for specific identified scenarios informed by the company researchers' experiments and findings, and its awareness of the ML app capabilities. Thus, HealthyCo comes up with a set of scenarios where due to its concerns and the technical capabilities of the model the startup does not feel comfortable that the model is used for.\n2. HealthyCo decides to license a fine tuned model embedded in a software app, but not the training dataset. The use-based restrictions will apply to both the ML model and app.\n3. It seeks to release the model on an open basis enabling flexible downstream distribution for commercial purposes also. \n4. As a result, HealthyCo will use an OpenRAIL-AM license. \n"
  },
  {
    "path": "book/website/reproducible-research/licensing/licensing-ml.md",
    "content": "(rr-licensing-ml)=\n# Licensing Machine Learning Models\n\n## Legal Status of AI/ML model weights\n\nIt is an open question whether {term}`AI<Artificial Intelligence>`/{term}`ML<Machine Learning>` models weights are even copyrightable.\nUS copyright law specifically excludes the following from works eligible for copyright protection: \"any idea, procedure, process, system, method of operation, concept, principle, or discovery, regardless of the form in which it is described, explained, illustrated, or embodied in such work.\"\nIn addition the US Copyright Office has stated that this exclusion extends to \"scientific or technical methods or discoveries;\" \"mathematical principles;\" and \"formulas or algorithms.\"\n\nA legal doctrine known as the [idea–expression distinction/dichotomy](https://en.wikipedia.org/wiki/Idea%E2%80%93expression_distinction) draws a distinction between an abstract idea and a specific implementation, where code authored by a human that implements an algorithm is copyrightable as a creative work of authorship but the algorithm itself is not.\n\nIt is also generally accepted in US copyright law that to be copyrightable a work must be a product of human creative authorship and not that of an automated process.\n\nIt is not obvious if model weights would be considered works of human authorship or rather the results of automated processes, as a general principle or discovery or as a specific implementation.\nThese questions will need to be decided on by the courts and/or legislated on before the status of model weights can be properly established.\n\nIn the absence of clarity on this point many organisations are taking the calculated risk of operating under the assumption that they are copyrightable and generally treating them similarly to datasets and/or software.\nSome companies are offering legal protections for users of services based on these systems, offering to cover legal expenses arising from challenges to the copyright status of the outputs of these systems.\nIt is possible that some form of copyright-like protection will be explicitly extended to model weights but it's precise contours are yet to be determined.\n\nDespite these open questions AI/ML model specific licenses are already being developed.\n\n## Machine Learning Model Licenses\n\nLike a software license, a Machine Learning (ML) model license governs the use, redistribution of the model and/or algorithm, and distribution of any derivatives of it.\nHowever, there are other components to an AI system, such as {ref}`data<rr-licensing-data>`, \n{ref}`source code<rr-licensing-floss>`, or applications, which may have their own separate licenses.\nML model licenses may restrict the use of the model for specific scenarios for which, due to the technical capabilities and limitations of the model informed by its model card, the licensor is not comfortable that the model is used.\n\nWhile many ML models may utilise open software licensing (for example MIT, Apache 2.0), \nthere are a number of ML model-specific licenses that may be developed for a specific model (for example [OPT-175B license](https://github.com/facebookresearch/metaseq/blob/main/projects/OPT/MODEL_LICENSE.md), [BigScience BLOOM RAIL v1.0 License](https://https://bigscience.huggingface.co/blog/the-bigscience-rail-license)), \ncompany (for example [Microsoft Data Use Agreement for Open AI Model Development](https://query.prod.cms.rt.microsoft.com/cms/api/am/binary/RE4Rjfq)), or series of models (for example [BigScience OpenRAIL-M](https://www.licenses.ai/blog/2022/8/26/bigscience-open-rail-m-license) (Responsible AI License)). \n\nIn summary, the growing list of ML licenses reflects the understanding that the ML model is distinct from the source code, and thus in need of new licensing options. \n\n## Reproduction and propagation of ML models\n\nMany similar or related versions of a model may exist, whether it is the evolution of a model family (for example [GPT-2](https://github.com/openai/gpt-2) and [GPT-3](https://github.com/openai/gpt-3)) or implementations of the model in different languages and frameworks (for example pix2pix in [Pytorch](https://github.com/junyanz/pytorch-CycleGAN-and-pix2pix) and [Tensorflow](https://github.com/affinelayer/pix2pix-tensorflow)).\nThis phenomenon is characteristic of modern ML models, where an active community creates many new versions based on an original ML model that may enable greater use for different user groups.\nEach version may have its own license, though some model developers are now requiring all downstream models (derived models from the original model) to at least have the same use restrictions as included in the original license. \nIn the most extreme cases, a model developer may choose to grant the license exclusively to a single entity or open every aspect of the model to the public, by means of an open license, such as an Apache 2.0 or MIT open source licenses. \n\n## Open & Responsible ML Licenses\n\nThe \"open source\" approach to collaborative software development has permeated and influenced AI development and licensing practices.\nIt is a common practice of ML developers to use open source licenses to release their ML models.\nThis is due to the fact that open source licenses have become a standard practice when it comes to the sharing of artefacts in the entire ICT space (for example, software; datasets; models; apps).\nML developers might colloquially refer to \"open sourcing a model\" when they make its weights (trained model parameters) available by attaching an official open source license, or any other open software or content license such as Creative Commons. \n\nHowever, open source licenses do not take the technical nature and capabilities of the ML model as a different artefact to software/source code into account, and are therefore ill-adapted to enabling a more responsible use of ML models.\n\nIn order to balance the principles from open source with a growing demand of responsible ML development, use, and access, a new branch of ML licenses called Responsible AI Licenses (RAIL) emerged in 2019 with the [RAIL Initiative](https://www.licenses.ai/). \nResearch initiatives such as [BigScience](https://bigscience.huggingface.co/) and companies such as [Hugging Face](https://huggingface.co/blog/open_rail) have decided to join efforts and push towards this direction along with the RAIL Initiative.\n\nResponsible AI licenses target specific concerns stemming from specific uses of an AI artefact by enacting use restrictions to mitigate potential harms associated with the use of AI-related products and services or component parts such as data, model, code, or applications. \nThe integration of use restrictions clauses into open AI licenses brings up the ability to better control the use of AI artifacts and the capacity of enforcement to the licensor of the ML model, standing up for a responsible use of the released AI artifact, in case a misuse of the model is identified.\nLicensing enforcement mechanisms are an active area of development, and work by organisations like [Free Software Foundation](https://www.fsf.org/), [The Software Freedom Law Center](https://softwarefreedom.org/), [Software Freedom Conservancy](https://sfconservancy.org/), and [Creative Commons](https://creativecommons.org/license-enforcement/enforcement-principles/) provide direction for structuring enforcement guidelines upon the discovery of a license violation.\n\nWhile RAILs are the first step towards enabling ethics-informed use restrictions, OpenRAILs take this a step further and seek to strike a balance between open access and responsible use of the licensed AI artefact.\nFor further information on the implementation of a Responsible AI License, check the material jointly provided by [BigScience and RAIL Initiative](https://www.licenses.ai/blog/2022/8/18/naming-convention-of-responsible-ai-licenses).\n\n### Choosing an OpenRAIL\n\n```{figure} ../../../figures/rail-diagram.*\n---\nname: rail-diagram\nalt: An illustration depicting a flow chart diagram for a decision making process on which OpenRAIL is the best choice for an ML project.\n---\nThe OpenRAIL flow chart aids the selection and naming of a license for an ML project. Danish Contractor, Carlos Muñoz Ferrandis, Jenny Lee, & Daniel Mcduff. (2022, August).\n```\n\n(rr-licensing-ethics-copyright-responsible-rail)=\n### OpenRAIL License types\n\nThese same principles developed in [](#rr-licensing-ethical-source) apply to the 'Open' variants of the licences from RAIL (Responsible AI Licences).\nIn that, they are attempting to place restrictions on the uses to which licensees can put the thing being licenced.\nTraditional software has many of the same concerns which affect machine learning models, and indeed also often contain assets such as images which may be licenced differently from software with which they are bundled.\nThe primary differences being governance of data used in training the models (see: {ref}`Data Governance for the Machine Learning Pipeline<pd-dg-ml>`) and the lack of interpretability of the decisions of many ML systems, though this latter point can also be an issue for conventional systems if they are closed.\nRAIL provides a succinct way of expressing licences for combined machine learning systems which include, the data on which they were trained, the software used to specify this, the model weights generated as a result and the applications which provide an interface to the resulting model.\n\nRAIL provides these definitions of the modifiers that can be applied to their licenses:\n\n> - **D**ata: The dataset(s) used to pretrain or train an AI Model.\n> - **A**pplication/service: Any executable software code or application, including API-based remote access to software.\n> - **M**odel: Machine-learning based assemblies (including checkpoints), consisting of learnt weights and parameters (including optimizer states), corresponding to the model architecture.\n> - **S**ource: The source code and scripts associated with the AI system.\n\nTherefore:\n\n> - RAIL-D:  RAIL License includes Use Restrictions only applied to the data\n> - RAIL-A:  RAIL License includes Use Restrictions only applied to the application/executable\n> - RAIL-M:  RAIL License includes Use Restrictions only applied to the model\n> - RAIL-S:  RAIL License includes Use Restrictions only applied to the source code\n\nThese are the restrictions placed on the licencee of a RAIL-M license:\n\n> You agree not to use the Model or Derivatives of the Model:\n>\n> \t**a.** In any way that violates any applicable national, federal, state, local or international law or regulation;\n>\n> \t**b.** For the purpose of exploiting, harming or attempting to exploit or harm minors in any way;\n>\n> \t**c.** To generate or disseminate verifiably false information and/or content with the purpose of harming others;\n>\n> \t**d.** To generate or disseminate personal identifiable information that can be used to harm an individual;\n>\n> \t**e.** To generate or disseminate information and/or content (for example images, code, posts, articles), and place the information and/or content in any context (for example bot generating tweets) without expressly and intelligibly disclaiming that the information and/or content is machine generated;\n>\n> \t**f.** To defame, disparage or otherwise harass others;\n>\n> \t**g.** To impersonate or attempt to impersonate (for example deepfakes) others without their consent;\n>\n> \t**h.** For fully automated decision making that adversely impacts an individual’s legal rights or otherwise creates or modifies a binding, enforceable obligation;\n>\n> \t**i.** For any use intended to or which has the effect of discriminating against or harming individuals or groups based on online or offline social behavior or known or predicted personal or personality characteristics;\n>\n> \t**j.** To exploit any of the vulnerabilities of a specific group of persons based on their age, social, physical or mental characteristics, in order to materially distort the behavior of a person pertaining to that group in a manner that causes or is likely to cause that person or another person physical or psychological harm;\n>\n> \t**k.** For any use intended to or which has the effect of discriminating against individuals or groups based on legally protected characteristics or categories;\n>\n> \t**l.** To provide medical advice and medical results interpretation;\n>\n> \t**m.** To generate or disseminate information for the purpose to be used for administration of justice, law enforcement, immigration or asylum processes, such as predicting an individual will commit fraud/crime commitment (for example by text profiling, drawing causal relationships between assertions made in documents, indiscriminate and arbitrarily-targeted use).\n\nRAIL-S licences carry their [Software Usage Restrictions](https://www.licenses.ai/source-code-license).\n\nRAIL license can be used in closed applications and Open RAIL licenses are permissive with respect to the model and software but not with respect to the usage restrictions.\nNote that there is not an effective equivalent to a copyleft version of the Open RAIL licences.\nNone of them require that the software or models contained in them also be similarly licenced in derived works, only that the usage restrictions be retained.\nThis could be a useful extension to these license adding an 'L' for copy**L**eft and including a clause making any software, model weights, or source code in the bundle strong copyleft.\n\n### Example: OpenRAIL-M\n\nThe 2 main features of an OpenRAIL license are:\n\n- Open: these licenses allow royalty free access and flexible downstream use and re-distribution of the licensed material, and distribution of any derivatives of it.\n- Responsible: OpenRAIL licenses embed a specific set of restrictions for the use of the licensed AI artifact in identified critical scenarios (for example illegal or discriminatory content, misinformation).\n  To see examples of critical scenarios, see attachment A in the BigScience license in the table below.\n  Use restrictions are informed by an evidence-based approach to ML development and use limitations which forces to draw a line between promoting wide access and use of ML against potential social costs stemming from harmful uses of the openly licensed AI artifact.\n  Therefore, while benefiting from open access to the ML model, the user will not be able to use the model for the specified restricted scenarios.\n\nOpenRAILs require downstream adoption of at least the same use restrictions by derivatives of the AI artifact, as a means to dissuade users of derivatives of the AI artifact from misuse.\nOpenRAILs are a vehicle towards the consolidation of an informed and respectful culture of sharing AI artifacts acknowledging their limitations and the values held by the licensors of the model.\n\nIn practical terms, every RAIL or OpenRAIL license requires that the set of use restrictions included in it must also be included in subsequent re-distributions or derivative versions of the ML model.\nFor instance, all BLOOM RAIL, BigScience OpenRAIL-M, and CreativeML OpenRAIL-M include the same provisions 4.a. and 5 which require the licensee when distributing the model or derivatives of it to include -at minimum- the same use restrictions. \n\nIt is important to acknowledge that RAILs and OpenRAILs should not be conceived as instruments which, due to excessive use restrictions, could hinder incremental innovation in the AI space.\nConsequently, as BigScience clarified in its BLOOM RAIL [FAQ](https://bigscience.huggingface.co/blog/the-bigscience-rail-license), the licensor can always at their own discretion make an exception and open some of the restrictions when a licensee justifies that the model has been expressly modified to avoid any concern and/or harm for the specific case at sight. \n\n## Examples of ML models and their licenses\n\nThe table below showcases several well-known examples of ML models in the fields of NLP, vision, and multimodal generatives.\nThe aim of it is to inform the reader on the licensing options chosen by each of the projects which sometimes differ from one another.\nLicensing differences might stem from business models, research purposes or ethics-informed community values.\nEach license carries licensor's values and a message from the former to potential users on how the model should be used.\n\n| Model | Model License | Description | Link to License |\n| -------- | -------- | -------- | -------- |\n| GPT-2  | MIT License + generated output disclaimer | Permissive open source license | [Link to license](https://github.com/openai/gpt-2/blob/master/LICENSE)  |\n| GPT-3  | Exclusive | Licensed to Microsoft | [News Article](https://openai.com/blog/openai-licenses-gpt-3-technology-to-microsoft/)    |\n| YOLO     | YOLO License    | Public domain license  | [Link to license](https://github.com/pjreddie/darknet/blob/master/LICENSE) |\n| DALLE-pytorch     | MIT License | Permissive open source license  | [Link to license](https://github.com/lucidrains/DALLE-pytorch/blob/main/LICENSE)     |\n| Stable Diffusion | CreativeML Open RAIL-M | Open & Responsible AI License (RAIL) created by Stability.ai and adapted from the BLOOM RAIL license, including use restrictions (see attachment A) | [Link to license](https://huggingface.co/spaces/CompVis/stable-diffusion-license) |\n| OPT | OPT-175B License | Meta restrictive license enabling use of the model weights for research purposes while establishing a set of use restrictions, which could be considered a RAIL | [Link to license](https://github.com/facebookresearch/metaseq/blob/main/projects/OPT/MODEL_LICENSE.md) |\n| BigScience | BigScience OpenRAIL-M | Open & Responsible AI License (RAIL) created by BigScience and adapted from the BLOOM RAIL license, including use restrictions (see attachment A) | [Link to license](https://huggingface.co/spaces/bigscience/license) |\n| Tsinghua University | GLM-130B license | Restrictive license enabling use of the model weights for research purposes | [Link to license](https://github.com/THUDM/GLM-130B/blob/main/MODEL_LICENSE) |\n"
  },
  {
    "path": "book/website/reproducible-research/licensing.md",
    "content": "(rr-licensing)=\n# Licensing\n\nA license is a legal agreement between the creator or owner of a resource (such as software, data, and documentation) and its users.\nThe specific license accompanying a resource clearly defines the scope and communicates what users can and cannot do with the work.\nThis protects the creator's rights over their resources while granting users some limited rights.\n\n```{note}\nIn the context of Intellectual Property (IP) Law, IPs are intangible expressions, such as words, designs, literary and artistic work and scholarly outputs, patents, trademarks and trade secrets, with specific copyrights or monopoly rights.\nIPs form the basis of a licensing agreement, where a licensor owns the IP and grants the licensee (users) the right to use it. \n\n*Reference: {cite}`harvard2025ip`*\n```\n\n> This chapter was written using American English, in which the word **license** is a noun **_and_** a verb.\n> With British English, however, **licence** is a noun (as in, _the software is released under a permissive open source license_), while **license** is a verb (as in, _they licensed the event_).\n\n(rr-licensing-prerequisites)=\n## Prerequisites\n\nNo previous knowledge is needed; this chapter explains how important it is to understand how laws and licensing can affect your project.\n\n(rr-licensing-summary)=\n## Summary\n\n```{figure} ../../figures/licensing.*\n---\nheight: 500px\nname: licensing\nalt: \"A hand reaches out of an open safe and makes a thumbs-up gesture. The Safe is high-tech-looking with circuit tracery on its surface. The thumb of the hand looks like a signed document. There is a happy face in green looking at the thumbs up from the open safe. In contrast, on the other side of the image, there is a locked version of a similar safe. There is a red and grumpy face looking at the locked safe, which is being shaken in frustration.\"\n---\nLicensing. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\nLicensing of software, data, AI/ML models, hardware and other creative works, such as documentation and visuals, shares common attributes and concepts.\nThis chapter describes those concepts, making it easier for more people to read and understand the rights granted by most licenses relevant to the research and data science community.\n\n```{caution}\nGood legal advice is timely, specific, and given by an expert; this chapter is none of these.\nIt was written by engineers & scientists, not by lawyers, and it is a heavily simplified overview of a very complex field.\nThe intent is to give you an overview of the basics so that you will know when to check whether something you want to do has potential legal ramifications.\nDo not make any important decisions based solely on the contents of this chapter.\nThis document is not intended to be used in that manner.\n\nConsult your librarian and a legal expert to provide actual legal advice for your case.\n```\n\n(rr-licensing-where)=\n### What, How and Where of License Documentation\n\nLicenses are legal documents that the licensor attaches to the artefacts they share with the licensee/their users.\nA license should be clearly visible and state the chosen conditions of the agreement.\n\nA project with multiple resources is organised in a hierarchy of directories and files. \nA licensor should place a plain text file containing the license agreement in the top-level (root) directory of their project.\nIn a git project, for example, that is shared on a git forge like GitHub or GitLab, a standard file with a name like `LICENSE` will allow the license to be picked up by the host and displayed on their online project repository.\nIf the license has a standardised short name from [SPDX](https://spdx.org/licenses/), then this will be displayed as a small icon on the project's home page by these hosts.\nIt can also be useful to include license information in the form of standard strings at the top of each text file in the project.\n\nThere are useful tools which automate this available from [REUSE](https://reuse.software/), a project from the [FSFe](https://fsfe.org/) which developed the spec.\nThis is especially true if your project contains material that is licensed in multiple different ways, or a part of your project is being used in someone else's which uses a different (compatible) license.\n\n### Explore Different Subchapters\n\nIn the following subchapters, you will learn about licensing principles, recommendations and guidance for selecting appropriate licenses for different artefacts:\n\n- {ref}`rr-licensing-ip`\n- {ref}`rr-licensing-floss`\n- {ref}`rr-licensing-compatibility`\n- {ref}`rr-licensing-ethical-source`\n- {ref}`rr-licensing-documentation`\n- {ref}`rr-licensing-data`\n- {ref}`rr-licensing-ml`\n- {ref}`rr-licensing-hardware`\n"
  },
  {
    "path": "book/website/reproducible-research/make/make-appendix.md",
    "content": "(rr-make-appendix)=\n# Appendix\n\n(rr-make-appendix-dag)=\n## Directed Acyclic Graph\n\nA Directed Acyclic Graph (DAG) is a *graph* of nodes and edges that is:\n\n1. *directed*: edges have a direction and you can only walk the graph in that\n   direction\n2. *acyclic*: does not contain cycles: A can't depend on B when B depends on A.\n\nThe latter property is of course quite handy for a build system. More\ninformation on DAGs can be found on\n[Wikipedia](https://en.wikipedia.org/wiki/Directed_acyclic_graph).\n\n(rr-make-appendix-installing)=\n## Installing Make\n\nFirst, check if you have GNU Make installed already. In a terminal type:\n\n```bash\nmake\n```\n\nIf you get ``make: command not found`` (or similar), you don't have Make. If\nyou get ``make: *** No targets specified and no makefile found.  Stop.`` you\ndo have Make.\n\nWe'll be using **GNU Make** in this tutorial. Verify that this is what you\nhave by typing:\n\n```bash\nmake --version\n```\n\nIf you don't have GNU Make but have the BSD version, some things might not\nwork as expected and we recommend installing GNU Make.\n\nTo install GNU Make, please follow these instructions:\n\n- **Linux**: Use your package manager to install Make. For instance on Arch\n  Linux:\n\n  ```bash\n  $ sudo pacman -S make\n  ```\n\n  Ubuntu:\n  ```bash\n  $ sudo apt-get install build-essential\n  ```\n\n- **MacOS**: If you have [Homebrew](https://brew.sh/) installed, it's simply:\n\n  ```bash\n  $ brew install make\n  ```\n\n  If you have a builtin Make implementation, please ensure that it's GNU Make\n  by checking ``make --version``.\n\n(rr-make-appendix-advancedgr)=\n## Advanced: Generating Rules using Call\n\n*This section continues the tutorial above and demonstrates a feature of Make\nfor automatic generation of rules.*\n\nIn a data science pipeline, it may be quite common to apply multiple scripts\nto the same data (for instance when you're comparing methods or testing\ndifferent parameters). In that case, it can become tedious to write a separate\nrule for each script when only the script name changes. To simplify this\nprocess, we can let Make expand a so-called [*canned*\nrecipe](https://www.gnu.org/software/make/manual/make.html#Canned-Recipes).\n\nTo follow along, switch to the ``canned`` branch:\n\n```bash\nmake clean\ngit stash --all        # note the '--all' flag so we also stash the Makefile\ngit checkout canned\n```\n\nOn this branch you'll notice that there is a new script in the **scripts**\ndirectory called ``generate_qqplot.py``. This script works similarly to the\n``generate_histogram.py`` script (it has the same command line syntax), but it\ngenerates a [QQ-plot](https://en.wikipedia.org/wiki/Q%E2%80%93Q_plot). The\n**report.tex** file has also been updated to incorporate these plots.\n\nAfter switching to the ``canned`` branch there will be a Makefile in the\nrepository that contains a separate rule for generating the QQ-plots. This\nMakefile looks like this:\n\n```makefile\n# Makefile for analysis report\n#\n\nALL_CSV = $(wildcard data/*.csv)\nDATA = $(filter-out $(wildcard data/input_file_*.csv),$(ALL_CSV))\nHISTOGRAMS = $(patsubst data/%.csv,output/figure_%.png,$(DATA))\nQQPLOTS = $(patsubst data/%.csv,output/qqplot_%.png,$(DATA))\n\n.PHONY: all clean\n\nall: output/report.pdf\n\n$(HISTOGRAMS): output/histogram_%.png: data/%.csv scripts/generate_histogram.py\n\tpython scripts/generate_histogram.py -i $< -o $@\n\n$(QQPLOTS): output/qqplot_%.png: data/%.csv scripts/generate_qqplot.py\n\tpython scripts/generate_qqplot.py -i $< -o $@\n\noutput/report.pdf: report/report.tex $(FIGURES)\n\tcd report/ && pdflatex report.tex && mv report.pdf ../$@\n\nclean:\n\trm -f output/report.pdf\n\trm -f $(HISTOGRAMS) $(QQPLOTS)\n```\n\nYou'll notice that the rules for histograms and QQ-plots are very similar.\n\nAs the number of scripts that you want to run on your data grows, this may\nlead to a large number of rules in the Makefile that are almost exactly the\nsame. We can simplify this by creating a [*canned\nrecipe*](https://www.gnu.org/software/make/manual/html_node/Canned-Recipes.html)\nthat takes both the name of the script and the name of the genre as input:\n\n```makefile\ndefine run-script-on-data\noutput/$(1)_$(2).png: data/$(2).csv scripts/generate_$(1).py\n\tpython scripts/generate_$(1).py -i $$< -o $$@\nendef\n```\n\nNote that in this recipe we use ``$(1)`` for either ``histogram`` or\n``qqplot`` and ``$(2)`` for the genre. These correspond to the expected\nfunction arguments to the ``run-script-on-data`` canned recipe. Also, notice\nthat we use ``$$<`` and ``$$@`` in the actual recipe, with two ``$`` symbols\nfor escaping. To actually create all the targets, we need a line that calls\nthis canned recipe.  In our case, we use a double for loop over the genres and\nthe scripts:\n\n```makefile\n$(foreach genre,$(GENRES),\\\n\t$(foreach script,$(SCRIPTS),\\\n\t\t$(eval $(call run-script-on-data,$(script),$(genre))) \\\n\t) \\\n)\n```\n\nIn these lines the ``\\`` character is used for continuing long lines.\n\nThe full Makefile then becomes:\n\n```makefile\n# Makefile for analysis report\n#\n\nALL_CSV = $(wildcard data/*.csv)\nDATA = $(filter-out $(wildcard data/input_file_*.csv),$(ALL_CSV))\nHISTOGRAMS = $(patsubst %,output/histogram_%.png,$(GENRES))\nQQPLOTS = $(patsubst %,output/qqplot_%.png,$(GENRES))\n\nGENRES = $(patsubst data/%.csv,%,$(DATA))\nSCRIPTS = histogram qqplot\n\n.PHONY: all clean\n\nall: output/report.pdf\n\ndefine run-script-on-data\noutput/$(1)_$(2).png: data/$(2).csv scripts/generate_$(1).py\n\tpython scripts/generate_$(1).py -i $$< -o $$@\nendef\n\n$(foreach genre,$(GENRES),\\\n\t$(foreach script,$(SCRIPTS),\\\n\t\t$(eval $(call run-script-on-data,$(script),$(genre)))\\\n\t)\\\n)\n\noutput/report.pdf: report/report.tex $(HISTOGRAMS) $(QQPLOTS)\n\tcd report/ && pdflatex report.tex && mv report.pdf ../$@\n\nclean:\n\trm -f output/report.pdf\n\trm -f $(HISTOGRAMS) $(QQPLOTS)\n```\n\nNote that we've added a ``SCRIPTS`` variable with the ``histogram`` and\n``qqplot`` names. If we were to add another script that follows the same\npattern as these two, we would only need to add it to the ``SCRIPTS``\nvariable.\n\nTo build all of this, run\n\n```bash\nmake -j 4\n```\n"
  },
  {
    "path": "book/website/reproducible-research/make/make-casestudy.md",
    "content": "(rr-make-casestudy-rp)=\n# Case Study: Reproducible Paper using Make\n\nIn the tutorial above we used IMDB movie ratings for different genres as\nexample data. This data was obtained from a dataset [shared on\nKaggle](https://www.kaggle.com/orgesleka/imdbmovies#imdb.csv) as a CSV file.\nThe file looks like this:\n\n```text\nfn,tid,title,wordsInTitle,url,imdbRating,ratingCount,duration,year,type,nrOfWins,nrOfNominations,nrOfPhotos,nrOfNewsArticles,nrOfUserReviews,nrOfGenre,Action,Adult,Adventure,Animation,Biography,Comedy,Crime,Documentary,Drama,Family,Fantasy,FilmNoir,GameShow,History,Horror,Music,Musical,Mystery,News,RealityTV,Romance,SciFi,Short,Sport,TalkShow,Thriller,War,Western\ntitles01/tt0012349,tt0012349,Der Vagabund und das Kind (1921),der vagabund und das kind,http://www.imdb.com/title/tt0012349/,8.4,40550,3240,1921,video.movie,1,0,19,96,85,3,0,0,0,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0\ntitles01/tt0015864,tt0015864,Goldrausch (1925),goldrausch,http://www.imdb.com/title/tt0015864/,8.3,45319,5700,1925,video.movie,2,1,35,110,122,3,0,0,1,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0\ntitles01/tt0017136,tt0017136,Metropolis (1927),metropolis,http://www.imdb.com/title/tt0017136/,8.4,81007,9180,1927,video.movie,3,4,67,428,376,2,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0\ntitles01/tt0017925,tt0017925,Der General (1926),der general,http://www.imdb.com/title/tt0017925/,8.3,37521,6420,1926,video.movie,1,1,53,123,219,3,1,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0\n```\n\nWhile on the surface this looks like a regular CSV file, when you try to open\nit with the Python CSV library, or Pandas, or R's ``read_csv``, or even\n``readr:read_csv``, the data is not loaded correctly. This happens because the\nCSV file uses an escape character ``\\`` for movie names that have commas in\nthem and the CSV readers don't automatically detect this variation in the CSV\nformat.  It turns out that this is quite a common issue for data scientists:\nCSV files are often messy and use an uncommon *dialect*: such as strange delimiters and\nuncommon quote characters.  Collectively, data scientists waste quite\nsome time on these data wrangling issues where manual intervention is needed.\nBut this problem is also not that easy to solve: to a computer a CSV file is\nsimply a long string of characters and every dialect will give you *some*\ntable, so how do we determine the dialect accurately in general?\n\nRecently, researchers from the Alan Turing Institute have presented a method\nthat achieves 97% accuracy on a large corpus of CSV files, with an improvement\nof 21% over existing approaches on non-standard CSV files. This research was\nmade reproducible through the use of Make and is available through an online\nrepository:\n[https://github.com/alan-turing-institute/CSV_Wrangling](https://github.com/alan-turing-institute/CSV_Wrangling).\n\nBelow we will briefly describe what the Makefile for such a project looks\nlike.  For the complete file, please see the repository. The Makefile consists\nof several sections:\n\n1. Data collection: because the data is collected from public sources, the\n   repository contains a Python script that allows anyone to download the data\n   through a simple ``make data`` command.\n\n2. All the figures, tables, and constants used in the paper are generated\n   based on the results from the experiments. To make it easy to recreate all\n   results of a certain type, ``.PHONY`` targets are included that depend on\n   all results of that type (so you could run ``make figures``). The rules for\n   these outputs follow the same pattern as those for the figures in the\n   tutorial above.  Tables are created as LaTeX files so they can be directly\n   included in the LaTeX source for the manuscript.\n\n3. The rules for the detection results follow a specific signature:\n\n   ```makefile\n   $(OUT_DETECT)/out_sniffer_%.json: $(OUT_PREPROCESS)/all_files_%.txt\n   \tpython $(SCRIPT_DIR)/run_detector.py sniffer $(DETECTOR_OPTS) $< $@\n   ```\n\n   The ``%`` symbol is used to create outputs for both sources of CSV files\n   with a single rule in {ref}`rr-make-examples-patternrules` and the rule \n   uses in {ref}`rr-make-examples-automaticvar` to extract the input and \n   output filenames.\n\n4. Some of the cleaning rules will remove output files that take a while to\n   create.  Therefore, these depend on a special ``check_clean`` target that\n   asks the user to confirm before proceeding:\n\n   ```makefile\n   check_clean:\n   \t@echo -n \"Are you sure? [y/N]\" && read ans && [ $$ans == y ]\n   ```\n\nIt is important to emphasize that this file was not created in one go, but was\nconstructed iteratively. The Makefile started as a way to run several dialect\ndetection methods on a collection of input files and gradually grew to include\nthe creation of figures and tables from the result files. Thus the advice for\nusing Make for reproducibility is to *start small and start early*.\n\nThe published Makefile in the repository does not contain the paper, but this\n*is* included in the internal Makefile and follows the same structure as the\n``report.pdf`` file in the tutorial above. This proved especially useful for\ncollaboration as only a single repository needed to be shared that contains\nthe code, the results, and the manuscript.\n"
  },
  {
    "path": "book/website/reproducible-research/make/make-debugging.md",
    "content": "(rr-make-debugging)=\n# Debugging Makefiles\n\nWhen writing a Makefile, it can sometimes be useful to be able to see the\nvalues of variables to catch mistakes or bugs in the Makefile. To facilitate\nthis, Make contains two commands: ``info`` and ``error``, and there is a debug\nmode to Make.\n\nWith the ``info`` command you can print the current value of a variable to\nstdout, while Make is processing the file. For instance, in the Makefile above\nyou could add:\n\n```makefile\n$(info $$DATA = $(DATA))\n```\n\nThis will print ``DATA = data/action.csv ... data/western.csv``.\n\nWith the ``error`` command you can stop the execution of Make at a certain\npoint in the Makefile. This is useful when you want to print the value of a\nvariable and not run Make any further:\n\n```makefile\n$(error $$DATA = $(DATA))\n```\n\nFinally, you can also debug the Makefile by running Make with the debug flag:\n``make -d``. This will print all the rules (including built-in ones) that Make\ntries for each of the targets, and whether or not a rule needs to be run.\n\nIf you only want to print the rules that Make will run and not actually run\nthem, you can use ``make -n``. These last two options can also be combined, so\nthat you see the debug output and Make doesn't run anything: ``make -dn``.\n"
  },
  {
    "path": "book/website/reproducible-research/make/make-examples.md",
    "content": "(rr-make-examples-learnmake)=\n# Learn \"Make\" by Examples\n\n(rr-make-examples-makefiles)=\n## Makefiles\n\nOne of the things that might discourage someone from using Make is that\nexisting Makefiles can look quite complex, and it might seem difficult to\ntailor one to your own needs. In this hands-on tutorial we will create a\nMakefile from scratch for a real data analysis project. The idea is to explain\ndifferent features of Make by iterating through several versions of a Makefile\nfor this project. Hopefully the experience that you gain from this tutorial\nallows you to create Makefiles for your own projects.\n\nWe will create a ``Makefile`` for a data analysis pipeline. The task is as\nfollows:\n\n> **Task: Given some datasets, create a summary report (in pdf) that contains\n> the histograms of these datasets.**\n\n(Of course this data task is very simple to focus on how to use Make.)\n\n*Throughout the tutorial code blocks that start with a dollar sign (``$``) are\nintended to be typed in the terminal.*\n\n(rr-make-examples-settingup)=\n### Setting up\n\nWe have created a basic repository for this task, that already contains\neverything that we need (*except the Makefile of course!*). To start, clone\nthe base repository using git:\n\n```bash\ngit clone https://github.com/alan-turing-institute/IntroToMake\n```\n\nThis basic repository contains all the code that we'll need in this tutorial,\nand should have this content:\n\n```text\n.\n├── data/\n│   ├── input_file_1.csv\n│   └── input_file_2.csv\n├── LICENSE\n├── output/\n├── README.md\n├── report/\n│   └── report.tex\n└── scripts/\n    └── generate_histogram.py\n```\n\n- **data**: directory with two datasets that we're going to analyse\n- **report**: the input directory for the report\n- **scripts**: directory for the analysis script\n- **output**: output directory for the figures and the report\n\nYou'll notice that there are two datasets in the **data** directory\n(``input_file_1.csv`` and ``input_file_2.csv``) and that there is already a\nbasic Python script in **scripts** and a basic report LaTeX file in\n**report**.\n\nIf you want to follow along, ensure that you have the ``matplotlib`` and\n``numpy`` packages installed:\n\n```bash\npip install matplotlib numpy\n```\n\nYou will also need a working version of ``pdflatex`` and, of course, ``make``.\n \nFor installation instructions for Make, see {ref}`rr-make-appendix-installing`.\n\n(rr-make-examples-makefile1)=\n### Makefile no. 1 (The Basics)\n\nLet's create our first Makefile. In the terminal, move into the\n``IntroToMake`` repository that you just cloned:\n\n```bash\ncd IntroToMake\n```\n\nUsing your favourite editor, create a file called ``Makefile`` with the\nfollowing contents:\n\n```makefile\n# Makefile for analysis report\n\noutput/figure_1.png: data/input_file_1.csv scripts/generate_histogram.py\n\tpython scripts/generate_histogram.py -i data/input_file_1.csv -o output/figure_1.png\n\noutput/figure_2.png: data/input_file_2.csv scripts/generate_histogram.py\n\tpython scripts/generate_histogram.py -i data/input_file_2.csv -o output/figure_2.png\n\noutput/report.pdf: report/report.tex output/figure_1.png output/figure_2.png\n\tcd report/ && pdflatex report.tex && mv report.pdf ../output/report.pdf\n```\nThe indentation in each of the recipes are ***tabs***, Makefiles do not accept\nindentation with spaces.\n\nYou should now be able to type:\n\n```bash\nmake output/report.pdf\n```\n\nIf everything worked correctly, the two figures will be created and pdf report\nwill be built.\n\nLet's go through the Makefile in a bit more detail. We have three rules, two\nfor the figures and one for the report. Let's look at the rule for\n``output/figure_1.png`` first. This rule has the target\n``output/figure_1.png`` that has two prerequisites: ``data/input_file_1.csv``\nand ``scripts/generate_histogram.py``. By giving the output file these\nprerequisites it will be updated if either of these files changes. This is one\nof the reasons why Make was created: to update output files when source files\nchange.\n\nYou'll notice that the recipe line calls Python with the script name and uses\ncommand line flags (``-i`` and ``-o``) to mark the input and output of the\nscript. This isn't a requirement for using Make, but it makes it easy to see\nwhich file is an input to the script and which is an output.\n\nThe rule for the PDF report is very similar, but it has three prerequisites\n(the LaTeX source and both figures). Notice that the recipe changes the\nworking directory before calling LaTeX and also moves the generated PDF to the\noutput directory. We're doing this to keep the LaTeX intermediate files in the\nreport directory. However, it's important to distinguish the above rule from\nthe following:\n\n```makefile\n# don't do this\noutput/report.pdf: report/report.tex output/figure_1.png output/figure_2.png\n\tcd report/\n\tpdflatex report.tex\n\tmv report.pdf ../output/report.pdf\n```\n\nThis rule places the three commands on separate lines. However, **Make\nexecutes each line independently** in a separate subshell, so changing the\nworking directory in the first line has no effect on the second, and a failure\nin the second line won't stop the third line from being executed. Therefore,\nwe combine the three commands in a single recipe above.\n\nThis is what the dependency tree looks like for this Makefile:\n\n![DAG for Makefile no. 1](../../../figures/makefile-no1.png)\n<small style=\"margin: 5pt auto; text-align: center; display: block;\">The\ndependency graph for our first Makefile, created using\n[makefile2graph](https://github.com/lindenb/makefile2graph). Notice the\nsimilarity to the figure {ref}`in the introduction<rr-make-summary>`!</small>\n\n(rr-make-examples-makefile2)=\n### Makefile no. 2 (all and clean)\n\nIn our first Makefile we have the basic rules in place. We could stick with\nthis if we wanted to, but there are a few improvements we can make:\n\n1. We now have to explicitly call ``make output/report.pdf`` if we want to\n   make the report.\n\n2. We have no way to clean up and start fresh.\n\nLet's remedy this by adding two new targets: ``all`` and ``clean``. In your\neditor, change the Makefile contents to add the ``all`` and ``clean`` rules as\nfollows:\n\n```makefile\n# Makefile for analysis report\n\nall: output/report.pdf\n\noutput/figure_1.png: data/input_file_1.csv scripts/generate_histogram.py\n\tpython scripts/generate_histogram.py -i data/input_file_1.csv -o output/figure_1.png\n\noutput/figure_2.png: data/input_file_2.csv scripts/generate_histogram.py\n\tpython scripts/generate_histogram.py -i data/input_file_2.csv -o output/figure_2.png\n\noutput/report.pdf: report/report.tex output/figure_1.png output/figure_2.png\n\tcd report/ && pdflatex report.tex && mv report.pdf ../output/report.pdf\n\nclean:\n\trm -f output/report.pdf\n\trm -f output/figure_*.png\n```\n\nNote that we've added the ``all`` target to the top of the file. We do this\nbecause Make executes the *first* target when no explicit target is given.  So\nyou can now type ``make`` on the command line and it would do the same as\n``make all``.  Also, note that we've only added the report as the prerequisite\nof ``all`` because that's our desired output and the other rules help to build\nthat output. If you have multiple outputs, you could add these as further\nprerequisites to the ``all`` target. Calling the main target ``all`` is a\nconvention of Makefiles that many people follow.\n\nThe ``clean`` rule is typically at the bottom, but that's more style than\nrequirement. Note that we use the ``-f`` flag to ``rm`` to make sure it\ndoesn't complain when there is no file to remove.\n\nYou can try out the new Makefile by running:\n\n```bash\nmake clean\nmake\n```\n\nMake should remove the output and intermediate files after the first command,\nand generate them again after the second.\n\n(rr-make-examples-makefile3)=\n### Makefile no. 3 (Phony Targets)\n\nTypically, ``all`` and ``clean`` are defined as so-called [Phony\nTargets](https://www.gnu.org/software/make/manual/make.html#Phony-Targets).\nThese are targets that don't actually create an output file. If not marked as ``.PHONY`` these targets would\nalways be run if they come up in a dependency, but will no longer be run if a\ndirectory/file is ever created that is called ``all`` or ``clean``. We\ntherefore add a line at the top of the Makefile to define these two as phony\ntargets:\n\n```makefile\n# Makefile for analysis report\n\n.PHONY: all clean\n\nall: output/report.pdf\n\noutput/figure_1.png: data/input_file_1.csv scripts/generate_histogram.py\n\tpython scripts/generate_histogram.py -i data/input_file_1.csv -o output/figure_1.png\n\noutput/figure_2.png: data/input_file_2.csv scripts/generate_histogram.py\n\tpython scripts/generate_histogram.py -i data/input_file_2.csv -o output/figure_2.png\n\noutput/report.pdf: report/report.tex output/figure_1.png output/figure_2.png\n\tcd report/ && pdflatex report.tex && mv report.pdf ../output/report.pdf\n\nclean:\n\trm -f output/report.pdf\n\trm -f output/figure_*.png\n```\n\nPhony targets are also useful when you want to use Make recursively. In that\ncase you would specify the subdirectories as phony targets. You can read more\nabout [phony targets in the\ndocumentation](https://www.gnu.org/software/make/manual/make.html#Phony-Targets),\nbut for now it's enough to know that ``all`` and ``clean`` are typically\ndeclared as phony.\n\n> Sidenote: another target that's typically phony is **test**, in case you\n> have a directory of tests called **test** and want to have a target to run\n> them that's also called **test**.\n\n(rr-make-examples-makefile4)=\n### Makefile no. 4 (Automatic Variables and Pattern Rules)\n\nThere's nothing wrong with the Makefile we have now, but it's somewhat verbose\nbecause we've declared all the targets explicitly using separate rules. We can\nsimplify this by using [Automatic\nVariables](https://www.gnu.org/software/make/manual/html_node/Automatic-Variables.html)\nand [Pattern\nRules](https://www.gnu.org/software/make/manual/html_node/Pattern-Rules.html#Pattern-Rules).\n\n(rr-make-examples-automaticvar)=\n#### Automatic Variables.\n\nWith automatic variables we can use the names of the\nprerequisites and targets in the recipe. Here's how we would do that for the\nfigure rules:\n\n```makefile\n# Makefile for analysis report\n\n.PHONY: all clean\n\nall: output/report.pdf\n\noutput/figure_1.png: data/input_file_1.csv scripts/generate_histogram.py\n\tpython scripts/generate_histogram.py -i $< -o $@\n\noutput/figure_2.png: data/input_file_2.csv scripts/generate_histogram.py\n\tpython scripts/generate_histogram.py -i $< -o $@\n\noutput/report.pdf: report/report.tex output/figure_1.png output/figure_2.png\n\tcd report/ && pdflatex report.tex && mv report.pdf ../output/report.pdf\n\nclean:\n\trm -f output/report.pdf\n\trm -f output/figure_*.png\n```\n\nWe've replaced the input and output filenames in the recipes respectively by\n``$<``, which denotes the *first* prerequisite and ``$@`` which denotes the\n*target*. You can remember ``$<`` because it's like an arrow that points to\nthe beginning (*first* prerequisite), and you can remember ``$@`` (dollar\n*at*) [as the target you're aiming\n*at*](https://jameshfisher.com/2016/12/07/makefile-automatic-variables/).\n\nThere are more automatic variables that you could use, see [the\ndocumentation](https://www.gnu.org/software/make/manual/html_node/Automatic-Variables.html).\n\n(rr-make-examples-patternrules)=\n#### Pattern Rules\n\nNotice that the recipes for the figures have become\nidentical!  Because we don't like to repeat ourselves, we can combine the two\nrules into a single rule by using *pattern rules*. Pattern rules allow you to\nuse the ``%`` symbol as a wildcard and combine the two rules into one:\n\n```makefile\n# Makefile for analysis report\n\n.PHONY: all clean\n\nall: output/report.pdf\n\noutput/figure_%.png: data/input_file_%.csv scripts/generate_histogram.py\n\tpython scripts/generate_histogram.py -i $< -o $@\n\noutput/report.pdf: report/report.tex output/figure_1.png output/figure_2.png\n\tcd report/ && pdflatex report.tex && mv report.pdf ../output/report.pdf\n\nclean:\n\trm -f output/report.pdf\n\trm -f output/figure_*.png\n```\n\nThe ``%`` symbol is now a wildcard that (in our case) takes the value ``1`` or\n``2`` based on the input files in the ``data`` directory. You can check that\neverything still works by running ``make clean`` followed by ``make``.\n\nAn advantage of this is that if you now want to add another dataset, say\n``input_file_3``, then you would only need to add that to the rule for the\nreport!\n\n(rr-make-examples-makefile5)=\n### Makefile no. 5 (Wildcards and Path Substitution)\n\nWhen Makefiles get more complex, you may want to use more advanced features\nsuch as building outputs for all the files in an input directory. While\npattern rules will get you a long way, Make also has features for wildcards\nand string or path manipulation for when pattern rules are insufficient.\n\nWhile previously our input files were numbered, we'll now switch to a scenario\nwhere they have more meaningful names. Let's switch over to the ``big_data``\nbranch:\n\n```bash\ngit checkout big_data         # checkout the big_data branch\n```\n\nThe directory structure now looks like this:\n\n```text\n├── data/\n│   ├── action.csv\n│   ├── ...\n│   ├── input_file_1.csv\n│   ├── input_file_2.csv\n│   ├── ...\n│   └── western.csv\n├── LICENSE\n├── output/\n├── README.md\n├── report/\n│   └── report.tex\n└── scripts/\n    └── generate_histogram.py\n```\n\nAs you can see, the **data** directory now contains additional input files\nthat are named more meaningfully (the data are IMBD movie ratings by genre).\nAlso, the **report.tex** file has been updated to work with the expected\nfigures.\n\nWe'll adapt our Makefile to create a figure in the output directory called\n``histogram_{genre}.png`` for each ``{genre}.csv`` file, while excluding the\n``input_file_{N}.csv`` files.\n\n> Sidenote: if we were to remove the ``input_file_{N}.csv`` files, pattern\n> rules would be sufficient here. This highlights that sometimes your\n> directory structure and Makefile should be developed hand in hand.\n\nBefore changing the Makefile, run\n\n```bash\nmake clean\n```\nto remove the output files.\n\nWe'll show the full Makefile first, and then describe the different lines in\nmore detail. The complete file is:\n\n```makefile\n# Makefile for analysis report\n#\n\nALL_CSV = $(wildcard data/*.csv)\nINPUT_CSV = $(wildcard data/input_file_*.csv)\nDATA = $(filter-out $(INPUT_CSV),$(ALL_CSV))\nFIGURES = $(patsubst data/%.csv,output/figure_%.png,$(DATA))\n\n.PHONY: all clean\n\nall: output/report.pdf\n\n$(FIGURES): output/figure_%.png: data/%.csv scripts/generate_histogram.py\n\tpython scripts/generate_histogram.py -i $< -o $@\n\noutput/report.pdf: report/report.tex $(FIGURES)\n\tcd report/ && pdflatex report.tex && mv report.pdf ../$@\n\nclean:\n\trm -f output/report.pdf\n\trm -f $(FIGURES)\n```\n\nFirst, we use the ``wildcard`` function to create a variable that lists all\nthe CSV files in the data directory and one that lists only the old\n``input_file_{N}.csv`` files:\n\n```makefile\nALL_CSV = $(wildcard data/*.csv)\nINPUT_CSV = $(wildcard data/input_file_*.csv)\n```\n\nA code convention for Makefiles is to use all capitals for variable names and\ndefine them at the top of the file.\n\nNext, we create a variable to list only the data files that we're interested\nin by filtering out the ``INPUT_CSV`` from ``ALL_CSV``:\n\n```makefile\nDATA = $(filter-out $(INPUT_CSV),$(ALL_CSV))\n```\n\nThis line uses the\n[``filter-out``](https://www.gnu.org/software/make/manual/make.html#index-filter_002dout)\nfunction to remove items in the ``INPUT_CSV`` variable from the ``ALL_CSV``\nvariable.  Note that we use both the ``$( ... )`` syntax for functions and\nvariables. Finally, we'll use the ``DATA`` variable to create a ``FIGURES``\nvariable with the desired output:\n\n```makefile\nFIGURES = $(patsubst data/%.csv,output/figure_%.png,$(DATA))\n```\n\nHere we've used the\n[``patsubst``](https://www.gnu.org/software/make/manual/make.html#index-patsubst-1)\nfunction to transform the input in the ``DATA`` variable (that follows the\n``data/{genre}.csv`` pattern) to the desired output filenames (using the\n``output/figure_{genre}.png`` pattern). Notice that the ``%`` character marks\nthe part of the filename that will be the same in both the input and output.\n\nNow we use these variables for the figure generation rule as follows:\n\n```makefile\n$(FIGURES): output/figure_%.png: data/%.csv scripts/generate_histogram.py\n\tpython scripts/generate_histogram.py -i $< -o $@\n```\n\nThis rule again applies a pattern: it takes a list of targets (``$(FIGURES)``)\nthat all follow a given pattern (``output/figure_%.png``) and based on that\ncreates a prerequisite (``data/%.csv``). Such a pattern rule is slightly\ndifferent from the one we saw before because it uses two ``:`` symbols. It is\ncalled a [static pattern\nrule](https://www.gnu.org/software/make/manual/make.html#Static-Pattern).\n\nOf course we have to update the ``report.pdf`` rule as well:\n\n```makefile\noutput/report.pdf: report/report.tex $(FIGURES)\n\tcd report/ && pdflatex report.tex && mv report.pdf ../$@\n```\n\nand the ``clean`` rule:\n\n```makefile\nclean:\n\trm -f output/report.pdf\n\trm -f $(FIGURES)\n```\n\nIf you run this Makefile, it will need to build 28 figures. You may want to\nuse the ``-j`` flag to ``make`` to build these targets **in parallel!**\n\n```bash\nmake -j 4\n```\n\nThe ability to build targets in parallel is quite useful when your project has\nmany dependencies!\n\nThe resulting PDF file should now look like this:\n\n![Report with all genres](../../../figures/make-report-all-genres.png)<small\nstyle=\"margin: 5pt auto; text-align: center; display: block;\">A compressed\nview of the report with histograms for all genres.</small>\n"
  },
  {
    "path": "book/website/reproducible-research/make/make-resources.md",
    "content": "(rr-make-resources)=\n# Resources for \"Make\"\n\n(rr-make-resources-manual)=\n## Manual\n\n- [The Official Make Reference\n  manual](https://www.gnu.org/software/make/manual/make.html).\n\n(rr-make-resources-discussions)=\n## Discussions\n\n- [Discussion on Make on\n  HackerNews](https://news.ycombinator.com/item?id=15041986).\n\n- [Recursive Make Considered\n  Harmful](http://aegis.sourceforge.net/auug97.pdf). This is a well-known\n  paper on why you shouldn't use nested makefiles. To summarise: if you do\n  this Make can't see the entire DAG and that leads to problems.\n\n- [Non-Recursive Make Considered\n  Harmful](https://www.microsoft.com/en-us/research/wp-content/uploads/2016/03/hadrian.pdf):\n  This is a research paper describing the failings of Make for large and\n  complex builds.\n\n(rr-make-resources-blogs)=\n## Blogs\n\nOf course we are not the first to suggest the use of Make for reproducibility!\nThe blog posts cited below were found after the above tutorial was written,\nbut can add further information and examples.\n\n- [Reproducibility is\n  hard](https://kbroman.wordpress.com/tag/reproducible-research/). Discusses\n  making a research project reproducible using Make.\n\n- [GNU Make for Reproducible Data Analysis](http://zmjones.com/make/). Argues\n  for using Make for reproducible analysis in a similar vein as we do above.\n\n- [Reproducible Bioinformatics Pipelines using\n  Make](http://byronjsmith.com/make-bml/). A quite extensive tutorial on using\n  Make for data analysis.\n\n- [Automatic Data-analysis\n  Pipelines](http://stat545.com/automation04_make-activity.html). A similar\n  tutorial that uses R for the analysis.\n\n- [Writing a reproducible Paper](http://handbook.datalad.org/en/latest/usecases/reproducible-paper.html#automation-with-existing-tools).\n  A similar tutorial with Python using variables to populate tables in the\n  manuscript.\n\n(rr-make-resources-tools)=\n## Tools\n\n- Plot the DAG of the Makefile with\n  [makefile2graph](https://github.com/lindenb/makefile2graph).\n\n(rr-make-resources-alternatives)=\n## Alternatives to Make\n\nThere are [many alternatives to\nMake](https://en.wikipedia.org/wiki/List_of_build_automation_software). Below\nare some that caught our eye and that might be worth a look.\n\n- [SnakeMake](https://snakemake.readthedocs.io/en/stable/). A Python3-based\n  alternative to Make. Snakemake supports multiple wildcards in filenames,\n  supports Python code in rules, and can run workflows on workstations,\n  clusters, the grid, and in the cloud without modification.\n\n- [Tup](http://gittup.org/tup/index.html). A fast build system that processes\n  prerequisites bottom-up instead of Make's top-down. The speed looks\n  impressive and the paper describing it is interesting, but for small\n  projects Make's speed will not be a bottleneck. The Tupfile syntax is not\n  compatible with that of Makefiles.\n\n- [Bazel](https://www.bazel.build). An open-source version of Google's Blaze\n  build system.\n\n- [Buck](https://buckbuild.com/). Facebook's build system.\n\n\n"
  },
  {
    "path": "book/website/reproducible-research/make/make-results.md",
    "content": "(rr-make-results)=\n# Including numerical results and tables\n\nAt this point you may be thinking \"That's so cool that I can now include figures\ninto my manuscripts! But how exactly does this work for numerical results?\"\n\nThe reproducible paper linked above shows one way of doing it:\nAfter the results are computed, they are written out in the form of a LaTeX\ntable.\nHere is how one of these tables looks like right after it was computed:\n\n```latex\n\\begin{tabular}{lrrr|rrrr}\nProperty & HypoParsr & Sniffer & Suitability & Pattern & Type & No Tie & Full\\\\\n\\hline\nDelimiter & 87.48 & 86.82 & 65.41 & 92.61 & 88.33 & 91.38 & \\textbf{94.92}\\\\\nQuotechar & 82.90 & 92.36 & 44.60 & 95.23 & 90.10 & 93.80 & \\textbf{97.36}\\\\\nEscapechar & 87.96 & 94.37 & 74.85 & 97.95 & 96.26 & 95.44 & \\textbf{99.25}\\\\\nOverall & 80.60 & 85.45 & 38.19 & 90.99 & 83.61 & 90.61 & \\textbf{93.75}\\\\\n\\hline\n\\end{tabular}\n```\n\nTo include this table into your manuscript, you can use LaTeX's `\\input{}`\nfunction. If the file with the table is called `mytable.tex`, this command\ncan insert it into your manuscript:\n\n```latex\n\\begin{table}\n\\input{mytable}\n\\end{table}\n```\n\nAn alternative is to make use of variables.\nInstead of creating a table in a separate file, you can write a table skeleton\nand populate it with variables.\nThe results you compute are associated with the variables, and once your\nmanuscript is compiled, variables are exchanged for real numerical results.\nHere is how such a table looks like in your manuscript:\n\n```latex\n\\begin{table}\n    \\begin{tabular*}{ccc}\n        \\textbf{Variable} & \\textbf{Mean}   & \\textbf{Std. deviation} \\\n        \\hline\n        Variable 1        & \\var1mean       & \\var1std                \\\n        Variable 2        & \\var2mean       & \\var2std                \\\n    \\end{tabular*}\n\\end{table}\n```\n\nỲou may notice that `\\var1mean` is no standard LaTeX command: It is a variable\nthat you can define yourself!\nHow is this done?\nHave your script print the results you compute within a `\\newcommand{}{}`\ndefinition into a file, for example like this (simplified Python example):\n\n```python\n# this loops to data vectors of two variables (data1, data2), compute the\n# mean and standard deviation, and print the results together with the\n# variable name ('var1', 'var2')\nfor name, data in (['var1', data1], ['var2', data2]):\n    mean = np.mean(data)\n    std = np.mean(data)\n    print('\\\\newcommand{\\\\%s }{ %f }' % (name + 'mean', mean))\n    print('\\\\newcommand{\\\\%s }{ %f }' % (name + 'std', std))\n```\n\nLet's say the mean of the first dataset is 9.2, the definition would look like\nthis: `\\newcommand{\\var1mean}{9.2}`.\nNote that this example uses Python, but you can use any language or method you\nare familiar with to print definitions like this.\nWith this definition, LaTeX exchanges the table cell with `\\var1mean` with the\nnumeric result from the computation.\nYou can capture the definitions and write them to a file using redirection with\n`>`.\nIn this example, we write it to a file called `results_def.tex`\n\n```makefile\nresults_def.tex: code/make_summary_stats.py\n\tpython code/make_summary_stats.py > results_def.tex\n```\n\nAs an alternative to `>`, you could also redirect the results using the Unix\n[pipe](https://en.wikipedia.org/wiki/Pipeline_(Unix)) and the\n[tee](https://en.wikipedia.org/wiki/Tee_(command)) command\n(`python code/make_summary_stats.py | tee results_def.tex`).\nThis will not only redirect the output of the script to a file, but also print\nthem into your terminal.\nThis helpful trick can help you observe whether everything works as expected\nduring the execution of your script.\n\nFinally, use the `input{}` command to include the new variables in your\nmanuscript and the variables in the tables:\n\n```latex\n\\begin{document}\n\\input{results_def.tex}\n```\n\nThe examples shown here are simplistic, but with a bit of thinking, you can\nmake sure to include results into your manuscript just as they are computed.\nThis helps you (no mistakes copying results to tables, yay!) and makes your\nresearch more accessible and reproducible.\n"
  },
  {
    "path": "book/website/reproducible-research/make.md",
    "content": "(rr-make)=\n# Reproducibility with Make\n\n(rr-make-prerequisites)=\n## Prerequisites\n\n| Prerequisite | Importance | Notes |\n| ------------ | ---------- | ----- |\n| {ref}`Experience with the command line<rr-overview-resources-commandline>` | Necessary | |\n| {ref}`Version Control<rr-vcs>` | Helpful | Experience using git is useful to follow along with examples |\n\nRecommended skill level: intermediate\n\n(rr-make-summary)=\n## Summary\n\nA data science or research project can be seen as a tree of dependencies: the\nreport depends on the figures and tables, and these in turn depend on the data\nand the analysis scripts used to process this data (illustrated in the figure\nbelow).  Make is a tool for creating output files from their dependencies\nthrough pre-specified rules.  It is possible to combine these two ideas to\ncreate a reproducible project with Make.  In this chapter we give an\nintroduction to Make and provide a tutorial on how Make can be used for a data\nanalysis pipeline.  We also describe a real-world reproducible research\nproject that uses Make to go from the raw input data to the experiments all\nthe way to the pdf file of the paper!\n\n```{figure} ../../figures/make-research-dag.*\n---\nname: make-research-dag\nalt: Schematic of a research project.\n---\nSchematic of a research project.\n```\n\n(rr-make-intro)=\n## An Introduction to Make\n\nMake is a build automation tool. It uses a configuration file called a\nMakefile that contains the *rules* for what to build. Make builds *targets*\nusing *recipes*.  Targets can optionally have *prerequisites*.  Prerequisites\ncan be files on your computer or other targets. Make determines what to build\nbased on the dependency tree of the targets and prerequisites (technically,\nthis is a {ref}`rr-make-resources-tools`). It uses the *modification time* of\nprerequisites to update targets only when needed.\n\n(rr-make-why)=\n### Why use Make for Reproducibility?\n\nThere are several reasons why Make is a good tool to use for reproducibility:\n\n1. Make is easy to learn\n1. Make is available on many platforms\n1. Make is flexible\n1. Many people are already familiar with Make\n1. Makefiles reduce cognitive load because as long as the common Make targets\n   ``all`` and ``clean`` are present (explained below), you can be up and\n   running without having to read lengthy instructions. This is especially\n   useful when you work on someone else's project or on one that you haven't\n   used in a long time.\n1. Makefiles are human-readable and machine-readable text files. So instead of\n   writing instructions to a human for how to build a report or output, you\n   can provide a Makefile with instructions that can be read by a human *and*\n   executed by a computer.\n1. Because Makefiles are text files they are easy to share and keep in version\n   control.\n1. Using Make doesn't exclude using other tools such as Docker.\n\nWith a clever Makefile, you can share a complete analysis (code, data, and\ncomputational workflows) and let collaborators or the readers of your paper\nrecompute your results.\nBy using tools such as LaTeX, you can even generate a complete manuscript that\nincludes freshly computed figures and results!\nThis can increase the trust in the research output that you generate, it can\nmake your research more accessible, and it can make collaborating easier.\nThis chapter can show you how to get started.\n"
  },
  {
    "path": "book/website/reproducible-research/open/open-access.md",
    "content": "(rr-open-access)=\n# Open Access\n\n(rr-open-access-whatis)=\n## What Is Open Access?\n\nDisseminating and sharing scientific results has been part of research since it was established.\nThe first scientific journal, Philosophical Transactions, was established in 1665 and published letters about scientific observations and experimentations.\nThe 'commercialisation' of scientific publishing began in the 1940s and for many years publications, such as through a journal, conference proceedings or book, were available to the public if purchased through a subscription fee or individually.\n\nHowever, new knowledge is built by synthesizing current scholarship and then building upon it.\nAt the turn of the 21st century, the Open Access [{term}`def<Open Access>`] movement was established, principally through the [Budapest Open Access Initiative](https://www.budapestopenaccessinitiative.org/) and the Berlin Declaration on Open Access.\nA quote from the Budapest Open Access Initiative sums up the objective:\n>\"We mean its free availability on the public internet, permitting any users to read, download, copy, distribute, print, search, or link to the full texts of these articles...the only constraint on reproduction and distribution, and the only role for copyright in this domain, should be to give authors control over the integrity of their work and the right to be properly acknowledged and cited\"\n\nIt has been estimated around 28% of the scholarly literature is Open Access {cite}`Piwowar2018stateofOA` and in 2020 more outputs were published through Open Access channels than traditional subscription channels globally {cite}`Dimensions2021openaccesssurpasses`.\n\n(rr-open-access-routes)=\n## Routes for Open Access\n\nAn overview of Open Access and all the routes mentioned below are covered in these videos from [Welch Medical Library](https://www.youtube.com/watch?v=CFa2QeMgk9k) and the [Unpaywall team](http://go.sirsidynix.com/2020-04-29-Episode-1-Introduction-to-Open-Access.html).\n\nThere is no 'correct' way to do Open Access and there are many different routes to sharing your research openly - we have shared 3 below that may help you.\nHowever, deciding on whether to share your research openly may depend on how prominent Open Access is in your field of research, how many resources you have to do this and whether there are restrictions or mandates from your funder or institution.\n\n(rr-open-access-preprints)=\n### Preprints\n\nA preprint [{term}`def<Preprint>`] is a scientific manuscript that is uploaded by the authors to a public server before peer review.\nThe first preprint server called [arXiv](https://arxiv.org/) was established in 1991 for physical sciences.\nLikely due to the inefficiency of traditional journals, preprint servers for other disciplines have grown hugely in popularity over the last 5 years, with the emergence of [bioRxiv](https://www.biorxiv.org/), [medRxiv](https://www.medrxiv.org/), [ChemRxiv](https://chemrxiv.org/engage/chemrxiv/public-dashboard), [SocArXiv](https://osf.io/preprints/socarxiv) and [many more](https://en.wikipedia.org/wiki/List_of_preprint_repositories).\n\nPreprints allow researchers to get their results out quickly and give the opportunity to get feedback on a manuscript before submitting it to a journal.\nSome journals will not allow a paper to be submitted if it has already been posted on a preprint server as they consider it 'prior publication', however, the ongoing popularity of preprints has forced many publishers to embrace preprints, or in the case of journals like eLife, actively encourage them @elife2020preprints.\nYou can find a [list of academic journal policies on preprints on wikipedia](https://en.wikipedia.org/wiki/List_of_academic_publishers_by_preprint_policy) or enter the journal title in the [Open Policy Finder](https://openpolicyfinder.jisc.ac.uk/).\nYou can find out more about preprints at [ASAPbio](https://asapbio.org/preprint-info).\n\n(rr-open-access-preprints-doi)=\n#### Preprint DOIs\n\nMost preprint servers automatically assign DOIs (typically from DataCite) when you deposit your manuscript, making your work immediately citable even before peer review.\nIt's important to note that a preprint DOI is separate from any future journal publication DOI - both serve as permanent, independent records of your research at different stages.\nASAPbio provides [detailed guidance on citing preprints](https://asapbio.org/preprint-info/preprint-citation), and major servers like [bioRxiv](https://www.biorxiv.org/about-biorxiv) and [arXiv](https://info.arxiv.org/help/doi.html) offer documentation on their DOI assignment processes.\nFor more information on how DOIs work, see our [chapter on persistent identifiers](#rr-rdm-pid).\n\n#### Preprint Resources\n- 10 min talk: [Preprint adoption in the life sciences by ASAPbio](https://www.youtube.com/watch?v=j_G6flATV1c&list=PL1CvC6Ez54KDvJbbdLn5rPvf1kInifEh9&index=12)\n- [How to Prepare Your Preprint](https://help.osf.io/article/376-preprints-home-page#How-to-Prepare-Your-Preprint-UwA-q) by OSF\n\n(rr-open-access-journal-publishing)=\n### Open Access Journal publishing\n\nTraditionally many journals are subscription journals, meaning their content is behind a paywall.\nUniversities may have subscriptions to that journal, allowing you to access its content if you are based at a subscribing institution or you may be able to pay a one-off fee to access an individual article.\n\nThe Open Access movement led to the creation of Open Access journals, where the content is open for everyone, with no need to pay or be a member of a subscribing institution.\nThe number of these journals is still increasing rapidly, with 17,000 listed in the Directory of Open Access Journals [DOAJ](http://www.doaj.org) (data fetched November 2021).\n\nWatch this talk by Vicky Hellon on \"Brief History of scientific publishing, and where do we go from here?\", where she provides an overview of how different models of scientific publication look like, and how we can take an informed approach to Open Access.\n\n::: {iframe} https://www.youtube.com/embed/Mycp7SzBWB0\n:align: center\n:width: 100%\n\nHistory of Scientific Publishing - Where do we go from here?\nSlides: https://doi.org/10.5281/zenodo.6516871\n:::\n\n\n(rr-open-access-gold-publishing)=\n#### Gold Open Access publishing\n\nGold Open Access Publishing (or sometimes referred to as libre) can be defined as paying an Article Processing Charge (APC) to a journal so they publish the final version of your article under an open access license, which is then permanently and freely available online for anyone.\nThe author will retain the copyright of their article, usually via a [Creative Commons licence](https://creativecommons.org/) of their choice, which dictates what others can do with the article.\n\nThere can often be misconceptions around publishing in Open Access journals- as they are newer to the system they are often wrongly thought of as 'less rigorous' or 'lower quality' than the 'traditional' journals.\nSome researchers have also been caught up in what is referred to as 'predatory publishing'- where they are tricked into paying an article processing charge to journals that are fraudulent and do not provide editorial processes that check articles for quality and legitimacy.\nFollowing the [Think.Check.Submit guidelines](https://thinkchecksubmit.org/) can help researchers to avoid predatory journals.\n\nA criticism around gold Open Access publishing is also the cost.\nAPCs can generally be around 2000 USD or in some cases more, which can therefore be prohibitive for authors across the globe.\nSome publishers offer discounts or waivers to authors from countries classified by the World Bank as low-income economies or APCs may be covered by your funder as part of your grant.\n\nWhilst some journals are fully Open Access, meaning all the articles they publish are open and free to read, some journals are hybrid.\nThese are subscription journals that have an option for authors to pay an APC to make their content Open Access- some of the content of the journal will be behind a paywall and some will be free to read.\nWhilst publishers argue hybrid journals allow authors to publish openly in traditional journals, many (particularly funders) are critical of this model as 'double dipping', as publishers are being paid by authors to make their content open while simultaneously selling the journal subscription to universities.\n\n(rr-open-access-self-archiving)=\n### Self-Archiving\n\nYou can also make your research open via self-archiving which is often referred to (along with preprints) as **Green Open Access** or gratis.\nThe self-archiving [{term}`def<Self Archiving>`] movement aims to provide tools and assistance to scholars to deposit and disseminate their refereed journal articles in open institutional or subject-based repositories.\nYou may choose to self-archive your work to make it more discoverable and/or after you've published it in a subscription journal to ensure there is an open version of your paper.\n\nAt the beginning of 2019, more than 4000 repositories were available for researchers to self-archive their publications according to the [Registry of Open Access Repositories](http://roar.eprints.org/).\nThis list features institutional repositories, subject-based or thematic repositories, and harvesters.\n\nInstitutional repositories are generally managed by research performing institutions to provide to their community a place to archive and share papers and other research outputs openly.\nResearch communities usually manage subject-based repositories, and most of the contents are related to a specific discipline.\nFinally, harvesters aggregate content from different repositories, becoming sites to perform general searches and build other value-added services.\n\nWhen deciding to self-archive your work you will need to check the copyright policy of the journal you've published with (also consider doing this when you are looking at which journal to submit your manuscript too).\nMany journals still require that authors transfer full copyright for publication.\nThis transfer of rights implies that authors must ask for permission to reuse their work beyond what is allowed by the applicable law unless there are some uses already granted.\nSuch granted uses may include teaching, sharing with colleagues, and self-archiving papers in repositories.\nSometimes, there are standard policies across all journals maintained by the same publishers.\n\nHowever, in general, journals have their own policies, especially when they are published on behalf of a scientific society.\nWhen looking at the conditions for self-archiving, we must identify two key issues: the version of the paper that can be deposited, and when it can be made publicly available.\n\nRegarding the version, some journals allow the dissemination of the submitted versions, also known as a preprint.\nThey also allow its replacement with the peer-reviewed version once it has been published.\nDue to the increase of policies requiring access to research results, most of the journals allow self-archiving of the accepted version of the paper, also known as the author manuscript or postprint.\nThis version is the final text following the peer review process but does not yet have publication formatting or layout applied.\nFinally, some journals do allow researchers to deposit the final published version, also known as the version of record.\n\nConcerning the moment to make the paper publicly available, many journals establish a period from its original publication - the embargo period, which can range from zero to 60 months - were making the paper publicly available is not permitted.\nSome journals include or exclude embargoes depending on the versions.\nFor instance, the accepted version could be made publicly available after publication, but the published version must wait 12 months.\nYou can check journal policies on self-archiving using the [Open Policy Finder](https://openpolicyfinder.jisc.ac.uk/).\n\n```{figure} ../../../figures/routes-to-OA.*\n---\nheight: 500px\nname: routes-to-OA\nalt: >\n  An image of a train showing the routes to open access publishing.\n  The green route is signalled as free and shows a preprint server at the start of the journey and self archive at the end.\n  The gold and diamond routes are signalled as author pay and funder or institution pay and show the publish in an open access journal part of the journey.\n---\nRoutes to publishing openly.\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. Original version on Zenodo. [http://doi.org/10.5281/zenodo.5706310](http://doi.org/10.5281/zenodo.5706310)\n```\n\n(rr-open-access-why)=\n## Why Should You Share Your Research Openly?\n\nResearch is useless if it is not shared; even the best research is ineffectual if others are not able to read and build on it.\nSharing your research openly and making your results known to others in your field and beyond (via pre-printing, gold open access publishing, self-archiving or a combination of the 3!) can help researchers work more effectively with a better understanding of the literature and helps to avoid duplication of effort- no researcher (or funder) wants to waste time and money conducting a study if they know it has been attempted elsewhere.\nResearch being open and available to the broadest possible pool of readers also means it is more likely to be checked and reproduced.\nFurthermore, it can be argued that taxpayers who pay for much of the research published in journals have a right to access the information resulting from that investment without charge.\n\nPublishing openly also has benefits for you as an author.\nYour work is likely to reach a larger audience meaning it may have a broader societal impact.\nPapers published openly are also more likely to have a citation advantage {cite}`Tennant2016openaccess`.\n\n```{figure} ../../../figures/share-work-openly.*\n---\nheight: 500px\nname: share-work-openly\nalt: >\n  A train, carrying scientific findings, rides on a train track that's surrounded by other items.\n  These items represent the advantages of open and disadvantages of closed publications:\n  1) On the site of the train track construction workers built two tunnels in parallel, illustrating the duplication of effort and funding.\n  2) The train tracks split into a dead end, representing what happens to research that's behind a paywall.\n  3) Track building materials are in a container labelled with tax money, showing that publicly funded work should be publicly available.\n  4) An observer carries a briefcase with scientific work; publicly available work benefits authors through more citations.\n  5) A small second train is moving in the background, illustrating that open-access articles are more likely to be reused.\n---\nAdvantages to sharing your research openly.\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. Original version on Zenodo. [http://doi.org/10.5281/zenodo.5706310](http://doi.org/10.5281/zenodo.5706310)\n```\n\n(rr-open-access-future)=\n## The Future of Open Access\n\nThe Open Access movement has pushed for change amongst publishers and many, both non-profit and for-profit, voluntarily make their articles openly available at the time of publication or within 6-12 months.\nThey have also switched many of their journals from a closed, subscription model to an open one as a strategic business decision to increase their journal's exposure and impact.\nHowever, [many are critical](https://www.the-scientist.com/news-opinion/for-a-hefty-fee-nature-journals-offer-open-access-publishing-68181) of the increasing cost publishers are charging to publish in Open Access.\n\nFurther pushes to make more research open and advocate for change in slow-changing publishers has come from initiatives such as [Plan S](https://www.coalition-s.org/why-plan-s/) which is backed by a coalition of funders and stakeholders.\nUKRI has also recently announced a new Open Access policy {cite}`ukri2021openaccess` for work they fund, requiring immediate open access for peer-reviewed research articles submitted for publication from 1st April 2022.\n\nThe push for open is also prevalent across the globe- initiatives such as [SciELO](https://en.wikipedia.org/wiki/SciELO) which was created to meet the scientific communication needs of developing countries and provides an efficient way to increase visibility and access to scientific literature.\n\nFunders have also taken action by becoming publishers themselves (referred to as Diamond Open Access). Platforms such as [Open Research Europe](https://open-research-europe.ec.europa.eu/) and [Wellcome Open Research](https://wellcomeopenresearch.org/) are Open Access publishing platforms for researchers funded by that specific funder.\nFunders see this as a service for their grantees- allowing them a venue to publish rapidly and openly for free (funders cover the cost of the infrastructure and the article processing charges) and to have more flexibility than publishing in a journal.\nThese platforms allow researchers to publish a range of article types beyond the 'traditional research article', such as data notes, software tool articles, methods, research notes and more. \nYou can find out more in our [Chapter on Publishing Different Article Types](#cm-dif-articles).\nThese funder supported platforms also help shift the needle and inform new policies on researcher assessment, such as moving away from impact factors.\n"
  },
  {
    "path": "book/website/reproducible-research/open/open-checklist.md",
    "content": "(rr-open-checklist)=\n# Checklist\n\n(rr-open-checklist-data)=\n## Open Data\n\n\n- Ensure your data is in a simple, standard format or formats which is machine and human-readable.\n- Check, reformat or create metadata to clearly describe what the data is, how it was collected, and any associated strengths/weaknesses to someone that finds it.\n- Identify a relevant, easily discoverable repository or repositories to host your data, and upload it there.\n- Assign your data a persistent identifier such as a DOI by depositing it in a trusted repository.\nLearn how PIDs work and how repositories assign them in our [practical guidance on PIDs](#rr-rdm-pid-practical).\n\n(rr-open-checklist-software)=\n## Open Source Software\n\n- Put your code in a freely accessible repository.\n- Include a licence granting others the right to use, copy and modify your work. You can use the {ref}`rr-licensing` chapter to help you pick the most appropriate licence for your project.\n- Include a README file containing useful information about a project such as what it is, how to use/install it and how to run any tests.\n- If you want others to collaborate on the project include contribution guidelines.\n\n(rr-open-checklist-hardware)=\n## Open Hardware\n\n- Use open hardware where practical.\n- Make detailed documentation and designs for any hardware you develop openly available.\n- Include a licence granting others the right to use, copy and modify your work. You can use [this](https://choosealicense.com/) website to help you pick the most appropriate licence for your project.\n- Include a README file containing useful information about a project (for example, what it is and the materials used).\n\n(rr-open-checklist-access)=\n## Open Access\n\n- Publish your research in an open-access journal.\n- Store a copy or preprint of your work in a freely accessible public repository.\n\n(rr-open-checklist-notebooks)=\n## Open Notebooks\n\n- Keep notes in an {ref}`Electronic Lab Notebook<rr-rdm-elns>`.\n- Make your notebooks {ref}`publicly accessible online<rr-open-notebooks>`.\n"
  },
  {
    "path": "book/website/reproducible-research/open/open-data.md",
    "content": "(rr-open-data)=\n# Open Data\n\nThe world is witnessing a significant global transformation, facilitated by technology and digital media, and fuelled by data and information.\nThis transformation has enormous potential to foster more transparent, accountable, efficient, responsive, and effective research.\nOnly a very small proportion of the original data is published in conventional journals.\nDespite existing policies on archiving data, in today’s practice data are primarily stored in private files, not in secure institutional repositories, and effectively are lost to the public (and often even to the researcher who generated the data).\n\nThis lack of data sharing is an obstacle to international research (be it academic, governmental, or commercial) for two main reasons:\n\n1. It is generally difficult or impossible to reproduce a study without the original data.\n2. The data cannot be reused or incorporated into new work by other researchers if they cannot obtain access to it.\n\nAccordingly, there is an ongoing global data revolution that seeks to advance collaboration and the creation and expansion of effective, efficient research programs.\nOpen data [{term}`def<Open data>`] is crucial to meeting these objectives.\nOpen data is freely available on the internet.\nAny user is permitted to download, copy, analyse, re-process, and reuse it for any other purpose with minimal financial, legal, and technical barriers.\nSee the [Open Data Handbook](https://opendatahandbook.org/guide/en/what-is-open-data/) for more details. \n\nThis represents a real shift in how research works.\nFunders are starting to require researchers to make their data available and submit [Data Management Plans](#rr-rdm-dmp) as part of project proposals.\nAt the moment, anyone who wishes to use data from a researcher often has to contact that researcher and make a request.\n\"Open by default\" remedies this with a presumption of publication for all.\nIf access to data is restricted, for instance, due to security reasons, the justification for this should be made clear.\nFree access to and subsequent use of data is of [significant value to society and the economy and also has benefits to researchers](https://blog.datadryad.org/2025/07/24/benefits-of-open-data/).\nThat data should, therefore, be open by default and only as closed as necessary.\n\n```{figure} ../../../figures/data-levels.*\n---\nname: data-levels\nalt: A line where different levels of data sharing are described. It starts at the left with the words 'functionally closed' in red. After this is \"available upon request\". The next level would be a synthetic dataset, followed by Open if a specified process is followed. Then there is Freely open (with the exception of sensitive data), Freely open (analytic dataset), and at the right side freely open (full dataset), in red. \n---\nA continuum of data sharing, in [Syed 2022](https://doi.org/10.31234/osf.io/w8xs2)\n```\n\nYou can find more about the practical steps to make your data available in the section describing [Steps to Share your Data](#rr-rdm-sharing-steps).\n\n(rr-open-data-barriers)=\n## Barriers to Data Sharing\nMany academics find sharing data difficult.\nRecent surveys @Stuart2018sharing conducted amongst researchers list the following reasons:\n\n- Organising data in a presentable and useful way is challenging (mentioned by 46%)\n- Researchers are unsure about copyright and licensing (mentioned by 37%)\n- Researchers do not know which repository to use for different data types (raised by 33%)\n\nFor answers to arguments why data should be closed, please see the [How to argue with a closed scientist FAQ](https://codeberg.org/bbartholdy/open-science-faq/).\n\nThese are cultural challenges that might be addressed in changing practice going forward.\nHowever, there are also legal, ethical or contractual reasons that sometimes prevent making data publicly available in its entirety or even in parts.\nBelow, we discuss some reasons explaining why this may be the case.\n\n```{figure} ../../../figures/data-privacy.*\n---\nheight: 500px\nname: data-privacy\nalt: An image detailing why private data should be used. A person stands next to a well with 'private data' written on it and a padlock around it. It is black and white and blue. The text lists that 'people deserve - dignity, agency, privacy, rights, confirmed consent.'\n---\n_The Turing Way_ project illustration by Scriberia. Original version on Zenodo. [http://doi.org/10.5281/zenodo.3695300](http://doi.org/10.5281/zenodo.3695300)\n```\n\n(rr-open-data-barriers-privacy)=\n### Privacy And Data Protection\n\nMany fields of research involve working with sensitive personal data, with medical research being the most obvious example. \nPlease see the [](#pd-sdp) for more information about different types of sensitive data and how to [manage](#pd-sdpm) these data. \nParticularly the [Pata Privacy Strategies](#pd-sdpm-privacy) section can help you to safely manage and protect sensitive personal data. \n\n(rr-open-data-barriers-consent)=\n### Consent\n\nFor anonymised research data to be made available for future reuse, consent forms must cover sharing this data with other researchers.\nResearch so far suggests that study participants are usually less concerned about the data being archived and shared than researchers think {cite:ps}`Kuula2010archiving`.\nParticipant information sheets and consent forms should include how research data will be stored, preserved and used in the long term, and how confidentiality will be protected when needed.\n\n\n(rr-open-data-barriers-national)=\n### National and Commercially Sensitive Data\n\nIn many cases, companies are understandably unwilling to publish much of their data.\nThe reasoning goes that if commercially sensitive information of a company is disclosed, it will damage the company’s commercial interests and undermine competitiveness.\nThis is based on the thinking that in competitive markets, innovation will only occur with some protection of information.\nIf a company spends time and money developing something new, the details of which are then made public, then its competitors can easily copy it without having to invest the same resources.\nThe result is that no one would innovate in the first place.\nSimilarly, for public safety concerns, governments are often unwilling to publish data that relates to issues such as national security.\nIn such cases, it may not be possible to make data open, or it may only be possible to share partial/obscured datasets.\n\n***Chapter Tags**: This chapter is curated for the `Turing Data Study Group` (`turing-dsg`).*\n"
  },
  {
    "path": "book/website/reproducible-research/open/open-hardware.md",
    "content": "(rr-open-hardware)=\n# Open Source Hardware\n\n## Definition\n\n“Open source hardware” (OSH) refers to the design specifications of a physical object that are licenced such that they and the object can be studied, modified, created, and distributed by anyone.\nIts formal definition [{term}`def<Open Source Hardware>`] was written by the open hardware community back in 2010, and is maintained by the [Open Source Hardware Association (OSHWA)](https://oshwa.org), a US-based non-profit.\n\nTranslations of *hardware* in some languages may bias the concept towards electronics, but with *hardware* we refer to any physical, tangible object: machines, electronic devices, biomaterials, textiles.\nYou will also often see the terms *open hardware* and *open source hardware* used interchangeably in the literature and in this article.\n\n## OSH in Research\n\n\nIn 2016, the [Global Open Science Hardware](https://openhardware.science) community took the OSHWA definition and tailored it to the specific needs of science:\n\n> Open Science Hardware (OscH) refers to any piece of hardware used for scientific investigations that can be obtained, assembled, used, studied, modified, shared, and sold by anyone. This includes standard lab equipment as well as auxiliary materials, such as sensors, biological reagents, analog and digital electronic components.\n\nIn 2021, the [UNESCO Open Science Recommendation](https://en.unesco.org/science-sustainable-future/open-science/recommendation) became the first policy document to include OSH as a component of open science.\nThe recommendation considers open hardware as a pillar of scientific knowledge that should be open.\n\n<a href=\"https://unesdoc.unesco.org/ark:/48223/pf0000379949.locale=en\">\n    <img src=\"https://creativecommons.org/wp-content/uploads/2021/11/UNESCO-Open-Science-circle-768x979.png\" width=50% alt=\"Open science circle composed of 4 pieces: Open science infrastructures, Open engagement of societal actors, Open dialogue with other knowledge system, and Open scientific knowledge. This latter piece is linked to 5 bublles: Scientific publication, open research data, open educational resources, open source software and source code, and open hardware. Image from UNESCO.\">\n</a>\n\n\n## What is the source of open source hardware?\n\nLike open source software, the “source code” for open hardware is available for modification or enhancement by anyone.\nIn contrast to software, where the source is plain text code, the OSH source is more complex.\nOSH design information refers to:\nschematics, blueprints, logic designs, Computer Aided Design (CAD) drawings or files, and the like (see {ref}`rr-open-hardware-techdoc`).\nIt usually entails text, binary files and software.\n\nImportantly, OSH projects should share both raw and derived source files.\nFor instance, 3D object designs should be shared as print-ready files (.stl), but also as modifiable 3D objects (the format of these files will depend on the software used).\nIt is necessary to provide the raw files to enable modification, even if they can often only be opened in proprietary software, and their use requires specific skills.\nThe derived versions are used to build the hardware, but often are not suited for modification.\nUsers with access to the tools that can read and manipulate these raw source files can update and improve the physical device.\nIf they wish, they can proceed to share such modifications.\n\n\n\nAlthough OSH projects are diverse in their degree of \"openness\", best practices in OSH guide us to identify a core, minimum documentation that needs to be in place so others can study, modify, distribute, make or sell our hardware.\nWe will go through these various components in the following sections.\n\n\n## Types and phases of open source hardware\n\n```{figure} ../../../figures/open-hardware.*\n---\nheight: 500px\nname: open-hardware\nalt: 'Illustration showing the life cycle of an open hardware project in research, using seeds and gardening tools as an analogy. The figure shows a circle with six stages surrounding the open hardware logo and gardening tools (a fork, shears and watering can), going clockwise starting on the top. Stage 1 NEED: it represents a researcher thinking about a seed that represent an idea that would solve its problem. Stage 2: Prototyping: Three different seeds are represented, the last one has flowers and roots, which are labeled. This represents the action to try out or \"prototyping\" different tools to address the need. Stage 3: Selection/Demo: Next to gardening tools, the third prototype is represented as a schematic on a board and a researcher is writing notes. It represents a stage where a prototype can be selected for further development. Stage 4: Documentation: Several boards present separately the roots, the flower and a fork, Six researchers are writing notes about the boards. This represent the inclusion of, these design choices and criteria in the project documentation, so others can follow and learn from the design process. Stage 5: Publishing: An actor is throwing seeds out of a window, another person is receiving the seeds with open arms; on the top we can see three square with labels on it: Reuse, Replicate, Reproduce. This represents the moment a researcher shares openly the designs and documentation of the new device, which can be reused, replicated or reproduce by others to better understand how data was produced. Stage 6: Cultivate ecosystem of open knowledge: A watering can pour water on five plants that are in the soil, two people can be seen on the other side looking at the plants. This represents the hardware commons, the new piece of knowledge can become a building block for others to explore new research questions or scenarios, especially when work is invested in growing a community.'\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n\n\n\nOSH projects emerge as **a response to a concrete need**,  which is reflected in the project lifecycle.\nFor example, you may need to process lots of samples, or to measure a parameter you were not considering before, or to take measurements outside of the lab.\nWith the analyzing of your need, your OSH project starts.\nIt is advisable to scope the project at this point, maybe looking for similar project one can join, instead of starting a new one.\nIt may indeed be useful to draw a roadmap, look and find future users, contributors and manufacturers (who may have complementary skills to yours), and decide for a license.\nIt is reasonable to invest quite a lot of time in looking for similar projects.\nOSH are often difficult to find and comprehend, but finding projects may save you a lot of time and hassle.\nIndeed, you may learn a lot about your needs, refine your ideas, and may even find collaborators while browsing existing OSH projects.\n\n\n\nYou may then test some ideas to address your particular need, which is a process called **prototyping**.\nAfter many iterations and testing, you will be able to select a prototype for further development.\nThe design that solves your need but is not yet complete nor ready to be replicated (usually because some parts are not well documented or requires a lot of manual adjustments) is called a **demonstrator**.\nWhen the design and documentation are polished and are ready to be used by hardware producers, the hardware is usually labeled as a **market-ready product**.\n\nWhile many people start generating **documentation** and share their design online at the demonstrator stage, open science enthusiasts advise being open from the beginning of the description of needs phase.\n\n\nThere are different degrees for how open an OSH project can be {cite:ps}`Bonvoisin2018`, but every step in this direction is welcome and an opportunity to contribute to better research and open new career paths.\nDesigns that are well-documented and offer a solution to a concrete problem can be easily **reused** by others.\nThey may **replicate** your design exactly to test it, or **reproduce** it to adapt it to their particular need.\nIt is worth thinking about your future self as one of the project collaborators when balancing the resources used in opening and documenting an OSH project, and the resources used to develop the hardware further.\n\n\nIn order to make your project more open, one can work on several aspects of open source, which are outlined in the following sections.\n\n\n\n\n# Why should you use or develop open source hardware?\n\n```{figure} ../../../figures/why-open-hardware.*\n---\nheight: 500px\nname: why-open-hardware\nalt: 'Illustration showing the benefits of using Open Science Hardware for Research and for researchers. On top, the figure shows a cycle divided in two parts, on the bottom, there is a person with short hair surrounded by a microscope, a computer and electronic elements. In its hand, it has a pile of paper lebelled “how to”, which represents the hardware documentation. The lower half circle is labelled “Science” and is surrounded with several half full bechers. Inside the half circle one can read four bullet points: Quality, Reproducibility, Inclusiveness, and Sustainability. The upper half circle is labelled “YOU”, it is surrounded by one person with goggles and earrings. Inside the half circle one can read four bullet points: Flexibility and speed, Price, Control, and Visibility., It represents the benefits of the Open Hardware practice for the individual researcher. These include greater flexibility and speed, as experimental set ups can easily be modified without depending on vendors. Another benefit is price, as open science hardware is today less expensive than available proprietary options. Control is another benefit for the individual researcher, as new features can be included, others removed and set ups completely customized beyond what is established by a third party vendor. Finally, individual researchers gain visibility when they develop their hardware work open, increasing the impact of their work'\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n## For you\n\nPeople develop and share OSH for a variety of reasons. Particularly in research, OSH provides very concrete advantages:\n\n- Flexibility and Speed: You can quickly customize and combine open designs to test new research questions in an accessible way, instead of depending on vendors, their timelines and bureaucracy.\n\n- Simplicity: As OSH has a lower price tag than conventional equipment, it is much easier to obtain while bypassing the bureaucracy of contracting vendors.\n\n- Control: If a supplier goes out of business, users and/or third party companies have the information to keep systems running.\n\n- Visibility: Researchers and engineers developing OSH make their work more visible to more people.\n                   They also increase opportunities for networking and impact, especially in projects involving a community.\n\n- Education: By using open hardware, researchers pick up new skills and can better understand how a certain tool captures data on specific phenomena/events.\n\n\n> It is worth mentioning here that building and developing OSH may require specific knowledge and skills on one hand, and quite a lot of time, on the other hand.\n> Buying industrial hardware with the corresponding client support these companies offer may be cheaper, especially if you do not have enough technical support in house.\n\n\n## For science\n\n- Quality: To make science, we need research instruments; we also need to build on top of others' knowledge.\n                 A contributor might offer a totally novel solution to a design problem that would never occur to you; contributors may also catch errors that might have been  missed.\n\n- Reproducibility: OSH designs can be replicated, allowing for verification and reproduction of experiments and data.\n                              Moreover, users can have much better control on the calibration of their devices, boosting replicability even further.\n\n- Inclusiveness: OSH can make science possible where resources are scarce.\n                            Local adaptation and production of OSH helps reducing the impact of import restrictions and bureaucracies that obstaculise science.\n                            Also, more students may be able to interact with scientific tools in hands-on sessions, as the equipment is cheaper.\n\n- Sustainability: OSH means you have all the information for repairing and maintaining devices locally, extending the lifespan of the product and reducing waste.\n\n\nMany researchers who develop or use OSH for research also value OSH as an educational tool.\nWorking with OSH designs allows students and researchers to fully understand how a certain tool captures data on specific phenomena/events.\n\n\n\n\n\n# How to make hardware open source\n\n\nIn order to make your hardware reusable and modifiable by others, its source should be shared with an appropriate license.\nThis is usually done via specific online platforms (see {ref}`rr-open-hardware-platforms`.\nThe type and amount of shared content depends on the complexity of the OSH, and on the importance of the community aspects of the project.\n\nIn the following sections, you can find descriptions of the common types of content that you should consider sharing, such as project documentation, technical documentation, and community interactions.\nYou are not required to post or document them all, but the more you share, the more the community benefits, and the more it can give back.\n\n\nThere is a lot of crossover with files to include in open source software projects\n(see {ref}`rr-rdm-metadata-documentation`), and the community aspects that are common to any open source project are described elsewhere  (see {ref}`pd-overview-repro`)\n\n\n\n\n\n## Project documentation\n\nYour OSH project should at a minimum provide a license {ref}`rr-licensing-hardware` together with a README file with all the basic, general information a newcomer needs to get oriented.\nInclude a general description of the hardware’s identity and purpose, written as much as possible for a general audience.\nThat is, explain what the project is and what it is for, before you get into the technical details.\n\n\nOn top of what is mentioned in detail in the open source project documentation page ({ref}`pd-overview-repro`) for project plan, people involved, and contribution process,\nyou should specifically **think about your audience** when writing OSH documentation.\nIndeed,\nyour project might be reused by people with different skills, roles, objectives, and socio-economic and cultural environments.\nBecause of this it can be useful to create a **list of skills** that are required to build or use the hardware.\nSomeone trying to build it from scratch, for example, will require specific set of prior knowledge, skills, and tools.\nA different set is needed to perform maintenance tasks.\nAn end user operating the assembled project might require an entirely distinct skillset (and documentation).\n\n**Take particular care about safety instructions. OSH makers are not always formally trained engineers and may not be able to easily differentiate between dangerous and safe manipulations.**\n\nYour project documentation may also include a functional overview of the project's parts or modules, as well as a short description of the software needed to use the hardware.\nAlso give an overview of the state of the hardware, software and documentation (current state, ongoing development, and/or any future plans for the project), and other information you think may be useful for newcomers.\n\n\n<!--\n## ⚠️ (Sacha, Moritz, Nico M.) TODO next week (Sacha)\n\n:::info\n/// Nico: I've redacted the contents a bit. The table is hard to edit in this format. Let me paste the link again: https://docs.google.com/spreadsheets/d/1JYgMqKapGX7TDFkFo0ZeGXGMx-m2-svK-o4p6NKt1Ns/edit#gid=564457047\n:::\n\n| Documentation item | Audience | Content | Location |\n| -------- | -------- | -------- | -------- |\n|Project overview| General community| Project definition, scope, audience, licensing, and directions to more specialized documentation. Expectation management: state what information is missing and main caveats. | Front page, README.md|\n|Communication| General community| Links to communication channels: support platforms ( forum, issues at an online repository), online community platforms (for instance forums, chats, etc.), direct contact information, dates for joining in-person or online events. | Front page, README.md|\n|Contributions| General community| Description of the process of getting involved. List of possible contributions: donations, investments, beta testing, feature development, collaborations, reporting issues. | Contributions page, CONTRIBUTING.md|\n|Usage| Users| Intended usage instructions, limitations, other use cases. Troubleshooting. Links to learning resources, maintenance and assembly guides. | Usage guide|\n|Assembly| Manufacturers, Users | Complete description of: the assembly process, used parts, required knowledge, training, number of people, time, and tools. Links to learning resources. | Assembly guide|\n|Maintenance| Technical support, Users| Instructions for manintenance operations, stating frequency, tested replacement parts, alternatives, and the required skills. List of maintenance services and learning resources. | Maintenance guide|\n|Design | Developers, Contributors, Educators| Description of the overall design rationale. List of the main design choices and implications (functional compromises or other decisions). Minimal explanation of the working principles, and links to external learning resources. | Development page, DEVELOPMENT.md|\n|Technical contributions| Manufacturers, Developers, Technical support| Development roadmap, guidelines, core team and contributors, communication channels, version control system, related works. Description of the typical contribution process. Examples of (un)successful contribution processes. | Contributions page, CONTRIBUTING.md|\n|Development| Developers| Development tools (IDEs, EDA, or CAD software) and style guidelines. Setup for development and testing. Detailed overview of the hardware modules and software. Specifications of the internal and external hardware interfaces. Tutorials and examples of how to get started. | Development page, DEVELOPMENT.md|\n\n-->\n\n\n\n\n\n(rr-open-hardware-techdoc)=\n## Technical documents\n\nTechnical documents provide the source needed to study and replicate a hardware design.\nIn contrast to project documentation and community building, technical documents for OSH are quite specific, but can be considered analogous to what source code is for software.\nDepending on the project, technical documents may include technical drawings, images describing electronic schematics, computer-aided design ([CAD](https://en.wikipedia.org/wiki/Computer-aided_design)) files, or assembly instructions to replicate the design.\nA thoroughly documented project will have all types of documents.\nIt may also include code (firmware and software) necessary to run the hardware.\nThe source files (like CAD files) are best accompanied by textual and multi-medial documentation, such as guides for manufacturing, assembly, maintenance, and development.\n\nWe provide here a quite exhaustive list of documentation elements.\nYour project may not need all of them, but it is worth considering having at least minimal information for most of these elements:\n\n- A **context description** which may reflect project maturity, complexity, the intentions of authors on how it should be used, and technical specifications.\n  It may include standards compliance (the [DIN-SPEC](https://gitlab.com/OSEGermany/OHS-3105) standard for instance) and an estimation of the overall budget required and build time.\n\n- A **Bill of Materials** (BOM): A list or spreadsheet describing part numbers, putative suppliers, costs, and a short description.\n  Make it easy to tell which item in the bill of materials corresponds to which component in your design files: use matching reference designators in both places, provide a diagram indicating which part goes where, or otherwise explain the correspondence.\n\n- **Assembly instructions**. To help others make and modify your hardware design, you should provide instructions for going from your design files to the working physical hardware.\nIt is good to publish annotated photographs (or video) from multiple viewpoints and at various stages of assembly.\nIf you do not have photos, posting annotated 3D renderings of your design is a good alternative.\nEither way, it is good to provide captions or text that explain what is shown in each image and why it is useful.\n\n- **Manufacturing instructions**: The manufacturing process of parts that have been made for this project should be documented as well.\n    This is specially important if they are available for purchase from only a handful of small/medium businesses.\n\n- A **list of required tools** and associated settings, for both the software used for development and the machine tools for replication.\n\n- **Design files** with parts metadata, typically including the manufacturing process, the materials with dimensions, mass, and units.\nA functional overview of the project's parts/modules can also be included.\nIdeally, your OSH project would be designed using a free and open source software application, to maximize the ability of others to view and edit it.\nIt is essential to share these original design files, in both original and accessible ready-to-view formats.\nThe type of parts can also be mentioned with unambiguous reference, between, custom parts (developed as a result of this or another project), off-the-shelf parts (like screws) or (maybe proprietary) complex modules (for example, a single board computer).\n\n-  **Software and firmware**: You should share any code or firmware required to operate your hardware.\nThis will allow others to use it with their hardware or modify it along with their modifications to your hardware.\nDocument the process required to build your software, including links to any dependencies (for example, third-party libraries or tools).\nIn addition, it is helpful to provide an overview of the state of the software (for example, “stable” or “beta” or “barely-working hack”).\n\n- **Instructions for operation and maintenance**: Describe how hardware users should operate the hardware (for example how to calibrate and test it).\nIndicate any maintenance that should be done to secure a good functionality of the hardware.\n\n- **Repair and disposal**: Indicate where or how the hardware can be repaired, and indicate how to dispose or recycle the hardware, if it is beyond repair.\n\n> Note that producing documentation-quality pictures consistently requires adequate tools and setup.\n\n\n## Community documentation\n\n\nWhile open hardware communities are sometimes different than open software communities, the documentation useful to grow hardware communities are similar to those for a open source project, see the  {ref}`pd-overview-repro` chapter. You may want to refer to the {ref}`collaboration<cl>`  and {ref}`cl-new-community`  guide of The Turing Way book for a more detailed description of certain aspects such as practices, metrics, behaviors and observables that can be related to thriving communities.\n\nOSH communities come in all sizes and forms.\nThey often develop around people facing similar needs, who realise they will get \"something that none of [them] could have developed alone.\" ([Interview: White rabbit, by the Open make team, Javier Serrano and Amanda Diez Frenandez](https://www.openmake.de/blog/2022/10/20/2022-10-06-interview-white-rabbit/) .)\nWe should therefore consider that developing good quality hardware and making it open source already entails an important aspect of community building.\n\nIn the following section, we share some considerations about community building for OSH project.\n\n\n\n### Considerations for OSH community building\n\nWhile scoping your project, it is well advised to think about the different people who may engage with your OSH (see {ref}`cl-stakeholder-mapping`).\nDifferent OSH projects have included different partners at varying stages of their development.\nOn top of user and contributor roles that OSH have in common with open source software, local or global hardware manufacturers may become important partners of your project.\nYou may also think early about the people who will eventually have to maintain and repair the hardware.\nTo make it easier for them, it also helps to make your hardware designs modular (splitting your hardware in modules which may have alternative designs).\nAnother specificity of hardware may be the importance of the creation of replication tutorials, workshops, seminars, or training materials, which can impact the adoption of hardware designs.\nThis is particularly relevant if the OSH is meant to be produced in Do-It-Yourself environments or as a teaching opportunity.\n\n```{note}\nEngineering culture can still be a closed one, not very welcoming to newcomers from different backgrounds.\n\nIt is therefore particularly important to Valuing Diversity and Differences in OSH {ref}`cl-new-community-differences`\n\n```\n\nIt is important to decide whether, when and where you want to engage with, or build a community.\nMost OSH communities are local in comparison to open source software project.\nYou may not have the time or skills to build a community, and your project may not need a community to flourish.\nAlways be honest with your collaborators and yourself about what support they can expect.\nThe [GOSH forum](https://forum.openhardware.science) has been an enabler for finding collaborators for OSH and OSH-related projects.\n\n\n\n\n\n```{admonition} Learning from community roadblocks\n- It is better to keep an open attitude towards diversification and unstable features, and this does not need to be in conflict with the main project being conservative.\n- There should always be space for \"extensions\" and \"plugins\" to be seeded and grow in the same community as the main project.\n3rd-party plugins should be labeled as \"external and unsupported by mainline development\" but still encouraged.\n- It is good practice to build modular and extensible hardware, with documented interfaces, to be able to grow a developer community.\n- It is a bad idea to respond to a request for help with the following: \"It is 'open source', if you want that to happen, you are free to work on it in your own time\".\nBe honest of what you can do, but do not be a jerk.\n- If the upstream developers do not have time to write enough documentation, or do not have time to review pull requests, this fact should be stated to avoid generating false expectations.\n- Be ready to delegate (or create new spaces) if you are overwhelmed by a fast-growing community.\nOtherwise, small projects will stall, the community will be frustrated, and then become fragmented.\n```\n\n\n\n\n\n# Sharing open source hardware\n\nOne of the goals of making OSH is to share the documentation so others can reuse your project (build upon, improve, derive from).\nOnce a project is shared, it can be continuously developed and manintained.\n\n\nFor OSH to be effectively adopted, reused, and developed further, the hardware documentation and other relevant information needs to be shared in a way that is easily accessible at no cost.\nThe global open hardware community utilizes a variety of platforms and online resources to share their work and enable others to collborate on different projects.\nThe details on the some of the platforms used and their efficacy is discussed further in the following section {ref}`rr-open-hardware-platforms`.\n\n(rr-open-hardware-platforms)=\n## Platforms\n\nThe easiest way to share an open hardware project is by sharing it online.\nThere is no best platform or place to do this, as it depends on the specifics of your project.\nHowever, some platforms commonly used for OSH are [GitHub](https://github.com/), [GitLab](https://about.gitlab.com/), [Wikifactory](https://wikifactory.com/) and [hackaday.io](https://hackaday.io/).\nPlease refer to {ref}`cl-github-novice` for an introduction to GitHub and GitLab.\nSome hardware project have large files, and one may need to look for platforms and workflows allowing to work with big files (see {ref}`rr-vcs-data`).\n\n\n## Making hardware discoverable\n\n\nThere is (yet) no straightforward way to let others to know about your project online.\nHere we list some actions you may take in order to\nmake your project more visible, reach more people, and improve the chances of reproducibility:\n\n1. Use a commonly used platform; often they have a discovery page and people expect your project to be on such platforms.\n2. Use metadata to describe your project, apart from just your technical data it is also important to share the metadata of your project, for example a short disciption, a statement of the license, the context of your project.\nAdding a [Open-Know-How manifest](https://www.internetofproduction.org/openknowhow) yaml file may help.\n3. Refer to the guide for communication {ref}`cm-comms-overview` and make a presskit or media content for others to easily share your project on other blogs or websites.\n\n\nIn academia, researchers may also **publish** their hardware (usually at the demonstrator stage), as peer-reviewed articles and **archive** a version to generate a DOI.\n\n## Making hardware citable\n\nIn contrast to data and software, there is no recommendation for hardware citation yet.\nHowever, we think it is good practice to treat hardware citation similarly to other research outputs {ref}`cm-citable`.\nMaking open hardware citable is indeed useful for academic and research output.\nThe use of archives that can assign persistent identifiers (DOI) can help to guarantee specific versions/releases of the hardware project available over the long term.\nThough within the open hardware community this is not the practice, it would be beneficial to adopt going forward.\nFor research to be reproducible, long term archiving through a platform that is dedicated to it would be necessary.\n\n[Zenodo](https://zenodo.org/) is a good example of the type of archive that can issue a persistent identifier like a DOI.\nZenodo also has an integration with Github such that projects that are shared and developed there can be archived with ease and a DOI obtained for a specific version/release.\n\n\n## Open source hardware licencing\n\nA crucial step to making OSH open is by adding an open license.\nWithout an open license, others cannot legally use, copy, distribute, or modify that project.\nThe situation of hardware licensing is a bit more complex than for research outputs like software, as there are some cases where patent law and not copyright law will apply.\nAlso note that you may use different licenses for different part of the project.\n\nPlease refer to {ref}`rr-licensing` and {ref}`rr-licensing-hardware`.\n\nCommon OSH license are:\n\n- [TAPR](https://tapr.org/the-tapr-open-hardware-license/)\n- Similar to GNU GPL 3.0, [SOLDERPAD](http://solderpad.org/)\n- Similar to Apache License 2.0, [CERN-OHL 2](https://ohwr.org/project/cernohl/wikis/Documents/CERN-OHL-version-2) which comes as:\n   - CERN-OHL-S (Strongly reciprocal)\n   - CERN-OHL-W (Weakly reciprocal)\n   - CERN-OHL-P (Permissive).\n\n# References/glossary\n\n\nStandardisation of Practices in Open Source Hardware by {cite:ps}`Bonvoisin2018`\n\nThis Chapter of the book was created reusing the following documents:\n\n- Open Hardware Academy: https://www.openhardware.academy/03_Lessons.html\n- Open Hardware Makers: https://curriculum.openhardware.space/\n- UKRN primer on open science hardware\n"
  },
  {
    "path": "book/website/reproducible-research/open/open-notebooks.md",
    "content": "(rr-open-notebooks)=\n# Open Notebooks\n\n```{figure} ../../../figures/executable-notebooks.*\n---\nname: Executable Notebooks\nalt: \"Cartoon style with black lines and a light blue accent colour. Two people look at an easel chart depicting a project overview. Below them are the logos of github, Read the docs, jupyter book, and sphinx. Emanating from the project overview are a series of documents with bubbles showing that basing a project around an open executable notebook such as a jupyter book allows participants to: Understand the direction/ of the project, Track its progress, Enable diverse participation, Create transparency in outcomes, and Make auditing easier for organisers. At the end of the documents there is a globe covered in the speech bubbles of project participants.\"\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.8169292](https://doi.org/10.5281/zenodo.8169292).\n```\n\n{ref}`Electronic Lab Notebooks (ELNs)<rr-rdm-elns>` enable researchers to organize and store experimental procedures, protocols, plans, notes, data, and even unfiltered interpretations using their computer or mobile device.\nThey are a digital analogue to the paper notebook most researchers keep.\nELNs can offer several advantages over the traditional paper notebook in documenting research during the active phase of a project, including; searchability within and across notebooks, secure storage with multiple redundancies, remote access to notebooks, and the ability to easily share notebooks among team members and collaborators.\n\nOpen notebook [{term}`def<Open Notebooks>`] research is simply the practice of making such notebooks openly available, usually online.\nSome researchers choose to keep their notebooks open from the very beginning of their projects.\nRather than wait months, or years, to share their research through journal publication as is the current practice, this allows researchers to post their experimental data and protocols online and in real-time.\nSharing research in this open and timely manner helps to reduce duplication of work, helps foster new collaborations, and cultivates a more open dialogue with others.\nIt also helps researchers avoid exploring dead ends and making mistakes that may have already been covered by their colleague but went unpublished because of lack of scientific interest.\n\nOpen notebooks have the further benefit of increasing the quality of scientific outputs by forcing researchers to be careful, thorough, and explicit.\nMaking research open has the added benefit of increasing the likelihood that any errors made in an investigation will be spotted quickly, instead of down the line.\nImmediate fixes will have much less impact on a research project, which will save research time, lab money, and pride.\n\nIdeally, every scientist should maintain an open notebook, which would encompass all aspects of their research, in real-time.\nHowever, fears about dealing with complete open access, conflicts with intellectual property and publications, and online data overload hamper this movement.\nTo combat this, practitioners encourage any form of open notebook research (\"make open what you can\") even if that means uploading some information for a project from many years ago that never saw the light of day.\n"
  },
  {
    "path": "book/website/reproducible-research/open/open-resources.md",
    "content": "(rr-open-resources)=\n# Resources\n\nTo learn more about recommended Open Research practices across disciplines, check out: [Open Research: Examples of good practice, and resources across disciplines](https://doi.org/10.31219/osf.io/3r8hb) {cite:ps}`Farran2025openpractices`.\n\n(rr-open-resources-learn)=\n## What to Learn Next\n\nIf you have not had a chance already, take a look at the chapter on {ref}`rr-vcs`, particularly the sections on GitHub in the latter half.\n\n[This](http://book.openingscience.org.s3-website-eu-west-1.amazonaws.com/) book on open science has a great deal of interesting information.\nFor information specific to open source software, [this](https://opensource.guide/) is a good place to look.\nFor more information on DOIs and citing resources look [here](http://doi.org).\n\nIf you want to take a look at an active open source project, this textbook *is* one.\nThe source can be found on GitHub [here](https://github.com/the-turing-way/the-turing-way), and for further details related to this project, you can take a look at the project [website](https://www.turing.ac.uk/research/research-projects/turing-way-handbook-reproducible-data-science).\n\n(rr-open-resources-references)=\n## References\n\n- [1.](https://www.fosteropenscience.eu/node/1420) **CC-BY 4.0**\n- [2.](https://open-science-training-handbook.gitbook.io/book/introduction) **CC 1.0**\n- [3.](https://www.fosteropenscience.eu/content/introduction-open-science-funders-introductory) **Attribution + Noncommercial - CC-BY-NC**\n- [4.](https://link.springer.com/chapter/10.1007/978-3-319-00026-8_2) **Creative Commons Attribution Noncommercial Licence**\n- [5.](https://elifesciences.org/articles/16800) **Attribution 4.0 International (CC BY 4.0)**\n- [6.](https://www.fosteropenscience.eu/content/introduction-open-science-funders-introductory) **Attribution + Noncommercial - CC-BY-NC**\n- [7.](http://book.openingscience.org.s3-website-eu-west-1.amazonaws.com/vision/open_research_data.html) **Creative Commons Attribution-NonCommercical**\n- [8.](http://opendatahandbook.org/guide/en/what-is-open-data/) **CC Attribution 4.0 International Licence**\n- [9.](https://opendatacharter.net/) **Creative Commons Attribution 4.0 International Licence**\n- [10.](http://book.openingscience.org.s3-website-eu-west-1.amazonaws.com/cases_recipes_howtos/making_data_citeable.html) **Creative Commons Attribution-NonCommercical**\n- [11.](http://book.openingscience.org.s3-website-eu-west-1.amazonaws.com/cases_recipes_howtos/challenges_of_open_data_in_medical_research.html) **Creative Commons Attribution-NonCommercical**\n- [12.](http://www.dcc.ac.uk/resources/how-guides/cite-datasets) **Creative Commons**\n- [13.](https://www.open-contracting.org/2016/09/19/diving-deeper-commercial-confidentiality/) **Creative Commons Attribution 4.0 International Licence**\n- [14.](https://ben.balter.com/2015/11/23/why-open-source/) **CC BY 3.0**\n- [15.](https://opensource.guide/starting-a-project/) **(CC BY 4.0)**\n- [16.](https://opensource.guide/) **(CC BY 4.0)**\n- [17.](https://opensource.com/resources/what-open-access) **Attribution-ShareAlike 4.0 International**\n- [18.](http://www.righttoresearch.org/learn/whyOA/index.shtml) **Creative Commons Attribution 3.0 Licence**\n- [19.](https://open-science-training-handbook.gitbook.io/book/open-science-basics/open-access-to-published-research-results) **CC0 1.0 Universal**\n- [20.](https://www.oercommons.org/about) **Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Licence**\n- [21.](https://libguides.ioe.ac.uk/oer)  **Creative CommonsAttribution-NonCommercial-ShareAlike 2.0 UK: England & Wales (CC BY-NC-SA 2.0 UK)**\n- [22.](https://opencontent.org/blog/archives/3221) **Creative Commons Attribution licence version 4.0**\n- [23.](https://opensource.com/resources/what-open-hardware) **CC BY-SA 4.0**\n- [24.](https://opensource.com/article/17/8/enterprise-open-source-advantages) **CC BY-SA 4.0**\n- [25.](https://www.oshwa.org/sharing-best-practices/) **Creative Commons Attribution-ShareAlike 4.0 International Licence**\n- [26.](https://openlabnotebooks.org/open-science-at-sgc/) **CC BY 4.0**\n- [27.](http://onsnetwork.org/) **Attribution 3.0 Unported (CC BY 3.0)**\n- [28.](https://libraries.mit.edu/data-management/store/electronic-lab-notebooks/) **CC BY-NC 2.0**\n- [29.](https://www.citizenscience.org/) **(CC BY 4.0)**\n\n(rr-open-resources-footnotes)=\n## Footnotes\n\n1. References by discipline: Agricultural studies (Kousha and Abdoli, 2010); Physics/astronomy (Gentil-Beccot et al., 2010; Harnad and Brody, 2004; Metcalfe, 2006); Medicine (Sahu et al., 2005; Xu et al., 2011); Computer science (Lawrence, 2001); Sociology/social sciences (Hajjem et al., 2006; Norris et al., 2008; Xu et al., 2011); Psychology (Hajjem et al., 2006); Political science (Hajjem et al., 2006; Antelman, 2004; Atchison and Bull, 2015); Management (Hajjem et al., 2006); Law (Donovan et al., 2015; Hajjem et al., 2006); Economics (Hajjem et al., 2006; McCabe and Snyder, 2015; Norris et al., 2008; Wohlrabe, 2014); Mathematics (Antelman, 2004; Davis and Fromerth, 2007; Norris et al., 2008); Health (Hajjem et al., 2006); Engineering (Antelman, 2004; Koler-Povh et al., 2014); Philosophy (Antelman, 2004); Education (Hajjem et al., 2006; Zawacki-Richter et al., 2010); Business (Hajjem et al., 2006; McCabe and Snyder, 2015); Communication studies (Zhang, 2006); Ecology (McCabe and Snyder, 2014; Norris et al., 2008); Biology (Frandsen, 2009b; Hajjem et al., 2006; McCabe and Snyder, 2014).\n"
  },
  {
    "path": "book/website/reproducible-research/open/open-scholarship.md",
    "content": "(rr-open-scholarship)=\n# Open Scholarship\n\nOpen research and its subcomponents fit under the umbrella of a broader concept - open scholarship.\n\n```{figure} ../../../figures/open-umbrella.*\n---\nheight: 500px\nname: open-umbrella\nalt: >\n  An umbrella, titled Open Scholarship, has elements of Open Research beneath it:\n  open data, open source software, open source hardware, open access, open notebooks, citizen science, equity, diversity, inclusion, and open educational resources.\n---\n  Open scholarship is an umbrella term that includes open data, open access, and other elements. \n```\n\n\n(rr-open-scholarship-equity)=\n## Equity, Diversity, Inclusion [{term}`def<Equitable, Diverse and Inclusive Practices>`]\n\nOpen scholarship means open to *everyone* without discrimination based on factors such as race, gender, sexual orientation, or any number of other factors.\nAs a community, we should undertake to ensure equitable opportunities for all.\nWe can go about that by deliberately fostering welcoming, inclusive cultures within our communities.\nFor example, reasonable accommodations should be made wherever possible to include community members with disabilities to enable them to participate fully, and this can be as simple as choosing colourblind-safe colour schemes when making graphs.\n\n(rr-open-scholarship-citizen)=\n## Citizen Science\n\nCitizen science [{term}`def<Citizen Science>`] is the involvement of the public in scientific research – whether community-driven research or global investigations.\nThe Oxford English Dictionary recently defined it as: \"scientific work undertaken by members of the general public, often in collaboration with or under the direction of professional scientists and scientific institutions\".\nCitizen science offers the power of science to everyone and the power of everyone to science.\n\nBy allowing members of the public to contribute to scientific research, citizen science helps engage and invest the broader world in science.\nIt also benefits researchers by offering human resources that would not be accessible otherwise.\nExamples of this include finding ways of folding molecules and [classifying](https://www.zooniverse.org/) different types of galaxies.\n\n(rr-open-scholarship-involvement)=\n## Patient and Public Involvement\n\nWhilst citizen science encompasses one way of contributing to scientific research, Patient and Public Involvement (PPI) is a far more specialized form of citizen science which is particularly useful when researching health or social issues.\n\nPPI is *not*:\n- _Participation_: Recruitment of participants (such as for a clinical trial or survey) to contribute data to a project.\n- _Engagement_: Dissemination, such as presenting at patient interest groups or writing a blog post.\n\nPPI *is*:\n- _Involvement_: patients and members of the public contribute at *all* stages of the research cycle.\n\nWhen incorporating PPI into research, researchers work *with* volunteers, rather than doing work *about* them.\nPPI volunteers are usually patients or members of the public with a particular interest in some area of research, which means that the topic is often very personal, and being involved in the research cycle can be an empowering experience.\nFor the researcher, PPI often generates unique and invaluable insights from the volunteers' expertise which the researcher cannot always predict.\n\nIt is a good idea to consider PPI very early in a project, ideally before any grant applications or submissions for ethical approval have been written.\nPPI volunteers can help researchers in many ways, such as the following:\n1. Generate or shape research questions.\n2. Contribute to, or review, study design.\n3. Help with grant applications or submissions to research ethics committees (particularly the lay summary).\n4. Collect data.\n5. Analyse data.\n6. Contribute to the manuscript and be listed as a co-author.\n7. Disseminate findings in plain English.\n\nOne of the most significant barriers to PPI is not knowing how to get started.\nThe UK National Institute for Health Research has its own site, [INVOLVE](https://www.invo.org.uk/), to help familiarise yourself with the foundations of PPI.\nAdditionally, charities related to your specific research field may be able to facilitate or support PPI; for example, [Cancer Research UK](https://www.cancerresearchuk.org/funding-for-researchers/patient-involvement-toolkit-for-researchers) and [Parkinson's UK](https://www.parkinsons.org.uk/research/patient-and-public-involvement-ppi) have formal guides in place that provide a comprehensive overview of PPI.\n"
  },
  {
    "path": "book/website/reproducible-research/open/open-source.md",
    "content": "(rr-open-source)=\n# Open Source Software\n\n(rr-open-source-whatis)=\n## What Is Open Source Software?\n\nWhen a software is open-source [{term}`def<Open Source Software>`], anybody can view, use, modify, and distribute its source code for any purpose.\nThese permissions are enforced through an {ref}`open-source licence<rr-licensing>`.\nOpen source is powerful because it lowers the barriers to adoption, allowing ideas to spread quickly.\nIn its most basic form, open-sourcing your software means putting your code online where it can be viewed and reused by others.\n\nMany of the most widely used research software is open source.\nPerhaps the paradigmatic example is the scikit-learn Python package for machine learning {cite:ps}`pedregosa2012ScikitLearn`, which, in the space of just over five years, has attracted over 500 unique contributors, 20,000 individual code contributions, and 2,500 article citations.\nProducing a comparable package using a traditional closed-source approach would likely not be feasible.\nIt would, at the very least, require a budget of tens of millions of dollars.\nWhile scikit-learn is an outlier, hundreds of other open-source packages that support much more domain-specific needs depend similarly on unsolicited community contributions; for example, the NIPY (neuroimaging in Python) group of projects in neuroimaging {cite:ps}`gorgolewski2016NIPY`).\nNotably, such contributions not only result in new functionality from which the broader community can benefit, but also regularly provide their respective authors with greater community recognition, and lead to new project and employment opportunities.\n\nResearchers that make use of open-source software often make changes to them, such as adding features they need for their research, or fixing bugs.\nThey can then contribute these improvements back to the main project so the wider community can take advantage of them.\n\n(rr-open-source-benefitsyou)=\n## How Running and Contributing to Open-Source Software Projects Benefits You\n\n- _Improve existing skills_: Whether it is coding, user interface design, graphic design, writing, or organizing, if you are looking for practice, there is a task for you on an open-source software project.\nFurther, open source necessitates cleaner, more maintainable code to enable collaboration between potentially thousands of people who may never meet.\nThis helps to build and maintain good coding habits.\nNot to be underestimated are the people skills you can develop on open source software projects.\nOpen source offers opportunities to practice leadership and management skills, such as resolving conflicts, organising teams of people, and prioritising work.\n- _Advance your career_: By definition, all of your open source work is public, and this presents opportunities:\n  - _Demonstrate technical ability_: Technical interviews traditionally involve working on a simulated problem that can be tackled in a set amount of time with little additional context.\n  Such simulations, by definition, are not real-world use cases, nor do they show what working with an applicant would be like.\n  Open source provides visibility into both how a candidate solves problems, and how they work with others.\n  You make a much more appealing employee if an employer can see the quality of your work and see you working with others over a long period rather than taking a chance on a single short, high-stress case which may not play to your strengths.\n  - _Reputation_: Becoming an active member of the open source community can gain you a favourable reputation which may bolster future job prospects.\n- _Meet people with similar interests_: Open source software projects with warm, welcoming communities keep people coming back for years, and many people form lifelong friendships through their participation in open source.\n- _Find mentors and teach others_: Working with others on a shared project means you will have to explain how you do things, as well as ask other people for help. The acts of learning and teaching can be a fulfilling activity for everyone involved.\n\n### Making Your Work Open Source\n\n- _Re-usability_: Making your work openly available for reuse makes it easier for others to incorporate into their research.\nIf you make your software citeable, via a DOI [{term}`def<Digital Object Identifier>`] for example, this can increase your citations.\n- _Contribution_: When you write closed source software, the only developers that can potentially detect, diagnose, triage, and resolve software bugs are those that have a copy of the code.\nIf your project is open, the number of potential contributing developers and thus the potential knowledge pool is orders of magnitude larger.\n- _Feedback_: Making your work open enables you to get feedback and improve your project in a way you may never have thought of alone.\n- _Accountability_: There is an argument that any software developed using government money should be open source by default; if the public has paid for its development they have a right to make use of it.\nIf your work is government-funded, making it open is a step you can take towards government openness and accountability.\n\n### Contributing to Others' Open Source Software Projects\n\n- _It is empowering to be able to make changes, even small ones_: You do not have to become a lifelong contributor to enjoy participating in open source.\nHave you ever seen a typo on a website, and wished someone would fix it?\nOn an open source software project, you can do just that.\nOpen source helps people feel agency over their lives and how they experience the world, and that in itself is gratifying.\n- _It is fun_:\nOpen source provides an endless, ever-changing set of Rubix cubes for you to solve on weekends. Just like puzzles, both crossword and jigsaw, open source provides bite-sized intellectual escapes.\n\n(rr-open-source-benefitsresearch)=\n## How Open Source Software Benefits Research\n\nThere are several ways in which open-source software benefits research:\n\n(rr-open-source-benefitsresearch-reusable)=\n### Reusable\n\nOpen source software projects allow researchers to take advantage of each others’ work.\nThis enables researchers to apply their efforts to high-value work.\nIt is sometimes said that “all the easy problems have already been solved”.\nBlogging, content management, and operating systems are all problems with established (and mainstream) open-source solutions, to name a few.\nWhile developers could spend their time reinventing wheels that the open-source community has already perfected, it is highly preferable to use the world’s best wheel, especially when that wheel comes at no cost to you.\nThis reduces duplication of effort and allows researchers to focus on yet-unsolved challenges.\n\nThe {ref}`rr-code-reuse` provides a more in-depth list of different aspects to consider for making your code more reusable, whether this is a small script or a library.\n\n(rr-open-source-benefitsresearch-checkable)=\n### Checkable\n\nOpen-source projects allow the broader research community to read and test each others' code.\nThis way, bugs can be found more quickly, and other researchers can validate results.\n\n(rr-open-source-benefitsresearch-collaborative)=\n### Collaborative\nWorking openly also allows any number of researchers to collaborate on projects that could not possibly be developed by single researchers/research groups.\nExamples include [Linux](https://www.linux.org/) operating systems, Python packages such as [scipy](https://www.scipy.org/) and [numpy](http://www.numpy.org/), and the machine learning library [TensorFlow](https://www.tensorflow.org/).\n\n(rr-open-source-run)=\n## How to Run Your Open Source Software Project\n\nYou can open source an idea, a work in progress, or after years of being closed source.\nAt the most basic level, all you need to do is put your code online somewhere that is likely to last a long time.\nYou can make your code citeable by assigning it a DOI [{term}`def<Digital Object Identifier>`] (as discussed in the section on {ref}`rr-rdm-sharing`).\nThis helps ensure that you get proper credit if people use or build upon your work.\n\nA popular place to make your code available is GitHub [{term}`def<Github>`] (see the chapter on {ref}`rr-vcs`).\nYou must include a license file stating that anyone has permission to use, copy, and modify your work. Without this, no one can legally use your work, and so it is not open source.\nThe {ref}`rr-licensing` chapter will help you to pick the best license for your project.\nThere are also a few other files you should include with your code, as described below.\n\n(rr-open-source-run-readme)=\n### Welcome Users by Adding Information to Your README\n\nYou should include a README [{term}`def<README>`] file where you include useful information about what the project is, how to use it, and how to contribute to it. Here is a list of the main things a README should include:\n\n- _The project name and what it is_: This will significantly help someone that comes across it to get an idea of the project. Include a few key points that describe the main features of the project and what features you are implementing.\nThis helps to quickly compare other projects with yours and gives an idea of why the project exists in the first place.\n- _Instructions on how to install the project_: The installer might be a collaborator, someone that comes across and is interested in the project, or even you - if you get a new machine and need to re-install your project.\nNevertheless, it is a total waste of your resources to figure out how to get started with the project from scratch.\nThe instructions should also include any prerequisites that will be needed to run the project.\nThe best thing you can do is to write up the installation instructions when you first do them yourself, and you will quickly save hours of work in the future.\n- _Instructions for how to run the code and any associated tests_: If you've been working on your project it may seem obvious how to run it, but this will likely not be the case for someone coming across it for the first time.\n- _Links to related material_\n- _List of authors/contributors to the project, possibly with contact information_\n- _Acknowledgements_\n\nSuppose you intend for other people to collaborate on your project (as opposed to just making your code available and considering it complete).\nIn that case, you should include Contributing Guidelines and most likely, a Code of Conduct.\n\n(rr-open-source-run-guidelines)=\n### Contributing Guidelines\n\nContributing Guidelines [{term}`def<Contributing Guidelines>`] tell your audience how to participate in your project. For example, you might include information on:\n\n- How to file a bug report\n- How to suggest a new feature\n- Your roadmap or vision for the project\n- How contributors should (or should not) get in touch with you\n\nUsing a warm, friendly tone and offering specific suggestions for contributions (such as writing documentation, or making a website) can go a long way in making newcomers feel welcomed and excited to participate.\nFor example, [Active Admin](https://activeadmin.info/index.html) starts its [contributing guide](https://github.com/activeadmin/activeadmin/blob/master/CONTRIBUTING.md) with: \"First off, thank you for considering contributing to Active Admin. It’s people like you that make Active Admin such a great tool.\"\n\nIn the earliest stages of your project, your Contributing Guidelines file can be simple.\nYou should always explain how to report bugs or file issues, and any technical requirements (like tests) to make a contribution.\nOver time, you might add other frequently asked questions here or in your readme file.\nWriting down this information means fewer people will ask you the same questions over and over again.\nIt is also a good idea to link to your contributing guidelines file from your README, so more people see it.\n\n(rr-open-source-run-conduct)=\n### Code of Conduct\n\nA Code of Conduct [{term}`def<Code of Conduct>`] helps set ground rules for behaviour for your project's participants.\nThis is especially valuable if you are launching an open-source project for a community or company.\nA Code of Conduct empowers you to facilitate healthy, constructive community behaviour, which will reduce your stress as a maintainer.\nIt communicates how you expect participants to behave and describes who these expectations apply to, when they apply, and what to do if a violation occurs.\n\nMuch like open source licences, there are also emerging standards for codes of conduct, so you do not have to write your own. The [Contributor Covenant](https://contributor-covenant.org/) is a drop-in Code of Conduct that is used by [over 40,000 open source projects](https://www.contributor-covenant.org/adopters). No matter which text you use, you should be prepared to enforce your Code of Conduct when necessary.\n\nKeep the file in your project's root directory, so it is easy to find, and link to it from your README.\n\n(rr-open-source-contribute)=\n## How to Contribute to Other's Open Source Software Projects\n\n(rr-open-source-contribute-anatomy)=\n### Anatomy of an Open Source Software Project\n\nEvery open source community is different. That said, many open source software projects follow a similar organizational structure.\nUnderstanding the different community roles and the overall process will help you get quickly oriented to any new project.\n\nA typical open source software project has the following types of people:\n\n- _Author_: The person/s or organization that created the project.\n- _Owner_: The person/s who has administrative ownership over the organization or repository (not always the same as the original author).\n- _Maintainers_: Contributors who are responsible for driving the vision and managing the organizational aspects of the project. They may also be authors and/or owners of the project.\n- _Contributors_: Everyone who has contributed something back to the project.\n- _Community Members_: People who use the project. They might be active in conversations or express their opinion on the project's direction.\n\nBigger projects may also have subcommittees or working groups focused on different tasks, such as tooling, triage, community moderation, and event organizing. Look on a project’s website for a “team” page, or in the repository for governance documentation, to find this information.\n\nA great many open source projects are hosted on GitHub (see the chapter on version control for more detail), which has facilities such as:\n\n- _Issue tracker_: Where people discuss issues related to the project.\n- _Pull requests_: Where people discuss and review changes that are in progress.\n- _Discussion forums or mailing lists_: Some projects may use these channels for conversational topics (for example, \"How do I...\" or \"What do you think about...\" instead of bug reports or feature requests). Others use the issue tracker for all conversations.\n- _Synchronous chat channel_: Some projects use chat channels (such as Slack or IRC) for casual conversation, collaboration, and quick exchanges.\n\n(rr-open-source-contribute-changes)=\n### Contribute Your Changes\n\nSay you have added a feature or fixed a bug and want to contribute this work to the main project.\n\n1. _Read the documentation_: The main project may have contributing guidelines or information in a README instructing prospective contributors on how to supply their changes.\n2. _Make sure your conventions match the style and structure of the main project_: For example, if all the variables in a project are named in some particular way yours should be too.\nConsistent conventions make it much easier for someone who has not seen your piece of the project before to understand it rather than having to figure out your particular set of conventions *and* what the code is doing.\nThe project's conventions may be outlined in its documentation, or may just be evident from inspection of the code itself.\n3. _Break your changes up into manageable, well-defined chunks_: For example, if you have added two separate features, do not submit them together.\nKeeping things \"clean\" in this way makes your work simpler to understand and review.\n4. _Test your changes_: If the project comes with tests, run them.\nMake sure you are testing against an up to date version of the project as it may have evolved considerably over time. Write specific tests for your changes and submit those too.\n5. _Do not just submit code, update relevant documentation too_: If your changes are incorporated, it will have to be updated. If you do not do it, someone else will have to.\n6. _Ask questions_: If there are things you are unsure about, there is no harm in asking. Many larger projects have dedicated forums or other venues for questions and discussion.\n7. _Be clear_: When you submit your changes, clearly describe the changes you have made, why you have made them, and how they have been implemented.\nThis makes it as easier for someone looking at your work and deciding whether to incorporate it into the main project to do so.\nIn the likely case the main project is hosted on GitHub, you should put this in the pull request (see the chapter {ref}`rr-vcs` for more details).\n\n(rr-open-source-contribute-looking)=\n### Looking for Projects to Contribute to and How to Contribute to Them\n\nYou do not need to overthink what exactly your first contribution will be, or how it will look.\nInstead, start by thinking about the projects you already use or want to use.\nThe projects you will actively contribute to are the ones you find yourself coming back to.\nWithin those projects, whenever you catch yourself thinking that something could be better or different, act on your instinct. You might scan a README and find a broken link or a typo.\nAlternatively, you could be a new user and notice something is broken, or find an issue that you think should be in the documentation.\nInstead of ignoring it and moving on, or asking someone else to fix it, see whether you can help out by pitching in. That is what open source is all about.\n\nYou can also use one of the following resources to help you discover and contribute to new projects:\n\n- [Open Source Friday](https://opensourcefriday.com/)\n- [First Timers Only](https://www.firsttimersonly.com/)\n- [CodeTriage](https://www.codetriage.com/)\n\nIf you are not sure how to start, there are a few other ways you can go about it, such as finding an open issue to tackle or asking if you can help write a new feature.\n\nA common misconception about contributing to open source is that you need to contribute code. In fact, it is often the other parts of a project that are most neglected or overlooked. You will do the project a huge favour by offering to pitch in with these types of contributions. You could:\n\n- Review code on other people's submissions.\n- Write and improve the project's documentation.\n- Curate a folder of examples showing how the project is used.\n- Answer questions about the project on, for example, Stack Overflow,\n- Keep things organized, for example, on GitHub by:\n    - Linking to duplicate issues.\n    - Suggesting new issue labels.\n    - Going through open issues and suggesting closing old ones.\n    - Ask clarifying questions on recently opened issues to move the discussion forward.\n\n(rr-open-source-closed)=\n## Closed Software\n\nWhat if you are working with people that do not use the open source model for their software?\nThis may initially seem an affront to all the principles discussed so far. However, there are usually very good reasons for why things are the way they are (for example legal, commercial, or security reasons).\nOften, it will still be possible to use and contribute, but the details of how might be different.\nThe kinds of practices used in 'closed' software are generally the same, and the concepts and tools you can learn about in the Turing Way still apply.\n\nSometimes, however, there might not be good reasons for the closed source approach.\nDifferent areas of research have different cultures which run against the grain of open principles and feel very frustrating.\nTackling this barrier can be very tricky as cultures can take years or decades to change.\n\nWorking with closed software can offer both opportunities and threats to your research.\nIn all cases, understanding and respecting other's perspectives offers the greatest chances of success.\n"
  },
  {
    "path": "book/website/reproducible-research/open.md",
    "content": "(rr-open)=\n# Open Research\n\n(rr-open-prerequisites)=\n## Prerequisites\n\n| Prerequisite | Importance | Notes |\n| -------------|----------|------|\n| {ref}`rr-vcs` | Helpful | Experience with GitHub is particularly useful |\n\n\n```{figure} ../../figures/evolution-open-research.*\n---\nname: evolution-open-research-rr\nalt: This image shows a researcher evolving their research practices to move towards the era of open research. The image starts with the person looking anxious about engaging with open science, slowly they take a few steps, feel comfortable about sharing their work, and finally start to collaborate with others.\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n(rr-open-summary)=\n## Summary\n\nOpen research aims to transform research by making it more reproducible, transparent, reusable, collaborative, accountable, and accessible to society. It pushes for change in the way that research is carried out and disseminated by digital tools. One definition of open research, [as given by the Organisation for Economic Co-operation and Development (OECD)](https://www.fct.pt/dsi/docs/Making_Open_Science_a_Reality.pdf \"Making Open Science a Reality, OECD Science, Technology and Industry Policy Papers No. 25\"), is the practice of making \"the primary outputs of publicly funded research results – publications and the research data – publicly accessible in a digital format with no or minimal restriction.\" To achieve this openness in research, each element of the research process should:\n\n- _Be publicly available_: It is difficult to use and benefit from knowledge hidden behind barriers such as passwords and paywalls.\n- _Be reusable_: Research outputs need to be licensed appropriately, so that prospective users know any limitations on reuse.\n- _Be transparent_: With appropriate metadata to provide clear statements of how research output was produced and what it contains.\n\nSchematically, the research process has the following form: data are collected and then analysed (often using software). This process may involve the use of specialist hardware. The results of the research are then published. Throughout the process, it is good practice for researchers to document their work. This can happen in notebooks or other forms of documentation. For experimental studies, Electronic Lab Notebooks are common. Open research aims to make each of these elements open:\n\n- _Open Data_: Documenting and sharing research data openly for reuse.\n- _Open Source Software_: Documenting research code and routines, and making them freely accessible and available.\n- _Open Hardware_: Documenting designs, materials, and other relevant information related to hardware, and making them freely accessible and available.\n- _Open Access_: Making all published outputs freely accessible for maximum use and impact.\n- _Open Notebooks_: An emerging practice, documenting and sharing the experimental process of trial and error.\n\nSee the [Open Definition](https://opendefinition.org/) for a set of principles that define “openness” in relation to data and content. The above elements are expanded upon in this chapter.\n\nOpen scholarship [{term}`def<Open Scholarship>`] is a concept that extends open research further. It relates to making other aspects of scientific research open to the public, for example:\n\n- _Open educational resources_: Making educational resources publicly available to be re-used and modified.\n- _Equity, diversity, inclusion_: Ensuring scholarship is open to anyone without barriers based on factors such as race, background, gender, and sexual orientation.\n- _Citizen science_: The inclusion of members of the public in scientific research.\n\nThese elements are also discussed in detail in this chapter.\n\n(rr-open-useful)=\n## Motivation and Background\n\nThere are five main schools of thought motivating open practices to benefit research:\n\n| School                     | Belief               | Aim                                               |\n| -------------------------- | -------------------- | ------------------------------------------------- |\n| Infrastructure | Efficient research depends on the available tools and applications. | Creating openly available platforms, tools, and services for researchers. |\n| Pragmatic | Knowledge-creation could be more efficient if researchers worked together. | Opening up the process of knowledge creation. |\n| Measurement | Academic contributions today need alternative impact measurements. | Developing an alternative metric system for research impact. |\n| Democratic | The access to knowledge is unequally distributed. | Making knowledge freely available for everyone. |\n| Public | Research needs to be made accessible to the public. | Making research accessible for citizens. |\n\nOpen practices also benefit the researchers that propagate them.\nFor example, there is evidence {cite:t}`McKiernan2016Open` that open access articles are cited more often, as shown by the metastudy presented in the figure below.\n\n```{figure} ../../figures/open-access-citations.*\n---\nheight: 500px\nname: open-access-citations\nalt: A plot of the relative citation rate (OA divided by non-OA), in the x axis, for 19 different areas of knowledge, in the y axis. The areas of knowledge are organized from the highest to the lowest Relative Citation Rate in the following order - Agricultural Studies, Physics/Astronomy, Medicine, Computer Science, Sociology/Social Sciences, Psychology, Political Science, Management, Law, Economics, Mathematics, Health, Engineering, Philosophy, Education, Business, Communications Studies, Ecology, and Biology. The highest mean values are around 3.2 for Agricultural Studies, and the lowest are around 1.2 for Biology.\n---\nThe relative citation rate (OA: non-OA) in 19 fields of research. This rate is defined as the mean citation rate of OA articles divided by the mean citation rate of non-OA articles. Multiple points for the same discipline indicate different estimates from the same study or estimates from several studies. (See {cite:ps}`McKiernan2016Open`.)\n```\n\nAnother benefit of openness is that while research collaborations are essential to advancing knowledge, identifying and connecting with appropriate collaborators is not trivial. Open practices can make it easier for researchers to connect by increasing the discoverability and visibility of one's work, facilitating rapid access to novel data and software resources, and creating new opportunities to interact with and contribute to ongoing communal projects.\n\n***Chapter Tags**: This chapter is curated for the `Turing Data Study Group` (`turing-dsg`).*\n"
  },
  {
    "path": "book/website/reproducible-research/overview/overview-barriers.md",
    "content": "(rr-overview-barriers)=\n# Barriers to reproducibility\n\nSo far we have explained {ref}`what we mean<rr-overview-definitions>` by reproducible research and explained some of the {ref}`additional benefits<rr-overview-benefits>`.\n\nIn this section we cover some of the (real and perceived) barriers you may face in making your work reproducible.\n\n```{figure} ../../../figures/barriers-reproducibility.*\n---\nwidth: 500px\nname: reproducibility-barriers\nalt: Slide from the presentation showing the different barriers to reproducibility. The text in the center says 'Barriers to reproducible research' and the following barriers are arranged clockwise around the slide - Is not considered for promotion, Held to a higher standard than others, Publication bias towards novel findings, Plead the 5th, Takes time, Support additional users, Requires additional skills.\n---\nA slide outlining some of the barriers to reproducible research from Kirstie Whitaker's [talk about _The Turing Way_](https://youtu.be/wZeoZaIV0VE?t=312) at [csv,conf,v4](https://csvconf.com/2019) in May 2019.\nUsed under a CC-BY 4.0 license.\nDOI: [10.5281/zenodo.2669547](https://doi.org/10.5281/zenodo.2669547).\n```\n\nThis chapter outlines some of those barriers, and a few suggestions to get around them.\nThe barriers to reproducible research can be described in three main groups.\nThe first, and hardest to overcome are those relating to the current incentive structure in academic research: {ref}`Limited incentives to give evidence against yourself<rr-overview-barriers-incentives>` (or \"Plead the fifth\"), the known {ref}`publication bias towards novel findings<rr-overview-barriers-publication>`, the fact that reproducible or open research may be {ref}`held to higher standards than others<rr-overview-barriers-standards>`, and that all this effort is {ref}`not considered for promotion<rr-overview-barriers-promotion>`.\nThen there are the technical and theoretical challenges of working with {ref}`big data and complex computational infrastructure<rr-overview-barriers-infrastructure>` and remembering that {ref}`being reproducible does not mean the answer is right<rr-overview-barriers-notright>`.\nWe finish with three barriers considering the pressures on individual data scientists: that this work can be perceived to {ref}`take extra time<rr-overview-barriers-time>`, that you may be required to {ref}`support additional users<rr-overview-barriers-support>` (spoiler: you aren't!), and that you and members of your team might {ref}`require additional skills<rr-overview-barriers-skills>`.\nThe good news is that helping you learn those skills is exactly what _The Turing Way_ is here for!\n\n(rr-overview-barriers-incentives)=\n## Limited incentives to give evidence against yourself\n\nThe [Fifth Amendment](https://en.wikipedia.org/wiki/Fifth_Amendment_to_the_United_States_Constitution) to the United States Constitution includes a clause that no one \"shall be compelled in any criminal case to be a witness against themselves\".\n(Edited to gender-neutral language.)\nTo \"plead the fifth\" means that someone chooses not to give evidence that there might have been something wrong in their past behaviour.\nThey have the right to remain silent.\n\nWe know that no one wants to incriminate themselves, and also that no one is infallible.\nPutting your code and data online can be very revealing and intimidating, and it is part of the human condition to be nervous of being judged by others.\nAlthough there is no _law_ governing the communication of reproducible research - unless you commit explicit fraud in your work - sharing errors that you find in your work is heavily disincentivised.\n\n```{figure} ../../../figures/make-ok-to-be-human.*\n---\nheight: 500px\nname: make-ok-to-be-human\nalt: A cartoon of a woman holding a folder of files and looking worried. Thought bubble says, If I share my data people might find mistakes. The caption on the images reads Need to make it ok to be human.\n---\nAn illustration of the \"plead the fifth\" barrier where our current culture disincentivises acknowledging and correcting mistakes.\nIllustration by The Ludic Group LLP from Kirstie Whitaker's keynote presentation at Scientific Data in 2017.\nUsed under a CC-BY 4.0 license.\nDOI: [10.6084/m9.figshare.5577340.v1](https://doi.org/10.6084/m9.figshare.5577340.v1).\n```\n\nGiving evidence against yourself, particularly if you find mistakes in published material, is difficult and stressful.\nBut we need to balance that individual cost against the fact that releasing code can help other researchers provide feedback, learn and may help them in their research.\nIn fact, you will almost certainly find that publishing your code and data documentation motivates you to conduct your analyses to a higher standard.\nBeing careful about what you write down, and documenting your decisions, can also help generate new ideas for yourself and for others.\n\nMost importantly, we need to move away from a culture where publishing nothing is safer than publishing _something_.\n_The Turing Way_ is here to help you take little steps towards being more reproducible as your career progresses.\nWe don't want anyone to feel alone, or \"not good enough\" as they start and continue their open research journey.\n\n(rr-overview-barriers-publication)=\n## Publication bias towards novel findings\n\nNovel results are not necessarily accurate or interesting but they are rewarded in the academic world!\nPapers that do not find statistically significant relationships are hard to publish, particularly if the results *do not* reproduce previously published findings.\n(That includes statistically significant findings that go in the opposite direction to already published work.)\nSimilarly, an article might be less likely to be accepted to a journal or a conference if it successfully reproduces already-published results instead of producing a new set.\nThere's a good chance that reviewers will say \"we already know this\" and reject the submission.\n\nThe bias towards novelty in data science means many researchers are disincentivised from doing the work to document, test and share their code and data.\nJohn Ioannidis published an influential paper in 2005 titled \"Why Most Published Research Findings Are False\" {cite:ps}`Ioannidis2005False` which discusses the many factors that contribute to publication bias.\nGiven these biases, it is very likely that there is a lot of duplicated work in data science.\nToo many different researchers are asking the same question, not getting the answer they expect or want, and then not telling anyone what they have found.\n\nThis barrier is not specific to computational reproducibility as we define it in _The Turing Way_.\nHowever, it is a major cultural barrier to {ref}`transparent communication<cm>`, and affects {ref}`project design<pd>`.\n_The Turing Way_ community are advocating in all the places we are able, for the systemic culture change that is required to dismantle the current publication and academic credit biases towards novelty over rigour.\n\n(rr-overview-barriers-standards)=\n## Held to higher standards than others\n\nA researcher who makes their work reproducible by sharing their code and data may be held to a higher standard than other researchers.\nIf authors share nothing at all, then all readers of a manuscript or conference paper can do is trust (or not trust) the results.\n\nIf code and data are available, peer reviewers may go looking for differences in the implementation.\nThey may come back with new ideas on ways to analyse the data because they have been able to experiment with the work.\nThere is a risk that they then require additional changes from the authors of the submitted manuscript before it is accepted for peer review.\n\nAs we described in the {ref}`\"Plead the Fifth\"<rr-overview-barriers-incentives>` section above, the solution to this challenge is to align career incentives so that doing what is best for _science_ also benefits the individuals involved.\n\n(rr-overview-barriers-promotion)=\n## Not considered for promotion\n\nIn the current academic system, a primary consideration for promotion is the proven ability to be awarded grants and recruit students.\nBoth funding bodies and prospective students value novelty and this behaviour is reflected in preferentially rewarding papers with a high [journal impact factor](https://en.wikipedia.org/wiki/Impact_factor).\nIt is likely part of the human condition to be motivated by things that are new or surprising, but as {ref}`discussed above<rr-overview-barriers-publication>`, this bias towards novelty causes a systematic publication bias.\n\nMore broadly, the promotion system in academia tends to reward individuals who have shown themselves to be different from others in their field.\nThat means sharing code and data to make it easy for \"competitors\" to do the same work ends up being discouraged by promotion and funding selection panels.\nA good example of this bias is the Nobel Prize award which only goes to a small number of researchers each year, and as such [\"overlooks many of its important contributors\"](https://www.theatlantic.com/science/archive/2017/10/the-absurdity-of-the-nobel-prizes-in-science/541863/) (Ed Yong, The Atlantic, 2017).\nOne of the goals of _The Turing Way_ is to draw attention to the misalignment of the tenure and promotion process with collaborative and reproducible data science.\n\n(rr-overview-barriers-infrastructure)=\n## Big data and complex computational infrastructure\n\nBig data is conceptualised in different ways by different researchers.\n\"Big\" data may be complex, come from a variety of data sources, is large in storage volume and/or be streamed at very high temporal resolution.\nAlthough there are ways to set random seeds and take snapshots of a dataset at a particular moment in time, it can be difficult to have identical data across different runs of an analysis pipeline.\nThis is particularly relevant in the context of tools for parallel computing.\nFor example, some data such as flight tracking or internet traffic is so big that it can not be stored and must be processed as it is streamed in real time.\n\nA more common challenge for \"big data\" researchers is the variability of software performance across operating systems and how quickly the tools change over time.\nAn almost constantly changing ecosystem of data science technologies is available, which means reproducing results in the future is highly variable and dependent on using perfectly backwards compatible tools as they develop.\nVery often the results of statistical tests will vary depending on the configuration of the infrastructure that was used in each of the experiments, making it very hard to independently reproduce a result.\nExperiments are often dependent on random initialisation for iterative algorithms and not all software includes the ability to fix a pseudorandom number without limiting parallelisation capabilities (for example in Tensorflow).\nThese tools can require in depth technical skills which are not widely available to data scientists.\nThe [Apache Hadoop](https://hadoop.apache.org/) framework, for instance, is extremely complex to deploy data science experiments without strong software and hardware engineering knowledge.\n\nEven \"standard\" high performance computing, can be difficult to set up to be perfectly reproducible, particularly across different cloud computing providers or institutional configurations.\n_The Turing Way_ contains chapters to help data scientists learn skills in {ref}`reproducible computational environments<rr-renv>` including {ref}`containers<rr-renv-containers>` such as docker and ways to {ref}`version control your software libraries<rr-renv-package>`.\nWe are always [open to more contributions](#ch-contributing) as the technology to support reproducible research in very large datasets or for complex modelling evolves.\n\n(rr-overview-barriers-notright)=\n## Being reproducible does not mean the answer is right\n\nBy making the code and data used to produce a result openly available to others, our results may be **reproduced** but mistakes made by the initial author can be carried through.\nGetting the same wrong answer each time is a step in the right direction, but still very much a **wrong** answer!\n\nThis barrier isn't really a _barrier_ to reproducible research as much as a caveat that investing time in reproducibility doesn't necessarily mean that you're doing better science.\nYou can consider computational reproducibility as being necessary but not sufficient for high quality research.\nA critical approach is needed, rather than naively using existing software or implementing statistical methods without understanding what they do.\nSee, for example, [a discussion](https://ryxcommar.com/2019/08/30/scikit-learns-defaults-are-wrong) in August 2019 about whether the default settings for Scikit-learn's implementation of logistic regression are misleading to new users.\nInterpretability and interoperability are required to properly evaluate the original research and to strengthen findings.\n\n(rr-overview-barriers-time)=\n## Takes time\n\nMaking an analysis reproducible takes time and effort, particularly at the start of the project.\nThis may include agreeing upon a {ref}`testing framework<rr-testing>`, setting up {ref}`version control<rr-vcs>` such as a Github repository and {ref}`continuous integration<rr-ci>`, and {ref}`managing data<rr-rdm>`.\nThroughout the project, time may be required to maintain the reproducible pipeline.\n\nTime may also be spent communicating with collaborators to agree on which parts of the project may be open source and when and how these outputs are shared.\nResearchers may find that they need to \"upskill\" their colleagues to allow the team to benefit from reproducibility tools such as git and GitHub, containers, Jupyter notebooks, or databases.\n\n```{figure} ../../../figures/help-you-of-the-future.*\n---\nwidth: 500px\nname: help-you-of-the-future\nalt: A cartoon of a woman passing a folder of documents back to herself. Speech bubble says You're mainly keeping records for you in the future.\n---\nAlthough making clear documentation may feel like it is taking a lot of time at the moment, you are helping yourself and your collaborators remember what you have done so it is easy to reuse the work or make changes in the future.\nIllustration by The Ludic Group LLP from Kirstie Whitaker's keynote presentation at Scientific Data in 2017.\nUsed under a CC-BY 4.0 license.\nDOI: [10.6084/m9.figshare.5577340.v1](https://doi.org/10.6084/m9.figshare.5577340.v1).\n```\n\nHowever, _The Turing Way_ community advocates that this time is more than made up for by the end of the project.\nTake as a thought experiment a reviewer asking for \"just one more analysis\" when the publication has been submitted to a journal.\nIn many cases, this request will come 6 to 12 months after the research team have worked with the raw data.\nIt can be very hard to go back in time to find the one part of the pipeline that the reviewer has asked you to change.\nIf the work is fully reproducible, including version-controlled data and figure generating code, this analysis will be very fast to run and incorporate into the final research output.\nThe analysis pipeline can be easily adapted as needed in response to co-author and reviewer requests.\nIt can also be easily reused for future research projects.\n\n(rr-overview-barriers-support)=\n## Support additional users\n\nMany people worry that by making their analysis reproducible they will be required to answer lots of questions from future users of their code.\nThese questions may cover software incompatibility across operating systems and the dependencies changing over time (see the {ref}`Big data and complex computational infrastructure<rr-overview-barriers-infrastructure>` barrier above).\nThey may also include questions about how to adjust the code for a different purpose.\n\nThis barrier is based in part on conflating \"reproducible\" with \"open\" research.\nThe _Turing Way_ {ref}`definition of \"reproducible\"<rr-overview-definitions>` doesn't require authors to support the expansion and reuse of the data and code beyond running the exact analyses that generate the published results in the accompanying manuscript.\n\nIn almost all cases, making code and data open source requires better documentation than a researcher would write for themselves.\nThis can feel like an additional barrier, although - as discussed in the previous section on reproducible research {ref}`taking extra time<rr-overview-barriers-time>` it is likely that the primary beneficiaries of well commented and tested code with detailed documentation are the research team - particularly the principal investigator of the project - themselves.\n\n(rr-overview-barriers-skills)=\n## Requires additional skills\n\nAs you can tell from the ever-growing number of chapters in _The Turing Way_, working reproducibly requires skills that aren't always taught in training programmes.\nYou - or someone in your team - might need to develop expertise in data engineering, research software engineering, technical writing for documentation or project management on GitHub.\nThat is a major barrier when the current incentive structures are not aligned with learning these skills (see the barriers on {ref}`plead the fifth<rr-overview-barriers-incentives>`, {ref}`publication bias towards novel findings<rr-overview-barriers-publication>`, {ref}`held to higher standards than others<rr-overview-barriers-standards>`, and {ref}`not considered for a promotion<rr-overview-barriers-promotion>`!)\nHowever, this is the primary barrier that we at _The Turing Way_ are working to dismantle with you.\nWe hope you enjoy learning these skills with us and that you'll help us to improve the book as you do.\n\n> \"A journey of a thousand miles begins with a single step\" (Chinese philosopher [Lao Tzu](https://en.wikipedia.org/wiki/A_journey_of_a_thousand_miles_begins_with_a_single_step)).\n\nWe hope that by working towards helping you learn some of these valuable skills we also dismantle some of the more structural barriers to reproducible research.\n\n## Further reading and additional resources\n\nYou can watch Kirstie Whitaker describe some of these barriers in [her talk about _The Turing Way_](https://youtu.be/wZeoZaIV0VE?t=312) at [csv,conf,v4](https://csvconf.com/2019) in May 2019.\nYou can use and reuse her slides under a CC-BY licence via Zenodo (doi: [10.5281/zenodo.2669547](https://doi.org/10.5281/zenodo.2669547)).\nThe section describing the slide below starts around 5 minutes into the video.\n"
  },
  {
    "path": "book/website/reproducible-research/overview/overview-benefit.md",
    "content": "(rr-overview-benefits)=\n# Added Advantages\n\nIn the {ref}`rr-overview-definitions` section, we discussed the different aspects of reproducible research that are beneficial for the scientific community.\nIn this chapter, we will share some less obvious aspects of working reproducibly for individual researchers and teams.\n\n\n```{figure} ../../../figures/reasons-reproducibility.*\n---\nname: reasons-reproducibility\nalt: > \n  Six different reasons for why we should care about working reproducibly shown as a large grey rectangular box with six different images. \n  Tracking Project history illustrated with a clock. \n  Collaborate and review illustrated with two intersecting magnifying glasses over a ladybug. \n  Avoid misinformation illustrated as a document of notes with a large tick on it. \n  Write paper efficiently illustrated as a notes document with three different versions on the left side merging into the main document. \n  Get credit fairly illustrated by an award rosette. \n  And finally ensure continuity illustrated by a triangle with arrows showing continued working going around and around.\n---\nAn illustration of reasons why we should care about working reproducibly.\n```\n\n**1. Track a complete history of your research**\n\nReproducible research must contain a complete history and narrative (also known as [Provenance](https://en.wikipedia.org/wiki/Provenance)) of the project planning and development process.\nThis includes information on the data, tools, methods, codes, and documentation used in the research project.\nBy storing a complete track-record of our work, we can ensure research sustainability, fair citation/acknowledgement, and usefulness of our and others' work in our research fields.\n\n**2. Facilitate collaboration and review process**\n\nBy designing reproducible workflows and sharing them with the different components of our research project, we can allow others to develop an in-depth understanding of our work.\nThis encourages them to review our methods, test our code, propose useful changes and make thoughtful contributions to develop our project further.\nReproducible workflows facilitate the peer review process tremendously by allowing reviewers access to the different parts of the projects that are necessary to validate the research outcomes.\n\n**3. Publish validated research and avoid misinformation**\n\nLack of reproducibility is one of the major factors that lead to paper retractions (source [Retraction Watch](https://retractionwatch.com/)).\nThe best-known analyses of scientific literature in psychology {cite:ps}`Begley2012` and cancer biology {cite:ps}`OpenScienceCollaboration2015Reproducibility` found the reproducibility rates of their research output of around 40% and 10%, respectively.\nBy working reproducibly, we can develop validated research work, avoid misinformation that can limit replicability of our work and publish accurate research outputs.\nThis aspect does not only support the validity of the current work, but any future studies that are based on reproducible research {cite:ps}`MozillaScienceLab`.\n\n**4. Write your papers, thesis and reports efficiently**\n\nWell documented analyses help us maintain easy access to all the results generated within a project that can be written up efficiently.\nIf working in a team, collaborators can easily get recognition in terms of authorship for their contributions. Furthermore, by availing the underlying dataset and methods we can easily comply with the highest-level journal guidelines.\n\n**5. Get credits for your work fairly**\n\nApplying reproducibility practices separately on different parts of the project such as data, independently executable codes and scripts, protocols, and reports allow other researchers to test and reuse our work in their research and brings fair recognition for our work.\nResearchers who publish their work with the underlying information, get cited more often as their research outcome can be broadly replicated and trusted.\nThis fair credit system encourages researchers to further maintain reproducibility practices in their work.\n\n**6. Ensure continuity of your work**\n\nBy following guidelines for reproducibility, we can easily communicate our work with different stakeholders such as our supervisors, funders, reviewers, students, and potential collaborators.\nThis aspect of reproducibility increases the usefulness of our research by enabling others to easily build on our results, and reuse our research materials {cite:ps}`MozillaScienceLab`.\nThis ensures the continuity of a research idea and can even find fresh applications in other contexts.\nProgress of such projects can easily be tracked and continued - either by other researchers, or yourself if you want to build on your own work after a longer period {cite:ps}`Markowetz2015`.\n\nTo learn about other benefits of working reproducibly on Open Research projects are covered in our {ref}`rr-open` chapter.\n"
  },
  {
    "path": "book/website/reproducible-research/overview/overview-definitions.md",
    "content": "(rr-overview-definitions)=\n# Definitions\n\nThe most common definition of reproducibility (and replication) was first noted by Claerbout and Karrenbach in 1992 {cite:ps}`ClaerboutKarrenbach1992Reproducibility` and has been used in computational science literature since then.\nAnother popular definition has been introduced in 2013 by the Association for Computing Machinery (ACM) {cite:ps}`Ivie2018SciComp`, which swapped the meaning of the terms 'reproducible' and 'replicable' compared to Claerbout and Karrenbach.\n\nThe following table contrasts both definitions {cite:ps}`Heroux2018Reproducibility`.\n\n| Term | Claerbout & Karrenbach | ACM |\n| -----|------------------------|-----|\n| Reproducible | Authors provide all the necessary data and the computer codes to run the analysis again, re-creating the results.| (Different team, different experimental setup.) The measurement can be obtained with stated precision by a different team, a different measuring system, in a different location on multiple trials. For computational experiments, this means that an independent group can obtain the same result using artifacts which they develop completely independently. |\n| Replicable |  A study that arrives at the same scientific findings as another study, collecting new data (possibly with different methods) and completing new analyses. | (Different team, same experimental setup.) The measurement can be obtained with stated precision by a different team using the same measurement procedure, the same measuring system, under the same operating conditions, in the same or a different location on multiple trials. For computational experiments, this means that an independent group can obtain the same result using the author's artifacts. |\n\nBarba (2018) {cite:ps}`Barba2018Reproducibility` conducted a detailed literature review on the usage of reproducible/replicable covering several disciplines.\nMost papers and disciplines use the terminology as defined by Claerbout and Karrenbach, whereas microbiology, immunology and computer science tend to follow the ACM use of reproducibility and replication.\nIn political science and economics literature, both terms are used interchangeably.\n\nIn addition to these high level definitions of reproducibility, some authors provide more detailed distinctions.\nVictoria Stodden {cite:ps}`Victoria2014Reproducibility`, a prominent scholar on this topic, has for example identified the following further distinctions:\n\n- _Computational reproducibility_: When detailed information is provided about code, software, hardware and implementation details.\n\n- _Empirical reproducibility_: When detailed information is provided about non-computational empirical scientific experiments and observations. In practice, this is enabled by making the data and details of how it was collected freely available.\n\n- _Statistical reproducibility_: When detailed information is provided, for example, about the choice of statistical tests, model parameters, and threshold values. This mostly relates to pre-registration of study design to prevent p-value hacking and other manipulations.\n\n(rr-overview-definitions-reproducibility)=\n## Table of Definitions for Reproducibility\n\nAt _The Turing Way_, we define **reproducible research** as work that can be independently recreated from the same data and the same code that the original team used.\nReproducible is distinct from replicable, robust and generalisable as described in the figure below.\n\n\n```{figure} ../../../figures/reproducible-matrix.*\n---\nname: reproducible-matrix\nalt: Kirstie's definition of reproducible research.\n---\nHow the Turing Way defines reproducible research\n```\n\nThe different dimensions of reproducible research described in the matrix above have the following definitions:\n\n- **Reproducible:** A result is reproducible when the _same_ analysis steps performed on the _same_ dataset consistently produces the _same_ answer.\n- **Replicable:** A result is replicable when the _same_ analysis performed on _different_ datasets produces qualitatively similar answers.\n- **Robust:** A result is robust when the _same_ dataset is subjected to _different_ analysis workflows to answer the same research question (for example one pipeline written in R and another written in Python) and a qualitatively similar or identical answer is produced.\n  Robust results show that the work is not dependent on the specificities of the programming language chosen to perform the analysis.\n- **Generalisable:** Combining replicable and robust findings allow us to form generalisable results.\n  Note that running an analysis on a different software implementation and with a different dataset does not provide _generalised_ results.\n  There will be many more steps to know how well the work applies to all the different aspects of the research question.\n  Generalisation is an important step towards understanding that the result is not dependent on a particular dataset nor a particular version of the analysis pipeline.\n\nMore information on these definitions can be found in \"Reproducibility vs. Replicability: A Brief History of a Confused Terminology\" by Hans E. Plesser {cite:ps}`Plesser2018Reproducibility`.\n\n```{figure} ../../../figures/reproducible-definition-grid.*\n---\nname: reproducible-definition-grid.*\nalt: \"Grid with the characteristics of: Reproducible; same data, same analysis. Replicable; different data, same analysis. Robust; same data, different analysis. And generalisable; different data, different analysis; Research\"\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n(rr-overview-reproducible)=\n## Reproducible But Not Open\n\n_The Turing Way_ recognises that some research will use sensitive data that cannot be shared and this handbook will provide guides on how your research can be reproducible without all parts necessarily being open.\n"
  },
  {
    "path": "book/website/reproducible-research/overview/overview-resources.md",
    "content": "(rr-overview-resources)=\n# Resources\nFor additional resources like videos and reference papers on reproducibility, see the {ref}`rr-overview-resources-reading` and {ref}`rr-overview-resources-addmaterial` sections.\n\n(rr-overview-resources-learn)=\n## What to Learn Next?\n{ref}`rr-open` would be a good chapter to read next.\nIf you want to start learning hands-on practices, we recommend reading the {ref}`rr-vcs` chapter next.\n\n(rr-overview-resources-reading)=\n## Further Reading\n\n* Baker, M. (2016). 1,500 scientists lift the lid on reproducibility. Nature, 533(7604), 452–454. https://doi.org/10.1038/533452a\n\n* Barba, L. (2017): Barba-group Reproducibility Syllabus. figshare. Paper. https://doi.org/10.6084/m9.figshare.4879928.v1\n\n* Piwowar, H. A., & Vision, T. J. (2013). Data reuse and the open data citation advantage. PeerJ, 1, e175. https://doi.org/10.7717/peerj.175\n\n* Whitaker, Kirstie (2018): Barriers to reproducible research (and how to overcome them). figshare. Paper. https://doi.org/10.6084/m9.figshare.7140050.v2\n\n(rr-overview-resources-addmaterial)=\n## Additional Material\n\n(rr-overview-resources-commandline)=\n### Using the command line\n\nWhile most of what this book is about does not require the use of the command line, it often actually makes things easier. \nWriting commands in the terminal, PowerShell, command-line, or command prompt provides an alternative means of interacting with the computer.\nIt offers several advantages and can be considered a beneficial approach for various reasons, including efficiency, independence on graphical user interfaces, flexibility, automation of tasks.\nOften, advanced tasks or options are only available as command line tools (for example advanced git, datalad. \nYou first need to know that linux and OSX use `bash` code natively, while the command line in windows uses `batch script`, which is a different language. \n\nList of some tools and training materials for using the command-line:\n- A [game to teach one the basics of using a POSIX (Linux, BSD, UNIX) terminal](https://gitlab.com/slackermedia/bashcrawl) \n- Carpentries lesson on [The Unix Shell](https://swcarpentry.github.io/shell-novice/)\n- An article on [Command Line Tutorial: Usage in Linux and macOS](https://www.taniarascia.com/how-to-use-the-command-line-for-apple-macos-and-linux/)\n- A lesson on [Introduction to the Bash Command Line](https://programminghistorian.org/en/lessons/intro-to-bash)\n\nSome nice-to-know tips:\n\n- When working on the terminal please make sure that you are in the correct folder (also called as directory):\n  - If you right click folders, you may have a function to open a terminal there\n  - use `cd ..` to go in the parent folder (`cd` is to move into folders, `..` means up)\n  - you can also type `cd ` (note the space) and then drag and drop a folder. This action would autocomplete the folder's path into the terminal.\n\n- The superpower developers use all the time and will never think you do not know about it: use the tab on your keyboard to get automatic text completion.\n\n\n\n### Useful Links\n\n#### **Reproducibility** \n\n* Markowetz, F. (2018). 5 selfish reasons to work reproducibly. Slides available at https://osf.io/a8wq4/. \nRecording from a talk at  Data Stewardship TU Delft\nin 2019. [https://youtu.be/yVT07Sukv9Q](https://youtu.be/yVT07Sukv9Q).\n\n* Leipzig, J (2020). Awesome Reproducible Research: A curated list of reproducible research case studies, projects, tutorials, and media. Github repo. https://github.com/leipzig/awesome-reproducible-research\n\n#### **Data Science**\n\n* _Data science: A guide for society_. Ask for Evidence. (2019). Retrieved October 26, 2021, from https://askforevidence.org/articles/data-science-a-guide-for-society.\n\n* Riley, E. (2019). Data Science Guide for Society. London; senseaboutscience.org.\n\n* The Open Data Institute. (2019). _Knowledge & opinion_. The ODI. Retrieved October 26, 2021, from https://theodi.org/article/data-ethics-canvas.\n"
  },
  {
    "path": "book/website/reproducible-research/overview.md",
    "content": "(rr-overview)=\n# Overview of Reproducible Research\n\n(rr-overview-prerequisites)=\n## Prerequisites\n\nNo previous knowledge needed.\n\n```{figure} ../../figures/research-cycle.*\n---\nname: research-cycle\nalt: The research process is represented as a perpetual cycle of generating research ideas, performing data planning and design, data collection, and data processing and analysis, publishing, preserving and hence, allowing reuse of data.\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n(rr-overview-summary)=\n## Summary\n\nScientific results and evidence are strengthened if those results can be replicated and confirmed by several independent researchers (see {ref}`definitions <rr-overview-definitions>`).\n\nWhen researchers employ transparency in their research - in other words, when they properly document and share the data and processes associated with their analyses - the broader research community is able to save valuable time when reproducing or building upon published results. \nOften, data or code from prior projects will be re-used by new researchers to verify old findings or develop new analyses. \n\nLearn about some of the other benefits of reproducible research in the {ref}`Added Advantages <rr-overview-benefits>` subchapter.\n\nMajor media outlets have [reported on](https://www.theguardian.com/science/2018/aug/27/attempt-to-replicate-major-social-scientific-findings-of-past-decade-fails) investigations showing that a significant percentage of scientific studies cannot be reproduced. This leads to other academics and society losing trust in scientific results {cite:ps}`baker2016reproducibility`. \n\nIn addition, \"negative results\" can be published easily, helping avoid other researchers wasting time repeating analyses that will not return the expected results {cite:ps}`Dirnagl2010bias`.\n\nFor further reading resources on reproducibility, please check out the [Resources](#rr-overview-resources) subchapter.\n\n***Chapter Tags**: This chapter is curated for the `Turing Data Study Group` (`turing-dsg`).*\n"
  },
  {
    "path": "book/website/reproducible-research/rdm/rdm-article.md",
    "content": "(rr-rdm-article)=\n# Sharing your data through a Data Article\n\nA Data Article (also known as a Data Paper/Note/Release, or Database article, [{term}`def<data article>`]) is a publication that is focused on the description of a dataset.\nIt uses the traditional journal article structure, but focuses on the data-collection and methodological aspects and generally not on the interpretation or discussion of the results.\n\n(rr-rdm-article-motivations)=\n##  Motivations For Sharing Data through a Data Article\n\nData articles are in line with the [](#rr-rdm-fair), especially since most publishers will encourage you to share the data through a data repository.\nThe benefit of a Data Article is that your output will be [peer reviewed](#cm-peer-review), something which is generally not the case for datasets that are archived on [data repositories](#rr-rdm-sharing).\nIt also facilitates recognition for datasets through research assessment procedures that are more traditionally focused on publication output.\nPublishing a data paper will therefore increase the visibility, credibility and usability of the data, as well as giving you credit as a data producer.\n\nYou can find out more in our [subchapter on publishing a data article](#cm-dif-articles-data) or you can read a blogpost on '[What a data paper could do for you](https://ekaroune.github.io/The-Open-Archaeobotanist/2021-01-30-what_a_data_paper_could_do_for_you/)'.\n\n(rr-rdm-article-options)=\n## Options to publish a Data Article\n\nBelow you can find some journals that publish data articles or papers.\nThe costs information was collected in February 2026. \n\nIf you are planning to publish an analysis of your published data, it may be worth checking with the journal that they wouldn't consider a data article on that dataset as 'prior publication' (see the [F1000Research (non-exhaustive) list of journals on 'prior publications'](https://f1000research.com/data-policies)). \n\n\n### Discipline agnostic\n\n| Article type|  Cost estimate |\n|    :----:   |    :----:     |\n| [Scientific Data](https://www.nature.com/sdata/)      | €1990 ([see USD](https://www.xe.com/currencyconverter/convert/?Amount=1990&From=EUR&To=USD))  |\n| [Data in Brief](https://www.journals.elsevier.com/data-in-brief)      | [USD 1330](https://www.journals.elsevier.com/data-in-brief)   |\n| [China Scientific Data](http://www.csdata.org/) | [RMB&nbsp;5000 ](https://www.sciengine.com/CSD/authorCenter?scroll=section_6#) ([see USD](https://www.xe.com/currencyconverter/convert/?Amount=5000&From=CNY&To=USD)) | \n| [Data](https://www.mdpi.com/journal/data)     | [CHF&nbsp;1600 ](https://www.mdpi.com/journal/data/apc) ([see USD](https://www.xe.com/currencyconverter/convert/?Amount=1600&From=CHF&To=USD)) |\n| [GigaScience](https://academic.oup.com/gigascience)      | [USD 2770](https://academic.oup.com/gigascience/pages/charges_licensing_and_self_archiving) |\n| [Gigabyte](https://gigabytejournal.com/information-for-authors)| [USD 535](https://gigabytejournal.com/open-access-and-apc#article-processing-charges) | \n| [F1000Research](https://think.f1000research.com/about-data-notes/)      | [USD 1003](https://f1000research.com/for-authors/article-processing-charges) |\n\n\n### Discipline specific\n| Discipline | Publisher/Journal   | Cost estimate |\n|    :----:  |    :----:   |    :----:     |\n| Agriculture | [Open Data Journal for Agricultural Research](https://odjar.org/) | ? |\n| Archaeology | [Journal of Open Archaeology Data](https://openarchaeologydata.metajnl.com/) | [£374](https://openarchaeologydata.metajnl.com/about/submissions#publication-fees) ([see USD](https://www.xe.com/currencyconverter/convert/?Amount=374&From=GBP&To=USD))  |\n| Archaeology | [Open Quaternary](https://www.openquaternary.com/about/) | [£1040](https://openquaternary.com/about/submissions#publication-fees) ([see USD](https://www.xe.com/currencyconverter/convert/?Amount=1040&From=GBP&To=USD)) | \n| Biodiversity| [Biodiversity Data Journal](https://bdj.pensoft.net/) | [€950](https://bdj.pensoft.net/about#CoreCharges) ([see USD](https://www.xe.com/currencyconverter/convert/?Amount=950&From=EUR&To=USD)) | \n| Biodiversity | [BioInvasions Records](https://www.reabic.net/journals/bir/Submission.aspx) | [~€900](https://www.reabic.net/journals/bir/Submission.aspx)  ([see USD](https://www.xe.com/currencyconverter/convert/?Amount=900&From=EUR&To=USD)) |\n| Biodiversity | [BioRisk](https://biorisk.pensoft.net/about#Author-Guidelines) | [€500](https://biorisk.pensoft.net/about#ArticleProcessingCharges)  ([see USD](https://www.xe.com/currencyconverter/convert/?Amount=500&From=EUR&To=USD)) |\n| Biodiversity | [Biota Colombiana](http://revistas.humboldt.org.co/index.php/biota/about/submissions#authorGuidelines) | 0 | \n| Biodiversity |[Check List](https://checklist.pensoft.net/about#Authors-Guidelines) | [€350](https://checklist.pensoft.net/about#ArticleProcessingCharges)  ([see USD](https://www.xe.com/currencyconverter/convert/?Amount=350&From=EUR&To=USD)) | \n| Biodiversity | [Mycokeys](https://mycokeys.pensoft.net/about#Author-Guidelines) | [variable](https://mycokeys.pensoft.net/about#Article-Processing-Charges)|\n| Biodiversity | [Nature Conservation](https://natureconservation.pensoft.net/about#Author-Guidelines) | [€1200](https://natureconservation.pensoft.net/about#ArticleProcessingCharges)  ([see USD](https://www.xe.com/currencyconverter/convert/?Amount=1200&From=EUR&To=USD)) | \n| Biodiversity | [NeoBiota](https://neobiota.pensoft.net/) | [€1400](https://neobiota.pensoft.net/about#ArticleProcessingCharges)  ([see USD](https://www.xe.com/currencyconverter/convert/?Amount=1400&From=EUR&To=USD)) | \n| Biodiversity | [PhytoKeys](https://phytokeys.pensoft.net/about#Author-Guidelines) |  [€1000](https://phytokeys.pensoft.net/about#ArticleProcessingCharges)  ([see USD](https://www.xe.com/currencyconverter/convert/?Amount=1000&From=EUR&To=USD)) |\n| Biodiversity | [ZooKeys](https://zookeys.pensoft.net/about#SubmissionGuidelines) | [€1000](https://zookeys.pensoft.net/about#ArticleProcessingCharges)  ([see USD](https://www.xe.com/currencyconverter/convert/?Amount=1000&From=EUR&To=USD)) | \n| Biodiversity | [Freshwater Metadata Journal](http://www.freshwaterjournal.eu/) | €0 | \n| Biology | [Open Journal of Bioresources](https://openbioresources.metajnl.com/) | [£350](https://openbioresources.metajnl.com/about#q13)  ([see USD](https://www.xe.com/currencyconverter/convert/?Amount=350&From=GBP&To=USD)) |\n| Biology (plant) | [BMC Plant Biology](https://bmcplantbiol.biomedcentral.com/submission-guidelines/preparing-your-manuscript/database-article) | [€2590](https://bmcplantbiol.biomedcentral.com/about)  ([see USD](https://www.xe.com/currencyconverter/convert/?Amount=2590&From=EUR&To=USD)) |\n| Biodiversity (forest)| [Annals of Forest Science](https://annforsci.biomedcentral.com/submission-guidelines/preparing-your-manuscript/data-paper) | [€1940](https://annforsci.biomedcentral.com/submission-guidelines/fees-and-funding) ([see USD](https://www.xe.com/currencyconverter/convert/?Amount=1940&From=EUR&To=USD))| \n| Botany | [Botanical Studies](https://as-botanicalstudies.springeropen.com/submission-guidelines/preparing-your-manuscript/database-article) | [€1890](https://as-botanicalstudies.springeropen.com/about)  ([see USD](https://www.xe.com/currencyconverter/convert/?Amount=1890&From=EUR&To=USD)) | \n| Crystallography | [IUCrData](https://iucrdata.iucr.org/x/index.html) | [USD 340](https://iucrdata.iucr.org/x/services/openaccess.html) |\n| Chemistry | [Journal of Cheminformatics](https://jcheminf.biomedcentral.com/submission-guidelines/preparing-your-manuscript/data-note) | [€1890](https://jcheminf.biomedcentral.com/about) ([see USD](https://www.xe.com/currencyconverter/convert/?Amount=1890&From=EUR&To=USD))|\n| Chemistry | [Chemical Data Collections](https://www.sciencedirect.com/journal/chemical-data-collections) | [USD 1660](https://www.elsevier.com/journals/chemical-data-collections/2405-8300/open-access-options) |\n| Chemistry | [Food Safety and Risk](https://foodsafetyandrisk.biomedcentral.com/) | [€1890](https://foodsafetyandrisk.biomedcentral.com/submission-guidelines/fees-and-funding) ([see USD](https://www.xe.com/currencyconverter/convert/?Amount=1089&From=EUR&To=USD) |\n| Chemistry | [Journal of Chemical and Engineering Data](https://pubs.acs.org/journal/jceaax) | USD 4500 |\n| Chemistry | [Journal of Physical and Chemical Reference Data](https://pubs.aip.org/aip/jpr) | [3500 USD](https://pubs.aip.org/aip/jpr/pages/charges) |\n| Computer Science| [Jaiio](https://www.sadio.org.ar/jaiio/)| [variable](https://50jaiio.sadio.org.ar/aranceles) | \n| Ecology | [Ecological Research](http://www.esj.ne.jp/er/datapaper.html) | [USD 3150 ](https://esj-journals.onlinelibrary.wiley.com/hub/journal/14401703/homepage/open-access) |\n| Ecology | [Ecology](https://esajournals.onlinelibrary.wiley.com/hub/journal/19399170/resources/types-of-contributions-ecy#Data_Papers) | [USD 4170](https://esajournals.onlinelibrary.wiley.com/hub/journal/19399170/open-access) | \n| Ecology | [Global Ecology and Biogeography](https://onlinelibrary.wiley.com/page/journal/14668238/homepage/forauthors.html) | [USD 5250](https://onlinelibrary.wiley.com/page/journal/14668238/homepage/fundedaccess.html) | \n| Earth Sciences| [Geoscience Data Journal](https://rmets-onlinelibrary-wiley-com.tudelft.idm.oclc.org/journal/20496060)      | [2520 USD](https://rmets.onlinelibrary.wiley.com/hub/journal/20496060/article-publication-charge)   |\n| Earth Sciences| [Earth System Science Data](https://www.earth-system-science-data.net/)    |  €1400 ([see USD](https://www.xe.com/currencyconverter/convert/?Amount=1400&From=EUR&To=USD)   |\n| Earth Sciences| [Big Earth Data](https://www.tandfonline.com/action/authorSubmission?show=instructions&journalCode=tbed20) | [USD 815](https://www.tandfonline.com/action/authorSubmission?show=instructions&journalCode=tbed20&#apc) |\n| Ecology | [BMC Ecology and Evolution](https://bmcecolevol.biomedcentral.com/submission-guidelines/preparing-your-manuscript/database-article) | [USD 2990](https://preview-bmcecolevol.biomedcentral.com/submission-guidelines/fees-and-funding) | \n| Humanities | [Journal of Open Humanities Data](https://openhumanitiesdata.metajnl.com/about/submissions/)  | [£915](https://openhumanitiesdata.metajnl.com/about/submissions/) ([see USD](https://www.xe.com/currencyconverter/convert/?Amount=915&From=GBP&To=USD))  |\n| Humanities | [Research Data Journal for the Humanities and Social Sciences](https://researchdatajournal.org/)  | 0  |\n| Physics | [Nuclear Data Sheets](https://www.sciencedirect.com/journal/nuclear-data-sheets)  | [USD 3080](https://www.elsevier.com/journals/nuclear-data-sheets/0090-3752/open-access-options)  |\n| Psychology | [Journal of Open Psychology Data](https://openpsychologydata.metajnl.com/about/submissions/) | [£520](https://openpsychologydata.metajnl.com/about/submissions/) ([see USD](https://www.xe.com/currencyconverter/convert/?Amount=450&From=GBP&To=USD))  | \n| Psychology | [Journal of Cognition](https://www.journalofcognition.org/about/submissions/) | [€1150](https://www.journalofcognition.org/about/submissions/)  ([see USD](https://www.xe.com/currencyconverter/convert/?Amount=1150&From=EUR&To=USD)) |\n| Zoology | [Arxius de Miscel·lània Zoològica](http://amz.museucienciesjournals.cat/how-it-is-published/?lang=en) | [0](http://amz.museucienciesjournals.cat/editorial-policy/?lang=en) |\n\n"
  },
  {
    "path": "book/website/reproducible-research/rdm/rdm-care.md",
    "content": "(rr-rdm-care)=\n# CARE principles\nConcerns about secondary use of data and limited opportunities for benefit-sharing for Indigenous Peoples have led to the development of the CARE principles, which were published first in 2020 ([](https://doi.org/10.5334/dsj-2020-043)). The pervasive bias across data ecosystems, institutions and communities indicate the importance of addressing inequities at multiple levels. \n\n> \"‘CARE Principles for Indigenous Data Governance’ (Collective Benefit, Authority to Control, Responsibility, and Ethics) in consultation with Indigenous Peoples, scholars, non-profit organizations, and governments. The CARE Principles are people– and purpose-oriented, reflecting the crucial role of data in advancing innovation, governance, and self-determination among Indigenous Peoples.\" ([](https://doi.org/10.5334/dsj-2020-043))\n\nThe CARE Principles of Indigenous Data Sovereignty apply whenever you’re collecting data with or that belong to a particular community. CARE stands for **C**ollective benefit, **A**uthority to control, **R**esponsability, and **E**thics.\n\n**Collective Benefit**\n\nData must facilitate collective benefit to enable Indigenous People to achieve inclusive development and innovation, improve governance and citizen engagement, and realize equitable outcomes.\n\n**Authority to Control**\n\nRecognition of the rights of Indigenous communities to govern data.\n\nThis may also include consideration about the governance structure of the data repository and the location of the data servers.\n\n**Responsibility**\n\nThose working with Indigenous data have a responsibility to share how those data are used to support Indigenous Peoples’ self determination and collective benefit.\n\n**Ethics**\n\nIndigenous Peoples’ rights and well being should be the primary concern at all stages of the data life cycle and across the data ecosystem.\n\n```{figure} ../../../figures/care-principles.*\n---\nname: care-principles\nalt: >\n  Image in teal and grey scale showing the abbreviation CARE with all of the three subprinciples per letter. \n  In between the CARE letters there is a connection symbol which forms a cross and two smaller squares next to it.\n  C stands for Collective Benefit. \n  C1 is for inclusive development and innovation.\n  C2 is for improvement governance and citizen engagement.\n  C3 is for equitable outcomes.\n  A stands for Authority to Control. \n  A1 - recognizing rights and interests.\n  A2 - data for governance\n  A3 - Governance of data\n  R stands for responsibility.\n  R1 for positive relationships\n  R2 for expanding capability and capacity.\n  R3 for Indigenous languages and worldviews\n  E stands for ethics.\n  E1 for minimizing harm and maximizing benefit.\n  E2 for justice.\n  E3 for future use. \n---\nThe CARE principles, figure by [](https://doi.org/10.5334/dsj-2020-043).\n```\n\nThe [Global Indigenous Data Alliance](https://www.gida-global.org/care) has made further resources available and translated the CARE principles in other languages. \n\nThe genomic ([](https://doi.org/10.3389/fgene.2022.1052620)), as well as the ecology/biodiversity ([](https://doi.org/10.1038/s41559-023-02161-2)), research communities have worked on a framework for enhancing ethical genomic research with Indigenous communities.\n\nWhenever you are handling data that belongs to an Indigenous or other under-served community, the CARE principles are more important than the benefits of [](#rr-open-data).\n\n(rr-rdm-care-tklabels)=\n## Labels for Traditional Knowledge (TK label)\nThe majority of data and software licenses does not incorporate Indigenous considerations of data sharing. \nThe [Traditional Knowledge (TK) Labels](https://localcontexts.org/labels/traditional-knowledge-labels/) are an initiative for Indigenous communities and local organizations that aims to address this shortcoming. \nTK Labels allow communities to express local and specific conditions for sharing and engaging in future research and relationships in ways that are consistent with already existing community rules, governance and protocols for using, sharing and circulating knowledge and data. \n\n(rr-rdm-care-information)=\n## More information\n- [Indigenous Data Sovereignty toolkit](https://nwac-afac.ca/assets-documents/Indigenous-Data-Sovereignty-Toolkit-EN.pdf) by the Native Women's Association of Canada\n- [The Dissonance between Scientific Altruism... - Joseph M Yracheta - BOSC](https://www.youtube.com/watch?v=c7CKpbW1RoQ)\n- [Working with the CARE principles: operationalising Indigenous data governance](https://www.adalovelaceinstitute.org/blog/care-principles-operationalising-indigenous-data-governance/)\n- [Responsible Datasets in Context](https://www.responsible-datasets-in-context.com/)\n- [Selected Readings on Indigenous Data Governance](https://medium.com/data-stewards-network/selected-readings-on-indigenous-data-governance-2026-update-ab7e66fb579d) by the Data Stewards Network (DSN)\n"
  },
  {
    "path": "book/website/reproducible-research/rdm/rdm-checklist.md",
    "content": "(rr-rdm-checklist)=\n# Checklist\nBelow follow two checklists, one for individual researchers and one for research teams:\n\n# Individual Researcher Checklist\n\n- Do not touch the raw data. \nBack it up somewhere reasonable and keep a read-only copy (see [Data Storage and Organisation](#rr-rdm-storage)).\n\n- Set up a [](#rr-rdm-dmp) to decide how the data is managed. \nThis is especially relevant if you collect [sensitive data](#pd-sdp) and need to plan for consent for sharing!\n\n- Document everything and keep the documentation with the data (see [](#rr-rdm-metadata)) to ensure your data is reusable. \n\n- Try not to re-invent the wheel. \nBefore you start creating a new schema, storage format or naming protocol, try to find an existing tool: have a (quick) internet search or ask your colleagues (see [](#rr-rdm-metadata)).  \n\nSomething that is already being used is likely to be better in the long run.\n\n- Follow any procedures required by your research group, institute, or country (ethics, integrity codes, policies on data management/open science)\n\nSee also the [Harvard checklist](https://osf.io/593t6). \n\n# Research Team Checklist: \nThis list is based on [Borghi and van Gulick 2022](https://doi.org/10.1162/99608f92.9497f68e) {cite:ps}`Borghi2022checklist`.\n\nDiscuss the checklist with your team!\n  \n- Every member of the research team is able to find and use the data, code, documentation and other materials related to this project (project's research materials).\n    - We will continue to do so ten years from now.\n    - Our documentation is maintained and reviewed regularly. \n    - The documentation describes the data management practices of the project and includes roles and responsibilities of individual team members      \n- We have established on/off boarding procedures.\n- Another researcher from outside the research group but in the same field would be able to find and use the project's research materials.\n- We have a standardised set of data management practices, including file naming conventions and folder structures (see [](#rr-rdm-storage)).\n- The data is stored and backed up on recommended data storage systems.\n- We reviewed all applicable policies (institution, funder, potential publisher).\n- We have read through and understand other relevant agreements, licenses, or other requirements.\n- We have sought out community standards and best practices related to our data.\n- We have set up a [](#rr-rdm-dmp) to help us decide what research objects will be made publicly available.   \n\n# Other Checklist resources\n- [Research Data Management Lifecycle Checklist](https://osf.io/pw7ed/files/d2pum)\n- [How FAIR are your data?](https://doi.org/10.5281/zenodo.5111307)\n"
  },
  {
    "path": "book/website/reproducible-research/rdm/rdm-cleaning.md",
    "content": "(rr-rdm-cleaning)=\n# Data Cleaning\n\nData cleaning is an important part of the RDM process. \nDuring data cleaning mistakes in the data collection and processing phase can be fixed. \nIn projects where data collection is not structured properly, data cleaning can take up a lot of time. \nSometimes, it may even be quicker to restart data collection in order to avoid a messy dataset. \n\nTherefore, it is important to think about your data collection strategy before collecting data: this can save you a lot of time. \nThis is especially important if several people are collecting data.\n\nIf your data is in the form of spreadsheet, you may want to check out our chapter on [](#rr-rdm-spreadsheets). \n\n(rr-rdm-cleaning-how)=\n# How to clean data?\nDuring data cleaning there are several steps to take into account:\n\n## 1. Backup Your Raw Data\n\nAlways save an untouched copy of your dataset before you begin! \nIf you make mistakes during the data cleaning process you can still go back to the original information. \nAll changes to data need to happen in one data file; if you use multiple versions it will be a mess to identify the correct/latest version to work in.\nIf it is important to keep track of multiple versions of the data, you can set up a version control strategy using [](#rr-vcs).\n\n## 2. Understand/Validate the Data\n\nData validation is a process used to determine if data are inaccurate, incomplete, or unreasonable ([](https://doi.org/10.15468/doc.jrgg-a190)).\n\nTo validate the data you can check if data are:\n\n**Complete**\n* Check for missing/duplicate cases, rows, and columns.\n\n**Accurate**\n* Check for invalid, non-unique, or missing study IDs.\n* Check for incorrect or inconsistent variables. \n* Check for incorrect inconsistent formatting.\n* Check missing values.\n\n**Reasonable**\n* Check if values are out of range or unexpected.\n\nCreating tables, plots, or calculating summaries and statistics are a helpful way to search for errors.\n\n## 3. Remove unnecessary or sensitive data, duplicates and consider outliers\n\nEach unnecessary entry can complicate your analyses and/or distort your findings.\nYou should carefully consider if your dataset contains any sensitive data or [](#pd-sdp-personal) that should not be shared. \nDelete draft or test entries and duplicates, after carefully reviewing if they are indeed test entries or duplicates. \nConsider unexpected data, such as unusually high or low values. \nThese could be data entry errors, but they may also be the most interesting findings! \nSum-to-total, range and validity checks can help you to find errors. \n\n## 4. Standardize entries\n\nAlign all variables, by for example writing all dates out in a similar manner, and keeping capitalisation consistent. \nFor example, \"Yes,” “yes,” and “Y” are treated by computers as separate responses. \nEnsure that all variables are labeled and used in a consistent manner across different data formats. \nUse clear [naming conventions](#rr-rdm-storage-conventions) for your files and folders.\n\n## 5. One variable is one data entry\n\nEach variable should only collect one piece of information (@Wickham2014tidydata). See [Data Organisation in Spreadsheets](#rr-rdm-spreadsheets-format) for more tips.\nConsider how to split variables into multiple variables if more than one thing is measured. \n\n## 6. Handle Missing Data Thoughtfully\n\nDecide how to manage missing values. \nMissing data can mean a variety of things: perhaps a participant did not know the answer, or they refused to answer, the question was accidentally skipped, the handwriting was illegible, or there was an error made in data entry, or the value should be blank on purpose. \nShould missing data be removed, imputed, or marked as “Unknown” or \"Not Applicable\"? \nMake sure that this decision is transparently documented somewhere.\nDeleting missing data entirely may not always make sense as missing data can provide insights on the data collection process.\n\n## 7. Document Cleaning Steps\n\nIf your data is under [version control](#vcs), changes to the data will be automatically tracked. \nYou can also keep a text file with the changes, such as a \"Data Cleaning Log.” \nRecord what you changed, when, and most importantly: why. \nThis documentation increases transparency and by adding clear and detailed notes you will allow others to replicate your data cleaning process. \nVersioning files and updating documentation takes time and consideration - and is worthwhile in the long run to save future you and others time trying to retrace your steps.\n\n## 8. Update the data collection process to prevent future mistakes\n\nIt is easier to not have to clean data - you can prevent data errors during data collection. \nDefine range limits on your data where possible (for example, the score must be a value between 0 and 10 for household members; a birthday must be between certain dates). \nPrevent blank values by requiring data entry, or ensure that where blank values should be present they are intentional. \n\n\n(rr-rdm-cleaning-lab)=\n# Data cleaning with a Team/Lab\n\nOften data cleaning is done by one person, but it can be helpful to do data cleaning as a team. \nThis may save time and will guarantee that at least one other person is able to retrace the data cleaning steps. \nConsider setting up a [data cleaning day at the lab](https://www.dataorchard.org.uk/news/introducing-the-data-cleaning-day) to hold each other accountable, and make sure that lab/data cleaning activities are equitably distributed. \nYou can also outline data cleaning activities in the [Team/Lab manual](#cl-team-manual).\n\n(rr-rdm-cleaning-resources)=\n# Resources\n\n* [Data Cleaning](https://datamgmtinedresearch.com/clean), chapter in Data Management in Large-Scale Education Research\n* [Data cleaning for data sharing](https://cghlewis.com/blog/data_clean_01/) by Crystal Lewis\n* [The Quartz guide to bad data](https://github.com/Quartz/bad-data-guide/tree/master)\n* [Clean your data](https://theresearchcompanion.com/cleandata/), for a more qualitative perspective on data cleaning\n"
  },
  {
    "path": "book/website/reproducible-research/rdm/rdm-data-curation.md",
    "content": "(rr-rdm-data-curation)=\n# Data Curation\n\nData curation is one of the key aspects of Research Data Management (RDM). \nIt involves the capturing, appraisal, disposal, description, preservation, access, reuse and transformation of research data. \nData curation promotes the use of data from the point of creation to ensuring that its used for the purpose it is intended for. \nData curation also enables you to easily access datasets and information that you need in an organised format, once shared in a Data Repository [{term}`def<Data repository>`].\nYou can imagine that if you don't follow the data curation process, it becomes difficult to access that data.\n\n\n```{figure} ../../../figures/data-curation.*\n---\nname: data-curation\nalt: A cartoon illustration describing the seven steps outlined below of the Data Curation Pipeline. The first step is capture, where a person is trying to catch some bugs. The second one is appraisal, where there is a looking glass trying to review the data. The third one is disposal, where some trash is being tossed out of the pipeline. The fourth step is description, which is showing some data charts. The fifth step is preservation, where these charts are then stored in glass jars. The sixth step is access, where individuals would have access to these jars with data in them. The last step is transformation, where different datasets are being transformed into a new one.\n\n---\nThe Data Curation pipeline. _The Turing Way_ project illustration by Scriberia. Zenodo. [http://doi.org/10.5281/zenodo.3332807](http://doi.org/10.5281/zenodo.3332807)\n```\n\n## Data Curation Pipeline\n\n### 1. Data capture\nData capture is the process of gathering or collecting data from different sources, which will be processed and used for certain purposes. \nThese sources may be research articles in electronic format or databases like electronic databases among others. \nThis stage focuses on ensuring that the data captured is actually fit for purpose and ready for curation.\n\n- See [](#rr-rdm-find) for more information\n\n### 2. Data appraisal\nIn data appraisal, you are required to select the appropriate data by entering, digitizing, transcribing, checking, validating and cleaning the data. \nYou may also need to anonymise or pseudoanonymise the data where necessary.\nYour appraisal and selection policy should ensure consistency, transparency, and accountable decision making.\n\n- See [Crystal Lewis's blog on cleaning data](https://cghlewis.com/blog/data_clean_02) for more detailed information.\n- Watch [DataONE Webinar: Tidying Your Data](https://vimeo.com/378621271)\n\n### 3. Data disposal \nData disposal involves disposing of data that has not be selected for retention. \nYou need to have an appraisal policy which will guide you on the data required for archiving, redeployment, transfer of custody or ownership or destroying the research data.\n\n### 4. Data description\nData description requires that you are able to interpret the data; derive data; produce research outputs; author publications; data anonymisation; data visualization; data validation and prepare the data for preservation. \nSo it is important that you describe the research data so that it is discoverable and usable over time (see [](#rr-rdm-metadata) for more information. \nThere are also  metadata standards that already exist to help you with standardised descriptions. \n\n### 5. Data preservation\nTo ensure data preservation it is helpful to store your data in interoperable or frequently used formats. \nThis way, you increase the chances that files can still be opened after several years have passed, avoiding the [example of data loss in this video](https://www.youtube.com/watch?v=N2zK3sAtr-4). \nSee the [File formats recommended by the UK Data Service](https://ukdataservice.ac.uk/learning-hub/research-data-management/format-your-data/recommended-formats/) or the [Preferred file formats by DANS](https://dans.knaw.nl/en/file-formats/) for examples.\nSee [](#rr-rdm-repository) and [](#rr-rdm-sharing) for more information.\n\n### 6. Data access \nData access entails distributing data, sharing data, publishing data, linking data to outputs, controlling access, establishing copyright and promoting or disseminating the data to wider audiences to access it or reuse it.\nYou can make the data freely available online to anyone who may be interested in reading it or you may restrict access of the data or provide an option of how to access the data. \nSee [](#rr-rdm-repository) and [](#rr-rdm-sharing) for more information.\n\n### 7. Data transformation\nData transformation is the practice of examining large datasets to generate new information. \nYou can reanalyze the research data and make relationships that may not have been previously discovered. \n\n## Additional resources on data curation\n* [10 Things for Curating Reproducible and FAIR Research](https://doi.org/10.15497/RDA00074) (see also their [webpage](https://curating4reproducibility.org/10things/)\n"
  },
  {
    "path": "book/website/reproducible-research/rdm/rdm-data.md",
    "content": "(rr-rdm-data)=\n# Research Data\n\n(rr-rdm-data-definition)=\n## What is Data?\n\nData are objects that you use and produce during your research life cycle, encompassing datasets, software, code, workflow, models, figures, tables, images and videos, interviews, articles. \nData are your research asset. \nA good way of thinking about what might be classed as data that needs to be managed is to ask yourself the questions: \"What is the information that I need to use and write about in my paper or book?\", \"What information would I need to back up my conclusions?\" and \"What information is needed by others to understand and possibly replicate the research that I have done?\". \nThis information is your data.\n\n> Data are: _Facts, measurements, recordings, records, or observations about the world, collected by researchers, that are yet to be processed/interpreted/analysed.\nData may be in any format or medium taking the form of writings, notes, numbers, symbols, text, images, films, video, sound recordings, pictorial reproductions, drawings, designs or other graphical representations, procedural manuals, forms, diagrams, work flow charts, equipment descriptions, data files, data processing algorithms, or statistical records._\n[CODATA Research Data Management Terminology ](https://vocabs.ardc.edu.au/viewById/685)\n\n(rr-rdm-data-lifecycle)=\n## The Research Data Lifecycle - A Model for Data Management\n\nResearch data often follows a 'lifecycle' which follows the research project as it evolves; here is a [video](https://www.youtube.com/watch?v=-wjFMMQD3UA) that describes it. \nThis model provides a sound basis on which to plan for research data management, from data creation at the start of a research project, through to publishing and sharing research at the end of the project, and archiving any research data for the long-term and future reuse once the project has ended.\n\nThe research data lifecycle involves data creation, data use, data publication and sharing, data archiving, and data reuse or destruction.\nHowever, data have a longer lifespan than the research project that creates them. \nIn a [](#rr-rdm-dmp) you can structure how you will manage and share your research data.\n"
  },
  {
    "path": "book/website/reproducible-research/rdm/rdm-dmp.md",
    "content": "(rr-rdm-dmp)=\n# Data Management Plan\n\nA Data Management Plan (DMP), or Output Management Plan, is a document that describes how your research outputs will be generated, stored, used and shared within your project. \nA DMP is a living document, which can be updated throughout the research project as needed. \n\nA Data Management Plan is a roadmap for you to manage your data efficiently and securely. \nThis can prevent data loss or breaches. \nPlanning ahead on how to manage your data consistently can save you time later on! \nIt can also make it easier to [share](#rr-rdm-sharing) your data with others and therefore make the data more [FAIR](#rr-rdm-fair).\n\n```{figure} ../../../figures/data-management-plan.*\n---\nname: data-management-plan\nalt: There are two women in the illustration. The left one is looking distressed and says 'Oh no, my computer crashed! I lost all the data!' The right woman is holding a map which says DMP (Data Management Plan) and is looking happy. She is saying 'Good thing I had a plan! The data is all backed up! \n\n---\nData Management Plan. _The Turing Way_ project illustration by Scriberia. Zenodo. [http://doi.org/10.5281/zenodo.3332807](http://doi.org/10.5281/zenodo.3332807)\n```\n\n\n## A Data Management Plan should provide information on six main topics:\n\n### 1. Roles and Responsibilities\n* It is important to discuss who is responsible for different tasks during the life-cycle of a research project, especially in [larger collaborations](https://dataabinitio.com/?p=1204). \nDefining who is responsible for the management of the data and code can prevent confusion/miscommunication later in the project.\n* You should check the DMP recommendations and requirements of your institute and funder. \nThe library research support team of your institute and the website of your funder are usually good places to find information and help. \nSome of the funders require you to use their DMP template. \nYou can check if your funder or institute has a DMP using [DMPonline](https://dmponline.dcc.ac.uk/).\n\n### 2. Type and size of data collected and documentation/metadata generated\n* Here, you can list the file formats you will use to collect, process and present your data. \nIf you want to share your research outputs later, standard file formats that can be openly used without a particular license for a software programme are preferred.\nTo ensure this, you should adapt your files or start working in these formats early on (see the [UK Data Services](https://ukdataservice.ac.uk/learning-hub/research-data-management/format-your-data/recommended-formats/) and [DANS](https://dans.knaw.nl/en/file-formats/) file format recommendations). \n* A distinction can be made between different types of data that can be described in the plan separately: \n    * **Raw/primary data**: data collected from the source (always keep a read-only version of raw data so you can come back to it later!)\n    * **Processed data**: a version of the data that has been modified for analysis or visualisation\n    * **Finalised data**: data that is ready to be shared in a publication or data repository (see [Sharing and archiving data section](#rr-rdm-sharing) for more information). \nSome data repositories, such as [Zenodo](https://zenodo.org/), allow versioning of datasets so that you can update your finalised dataset if you want to release another version.\n* All of these types of data will have to be described to be placed into context by using metadata (see the [Documentation and metadata section](#rr-rdm-metadata)) and adequate documentation which will allow future you, and anyone in your team, to interpret the data. \n* It is helpful to know the approximate size (in the range of MB, GB, TB or PB) of the data in these various stages because this will affect the storage solutions available for you (discussed in the next point). \n\n### 3. Type of data storage used and back up procedures that are in place\n* Check the [data storage and organisation section](#rr-rdm-storage) for storage and back-up solutions and ways to organise your files \n* Keeping track of who made specific changes in your data/code will be important, particularly for code.\nSee [](#rr-vcs) for more information.\n* Determine who has access to the data and who grants access. \nAt least one other person should have access to your data, such as your supervisor/PI/head of the department. \nIf you're managing personal/commercially sensitive data, access should only be given to individuals that have to work with the data. \n\n### 4. Preservation of the research outputs after the project\n* Consider whether your research outputs can be made publicly available. \nPersonal data or research outputs needed to apply for patents cannot be publicly shared, see [](#rr-open-data).\nIf data cannot be made publicly available you will still have to preserve it for several years, depending on the policies of your country, institute and funder.\n* You can outsource long term preservation of your data to a data repository. \nYou can find more information on how to select an appropriate repository in [sharing and archiving data](#rr-rdm-sharing) section\n    * Select repositories using, for example, [FAIRsharing](https://fairsharing.org/), [re3data](https://www.re3data.org/), or [Nature's recommended repository list](https://www.springernature.com/gp/authors/research-data-policy/repositories/12327124), that provide a persistent identifier such as a DOI for your research output.\n\nA repository should have a preservation policy that specifies how long your outputs will be curated.\nWhen in doubt, contact your library Research Data Support Team for more information about data repositories.\n\n* For digital preservation, ensure that the research data can be discovered, accessed, used and understood now and in future.\nConsider future technological changes, changing user behavior and new requirements when sharing data.\n\n### 5. Reuse of your research outputs by others\n\n* Select a license when you make your output available on a repository (see the Licensing subchapters on [data](#rr-licensing-data) and [software](#rr-licensing-floss) for more information).\nBy selecting a license you tell others how they can reuse your data. \nIf you do not select a license others will not be able to reuse your data without asking you for permission. \n* You can put your research outputs into context using and introduction text, such as a [README.txt or .md file](#rr-rdm-readme)\n    * See the [documentation and metadata section](#rr-rdm-metadata)\n\n### 6. Costs\n* Check if there are any costs associated with your project\n    * Preferred storage solution (during and after the project, see #3-4)\n    * Personnel costs (if you need a data manager to manage more sensitive or large quantities of data)\n    * Software licenses (such as Electronic Lab Notebooks, see [](#rr-open-notebooks))\n    * Or [indirect costs](https://labrigger.com/blog/2025/02/12/indirect-costs-are-research-costs/) that need to be covered.\n    * You can use this [checklist for costs](https://www.ukdataservice.ac.uk/media/622368/costingtool.pdf) as a guidance, or the [Framework for Costing Research Data Management](https://doi.org/10.5281/zenodo.15465412).\n\nYou can use this [checklist](https://ukdataservice.ac.uk/learning-hub/research-data-management/plan-to-share/checklist/) to see if you have everything covered in your Data Management Plan.\n\n(rr-rdm-dmp-citable)=\n\n## DMPs as Citable Research Objects\n\nMany funders now encourage or require DMP as part of their open science policies.\nPublic DMPs can be updated during the project by depositing new versions with new DOIs while maintaining all previous versions.\nThis creates a traceable record of how your data management evolved throughout the research lifecycle.\nSee how to [Identify Your Research Objects](#cm-citable-steps-object) for more information on how to make your DMP citable.\n\n\n(rr-rdm-dmp-tools)=\n\n## DMP tools \nThere are several platforms or tools that you can use to set up your Data Management Plan: \n\n* [ARGOS](https://argos.openaire.eu/home)\n* [DMPonline](https://dmponline.dcc.ac.uk)\n* [DMPtool](https://dmptool.org)\n\nSee [activeDMPs](https://activedmps.org/) for a full overview.\n\n## Additional Resources\n\n- [UK Data Services data management information](https://ukdataservice.ac.uk/learning-hub/research-data-management/)\n- [TU Delft Research Data Management portal](https://www.tudelft.nl/en/library/research-data-management)\n- [Research Data Management](https://www.scienceeurope.org/our-priorities/research-data/research-data-management/) by Science Europe\n- Books\n   - @Briney2015dmp\n- Articles\n   - @Briney2020dmp\n   - @Hart2016dmp\n   - @Michener2015dmp\n- Videos\n   - [Videos (3-7 min) on data management by Kristin Briney](https://www.youtube.com/watch?v=K5_ocBG5xek&list=PLEor4jq8YPgK_sgEiAcpHZLw-62mufXus)\n   - Video on [elements of a DMP](https://commons.esipfed.org/node/1442).\n   - [3 min video on Roles and Responsibilities](https://www.youtube.com/watch?v=Ry0OA9mDTCc )\n   - [DMPs by DTU Bibliotek](https://www.youtube.com/watch?v=tvs5_X5rn8w) (20 minutes)\n   - [Areas of a Data Management Plan](https://www.youtube.com/watch?v=L3LPv2sB-IE) (7 minute video by Moore Library)\n- Definition of [Long Term Preservation](https://www.gesis.org/en/research/research-data-management/long-time-preservation) from the Leibniz Institute of Social Science.\n- Planning by [DataOne](https://dataoneorg.github.io/Education/bp_step/plan/) & [USGS](https://www.usgs.gov/data-management/planning)\n\n\n"
  },
  {
    "path": "book/website/reproducible-research/rdm/rdm-elns.md",
    "content": "(rr-rdm-elns)=\n# Electronic Lab Notebooks\n\nAn Electronic Laboratory Notebook (commonly known as an ELN or a digital lab notebook, [{term}`def<Electronic Laboratory Notebook>`]) is a software system designed to help you document and maintain reproducibility of your research and share information more easily.\nELNs enable researchers to organize and store experimental procedures, protocols, plans, notes, data, and even unfiltered interpretations using their computer or mobile device.\nThey can be a digital analogue to the paper notebook most researchers keep.\nELNs can offer several advantages over the traditional paper notebook in documenting research during the active phase of a project, including; searchability within and across notebooks, secure storage with multiple redundancies, remote access to notebooks, and the ability to easily share notebooks among team members and collaborators.\nELNs make the practice of [](#rr-open-notebooks) [{term}`def<Open Notebooks>`] practical in a way that it is not for paper lab books.\nHowever, it is important when choosing an ELN solution to avoid giving up the advantages offered by a paper lab notebook.\n\n(rr-rdm-elns-procon)=\n## Quick Pros & Cons of ELNs\n\nElectronic Lab Notebooks may provide, among other things, the following **functionalities**:\n\n* A **text editor** with similar functions as a paper notebook\n* A **search function**\n* **Secure storage** and back up (with distinct failure modes from paper notebooks)\n* Tools for working with **tabular data** (calculations and formatting of tables and graphs)\n* **Template**s for documenting standard procedures\n* **Built-in Laboratory Inventory Management Systems** (LIMS) functionality for managing and documenting samples, reagents, and apparatus, or integration with separate dedicated LIMS.\n* **Collaboration tools** for sharing experimental information\n* Some ELNs will allow you to **comply with standards and regulations** because of their certification processes\n\nELNs also have their **limitations**: \n\n* **Costs**: Most ELN solutions can only be used through paid plans, or the free plans have reduced functionalities in the number of users, storage space or file sizes.\nYour lab may also not have access to tablets or pens that would make the use of ELNs easier.\nCheck if your institution is offering a solution that you can use without additional costs.\n* **File format**: Always check if files can be exported in your preferred file formats to avoid format lock-in.\nSome ELNs also have API's that allow integration with other software and workflows. \n* **[Vendor-lock-in](#rr-rdm-elns-choosing-lockin)**: Once you're using a certain solution you may become dependent on it.\nAlways have an exit strategy in case the solution is no longer offered or if you're moving institutions and you no longer have access.\n* **Sustainability**: Choose a solution that has a larger chance of being around for a long time.\n* **Drawing**: Not all solutions have the tools or capabilities to include drawings or integration with drawing software.\n* **Security**: Before using an ELN solution you should check any backup plans and data security measures, especially if you're working with sensitive data.\n* **Laboratory situation**: Your lab may not have an internet connection or electronic tools could affect samples, reagents or magnets in the lab. \n* **Learning curve**: ELNs have a longer learning curve than paper notebooks and it takes time to learn how to use them.\nUser-friendliness and flexibility are important to accommodate the widely varying workflows of each lab member.\n\n(rr-rdm-elns-choosing)=\n## Choosing an ELN solution\n\nIf you are in a position to choose an ELN to use, or are making a choice on behalf of an organisation there are some factors to consider:\n\n(rr-rdm-elns-choosing-importance)=\n### Importance of getting it right\n\nMany organisations offer software that purports to solve the problem of ELNs.\nSo choosing a suitable solution can be a major headache and responsibility.\nThe choice of ELN is an incredibly important decision, and one that your organisation will likely have to live with for years, or even decades.\nYou are putting the record of your research into the hands of the tool that you choose, and entering into a long-term relationship with the provider of your ELN solution.\nYou are also making a choice about a tool that many of the people in your organisation will interface with closely every day.\nHaving to use a tool that is not well fit to its function on a daily basis can be a major problem for productivity and morale.\nConversely, a tool that is a good fit gets out of people's way and makes their jobs easier can be a major boost to productivity and morale.\n\n(rr-rdm-elns-choosing-failure-modes)=\n### Failure modes in user adoption of ELNs\n\nIncomplete or inflexible ELN solutions which increase friction in workflows can cause issues.\nPeople will avoid using ill-fitting tools that they perceive to be getting in their way, especially scientists.\nThey are creative, stubborn, resourceful, and impatiently focused on answering their research questions with whatever tools are available to them. \nFinding software with the flexibility, capability, and scope to keep up is not easy and if it doesn't researchers won't use it - at least not as you intended.\n\n* Shadow IT/notebooks\n    * People using their own unsanctioned solutions which may be a compliance issue and introduce risks that you have not accounted for.\n* Infrequent updates\n    * People dump a copy of their work into the ELN only as often as necessary for compliance.\n* Consistency issues\n    * If there are paper and potentially multiple electronic copies of some information - what happens when it does not agree? What is the source of truth?\n* Sprawl\n    * Partial adoptions can lead to different pieces of information being stored in different systems which might not be connected making it harder to record and find information which was previously in one place.\nThis can make information recording and retrieval processes more complex, expensive and brittle. \n* Practical use and interface issues\n    * Laptops or tablets can introduce interface barriers \n        * Lab gloves may hamper the use of touchscreens and track pads.\n        * Free-hand drawing is not always well supported which can be necessary when using notation that is not easily represented in simple text such as mathematical and chemical notation.\n        * Client issues, such as native mobile applications with incomplete featuresets, slow web-apps that may require an always-on connection and not be able to cache local changes.\n        * No spatial memory, whereas in a physical book people may remember where they wrote things and can open it roughly on the right page.\n        * Extra expense, maintenance and procurement issues with hardware suitable for use in your research environment.\n* Lack of sufficiently available training on more complex aspects of the ELN solution leading to poor, mis-use, or under-use of ELN features.\n\nSee [The Bare Necessities: How to implement Electronic Lab Notebooks properly!](https://doi.org/10.5281/zenodo.14014957) for more examples.\n\n(rr-rdm-elns-choosing-compare-to-paper)=\n### Always compare to paper notebooks\n\nWhen picking an ELN remember to always compare the ELN to a paper notebook and not just to other ELNs.\nIt is likely paper that you are replacing so this is the benchmark against which to compare.\nConsider the differences between a paper copy of a lab notebook and an electronic copy.\nConsider also which properties of a paper copy is it important to you that you are able to retain when adopting an electronic alternative.\n\n* A paper lab notebook is physically under your control.\n* You (or more likely your organisation) own it.\n* You can control access to it physically.\n* Your physical possession of this resource means that it would be difficult for anyone to prevent you from accessing it.\n* Conversely it must be physically stolen to be accessed by a malicious third party.\n* On the other hand, ELNs - like all software - have security vulnerabilities.\n* You are not dependent on the functioning of any complex systems like computer networks in order to be able to use your paper lab notebook.\n* You do not need any specialist tools in order to access its contents.\n* There is no reason why you might have to pay a third party a fee in order to continue using it.\n* You do not have to agree to a 'terms of service' or 'end-user license agreement' with a third party to use and retain access to your lab book. \nThese terms may be subject to unilateral alteration by that third party.\n\nIf your provider of paper lab books goes out of business it has almost no bearing on your ability to continue doing your work.\nOne paper notebook is much like another, finding a new provider is pretty easy.\nChanging providers does not impact on your ability to access your past notebooks or to continue operating with the same workflow in future ones.\nThis is not necessarily true of ELNs.\n\n(rr-rdm-elns-choosing-archival)=\n### Archival function of notebooks\n\nLab notebooks perform an archival function.\nFew active measures are needed to maintain the data in your paper notebooks. \nThe primary vulnerability of paper lab books is that there is only one copy. \nNevertheless, as long as they are kept in a cool, dry and dark spot (for example a fireproof safe) they will likely last decades.\n\nElectronic data requires much more active upkeep.\nElectronic data can, *if managed properly*, be more resilient to physical threats such as fire and flooding as it can frequently be backed up in multiple locations.\nA hard drive, or even a solid state drive, however, cannot be left in a draw for a decade or more and have a high likelihood of working without some amount of bit-rot or compatibility issues when plugged back in.\n\nFor digital data it is important for archiving and maintaining the data to use formats that maximize the likelihood of recovering relevant information.\nProprietary formats are antithetical to this.\nProprietary solutions generally obfuscate the format, even if just through absence of generally available specifications and documentation.\nProprietary formats generally have a single implementation from their creator, this creates a single point of failure.\nOpen formats can have multiple different implementations of tools which read them.\nIf there is a good enough specification then new tools can even be written for the format if none of the originals are available anymore.\nProprietary tools may require some kind of license activation process to use this may not be possible if their vendor no longer exists.\nUsing a proprietary solution for archival purposes is therefore taking a needless risk with the future of your data.\nYour data's fate is tied to the format in which it is stored so choose it wisely.\n\n(rr-rdm-elns-choosing-lockin)=\n### Lock-in\n\nMost proprietary or open tools will permit you to export your data in one format or another.\nThe quality of this export is critical to scrutinise.\nThe ability to save all your lab books as PDFs is fine but if it is the only option you may lose a lot of metadata, and the ability to import your data into a new solution. \nThe ability to export your data and retain the original structure is very important to evaluate.\n\nProprietary solutions are incentivised to attempt to lock-in their customers so that the cost of switching to a competitor is high - so be especially wary of poor export options.\nNote that this tends to change over time. \nNew providers are focused on user acquisition so data portability is often good at first but tends to decline after a certain point in time.\nFirms tends to follow a pattern of shifting from a user acquisition phase with favourable terms, to a user retention phase with less favourable ones.\nMendeley for example began [encrypting their local database](https://www.zotero.org/support/kb/mendeley_import#mendeley_database_encryption). \nThis made it impossible to migrate your local library to different reference managers without going through the Mendeley online library feature.\nThis occurred after they had reached a high degree of market penetration and had been acquired by Elsevier.\n\nWhen looking for any critical piece of software for long term use the first questions to ask are:\n* Is there an Libre / open-source solution to this problem?\n* If it is a web app and/or has a server: Could I host my own fully featured instance, should I need to?\n* Is there a large/active community using the project, does it have institutional backing of some kind? \n  This might take the form of a company which sells service contracts, or offers paid hosting ideally with feature parity with a self-hosted option. \n  Or perhaps a foundation or other non-profit/academic organisation with robust funding.\n* What are the data export options and formats?\n\nOpen solutions provide you with the assurance that if you do the appropriate preparatory work you should be able to access all of your data in its native form.\nFor example keeping copies of the ELN software that can be run offline in a virtual machine (VM) or similar computational environment in the future.\nThis is typically much easier for open applications and can be impossible for proprietary ones.\nEven if the tools are no longer maintained they can still be used to read the data and interact with it in (mostly) the same way.\nThe data will also likely be stored in an open format from which it can relatively easily be extracted and ported to a new format.\nThis may still be a lot of work but it is much more attainable than reverse engineering a proprietary format for which there is no documentation, or worse - dealing with encrypted files.\n\nYou can pay for third party hosting and administration of open source applications.\nThis is a solution when you don't have the expertise or internal resources to administer a self-hosted instance of an open-source ELN solution. \nIn this case you get the best of both worlds: the benefits of professional support and the reassurance of an open solution.\nYou should still take regular local backups of exports from your hosting provider from which you could restore your ELN system with different hosting.\nThis means that you retain the option to change providers.\nConventional Software as a Service (SaaS) platforms are highly vertically integrated: the software development, hosting, administration, and support are package deal that you must take or leave as is.\nWhen using open tools each of these layers can separated, though they do not need to be.\nThis gives you the flexibility to change your provider of any of them independently.\nThis improves your bargaining position, but may increase procurement complexity.\n\n(rr-rdm-elns-choosing-automation)=\n### Automation and integration\n\nELNs with APIs have the potential for integration with instruments that would permit direct deposition of data from connected instruments into ELNs or other connected research data management infrastructure.\nThese sorts of integrations are especially useful in workflows at core facilities. \nFor example, bioimaging facilities can automate a substantial part of the image metadata deposition into image data management tools such as [OMERO](https://www.openmicroscopy.org/omero/).\n\n(rr-rdm-elns-standards)=\n## ELN standards and project governance\n\nELNs offer many advantages over paper notebooks.\nNevertheless, ELNs come with a considerable amount of additional complexity and additional risks - so it is important to have a mitigation plan.\nThe ELN space is still quite young and rapidly changing.\nAs such it is important to think about how the academic community wants the ELN infrastructure to be owned and governed in the long run.\nAn interesting model to consider emulating here is [moodle](https://moodle.com/), an open source electronic learning environment popular with universities.\nIt offers commercial support and hosting and has a network of developers across the education sector who contribute to the core project, as well as creating custom integrations and extensions to meet their particular needs.\nThis structure allows institutions to pool resources to fund the development of features that they all need and keeps this infrastructural code in common ownership, avoiding the worst lock-in issues arising from the use of proprietary solutions.\nThis more open distributed model also allows individuals to work on their own custom extensions and integrations instead of being reliant on the ability and willingness of a company to implement a feature that you need.\n\nWithout an open standard even if you are using an open source ELN and/or open file format this does not mean that you will necessarily be able to easily use your data with other ELN tools.\nSuch a standard would, if properly adhered too, reduce the lock-in risk associated with using both open and proprietary tools.\nAn initiative to devise ELN format standards would be most welcome.\n\n(rr-rdm-choosing-elns)=\n## Resources for choosing ELNs\n\n- [How to pick an electronic laboratory notebook](https://doi.org/10.1038/d41586-018-05895-3) by @Kwok2018eln\n- [2019 Review of the Best Electronic Laboratory Notebooks](https://app.scientist.com/blog/2019/04/05/2019-review-of-the-best-electronic-laboratory-notebooks).\n- [Guide on choosing an ELN from Simon Bungers of Labfolder](https://labfolder.com/electronic-lab-notebook-eln-research-guide/).\n- The Harvard Longwood Medical Area Research Data Management Working Group Constructed an [Electronic Lab Notebook Comparison Matrix](https://doi.org/10.5281/zenodo.4723753) in 2021, for convenience [a nicely formatted google sheet version](https://docs.google.com/spreadsheets/d/1ar8fgwagOh30E31EAPL-Gorwn_g6XNf81g3VDQnQ_I8/edit#gid=0), is also available.\n- This recent review @higgins2022elns provides a good overview of considerations when adopting an ELN solution. \n  It covers such things a regulatory compliance that is not yet touched on here.\n  It does occasionally appear to conflate open-source solutions with self-hosted ones which need not necessarily be the case.\n  Some companies will let you host proprietary apps on premises.\n  It is also possible to pay for third party hosting and administration of open source applications.\n* [ELN finder](https://eln-finder.ulb.tu-darmstadt.de/home) a tool to select an ELN suitable for your purposes\n\n(rr-rdm-eln-open-elns)=\n## Select Open Infrastructure ELN Options\n\nThe following ELN options are each quite different but have many of the same core features.\n\n* [eLabFTW](https://www.elabftw.net/) \n    * Has features such as: Laboratory resource scheduling feature for booking things like hoods and microscopes, automatic mol file previews for molecules and proteins, and support for free-hand drawing.\n    * eLabFTW has a [website](https://www.elabftw.net/), [documentation](https://doc.elabftw.net/) and there is a [demo](https://demo.elabftw.net/login.php) deployment that you can try out.\n    * Self-hosting is *relatively* simple [according to the documentation](https://doc.elabftw.net/install.html).\n        There is also a [paid support tier](https://www.deltablot.com/elabftw/) which would be recommend for any larger deployment to support the ongoing development of the project.\n    * [Paid cloud hosting](https://www.deltablot.com/elabftw/) is available from the developer in a geographical region suited to your needs.\n        A more expensive tier with hosting in France compliant with additional security and privacy certifications is available.\n\n* [openBIS](https://openbis.ch/)\n    * Robust features for integrated metadata management, for example, linking to ontologies / controlled vocabularies.\n    * openBIS has an API and can integrate with Jupyterhub for Electronic Lab Notebooks.\n    * Complete LIMS where storage is integrated with protocols and experiment records, including keeping track of bar-coded stocks.\n    * You can get a feel for it in the [demo](https://openbis-eln-lims.ethz.ch/openbis/webapp/eln-lims/) deployment.\n    * openBIS is a bit more complex to administer [based on its documentation](https://openbis.ch/index.php/docs/admin-documentation/).\n    * As openBIS is developed at ETH Zurich it can be hosted for you under the openRDM service operated by ETH Zurich scientific IT services.\nNo fixed pricing is available - cost would be dependent on your specific needs.\n    \n* [OSF](https://osf.io/)\n    * OSF is oriented towards sharing and collaborating on your work, including the ability to generate DOIs and host pre-prints directly on the main instance.\n    See [OSF](#rr-rdm-repository-osf) for more information.\n    * It is free to use OSF at the main instance at [osf.io](https://osf.io/).\nFor larger data you must provide your own additional [storage add-ons, available from a number of cloud storage providers](https://help.osf.io/article/395-storage-add-ons).\n    * Whilst you could deploy your own self-hosted OSF this is not how it is intended to be used (except for development).\n    * The OSF has strong sharing features, making it easy to share parts of your ELN publicly.\n\nWhen using an open solution it is always important to consider how you can contribute to its ongoing development and maintenance, for example by donating to the project.\nIf it makes sense given the makeup of your organisation and that of the project you may also be able to contribute developer time to the project.\n\n(rr-rdm-using-non-elns-for-eln-things)=\n## Using non-ELNs for ELN things\n\nNote taking and personal knowledge management (PKM) applications of various kinds have been pushed into service as ELNs by many individuals and institutions, despite not being designed specifically for this task.\nSome tools are better suited to be used 'off-label' as ELNs than others.\nSome may have significant drawbacks compared to purpose built solutions, despite being better at some things than currently available dedicated ELN options.\n\nMicrosoft OneNote is quite popular as an ELN despite a proprietary notebook format with limited export options and that [Microsoft has entertained getting rid of the good (desktop) version this of application in favour of its much less featureful 'web' version in the past. Though they have apparently relented, for now](https://www.youtube.com/watch?v=4IkUfh05TGE).\nOneNote is a good experience as a free-form note taking tool especially for hand-written or drawn notes and automatic linking of annotations to audio timestamps.\nThe lack of a good version history is a distinct downside.\nIts popularity likely stems, in part, from its availability in the Microsoft Office suite (software already provided by institutions which do not incur additional costs).\n\nOther generic note taking applications have featuresets which are not dissimilar to ELN solutions.\nFor example, open source applications like [logseq](https://logseq.com/) or [zettlr](https://www.zettlr.com/), and proprietary ones like: [obsidian](https://obsidian.md/) or [notion](https://www.notion.so/).\n\n(rr-rdm-additional-eln-resources)=\n## Additional ELN resources\n\n* [Electronic Lab Notebooks: can they replace paper?](https://doi.org/10.1186/s13321-017-0221-3) by @Kanza2017eln\n* [Electronic Lab Notebooks](https://datamanagement.hms.harvard.edu/collect-analyze/electronic-lab-notebooks) by Harvard Medical School\n* [RSpace](https://www.researchspace.com/)\n* [Exploring 'The Chemotion Files': A Gamified Dive into Electronic Lab Notebooks](https://thefairelephant.com/news_digest_archive/exploring-the-chemotion-files-a-gamified-dive-into-electronic-lab-notebooks/)\n  \n\n"
  },
  {
    "path": "book/website/reproducible-research/rdm/rdm-fair.md",
    "content": "(rr-rdm-fair)=\n# The FAIR Principles\n\nThe FAIR guiding principles for scientific data management and stewardship @Wilkinson2016fair were developed as guidelines to improve the **F**indability, **A**ccessibility, **I**nteroperability and **R**eusability of digital assets; all of which support research reproducibility.\nThe FAIR principles play an important role in making your data available to others for reuse.\nThe [majority of European funders and research institutes](https://doi.org/10.5281/zenodo.13961123) now also require their researchers to make their research outputs FAIR. \n\nIt is much easier to make data FAIR if you plan to do this from the beginning of your research project.\nYou can plan for this in your Data Management Plan (DMP) (see points 4 and 5 in [](#rr-rdm-dmp).\n\nEven though the FAIR principles have been defined to allow machines to find and use digital objects automatically, they improve the reusability of data by humans as well.\nThe capacity of computational systems to find, access, interoperate, and reuse data, with none or minimal human intervention, is essential in today's data-driven era, where humans increasingly rely on computational support to deal with data as a result of the increase in [volume, velocity and\nvariety](https://www.zdnet.com/article/volume-velocity-and-variety-understanding-the-three-vs-of-big-data/).\n\nThis chapter provides an abstract and broad view of what the FAIR principles are, how to put the FAIR principles into practice is discussed in other sub chapters ([](#rr-rdm-spreadsheets), [](#rr-rdm-metadata) and [](#rr-rdm-sharing)).\nYou can also use the [Wellcome Getting Started Guide](https://f1000researchdata.s3.amazonaws.com/resources/FAIR_Open_GettingStarted.pdf) or the [How To FAIR](https://howtofair.dk/) website to find out more about the FAIR principles and how to get started.\n\n```{figure} ../../../figures/fair-principles.*\n---\nname: fair-principles\nalt: >\n  Image in green and grey scale showing a winding, climbing pathway made of jigsaw pieces representing the FAIR principles, with stick figures continuing to build the pathway at the top.\n  In the top left hand corner, a highlight bubble shows a signposted pathway with a location marker labelled persistent as a visual representation of findable.\n  In the top right hand corner a highlight bubble shows a key unlocking a padlock with the text meaningful interaction as a visual representation of accessible.\n  In the bottom left hand corner a highlight bubble shows sharing between two computers as a visual representation of interoperable.\n  In the bottom right hand corner a highlight bubble shows a completed puzzle with the text full disclosure as a visual representation of reusable.\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n(rr-rdm-fair-theory)=\n## Theory\n\nIn brief, FAIR data should be:\n\n**Findable:** The first step in (re)using data is to find it!\nDescriptive metadata (information about the data such as keywords) is essential.\n[Persistent identifiers (PIDs)](#rr-rdm-pid) are fundamental to making research findable - they provide globally unique identifiers that resolve to landing pages with rich metadata. \n\n**Accessible:** Once the user finds the data and software they need to know how to access it.\nData could be openly available but it is also possible that authentication and authorisation procedures are necessary.\nPIDs resolve to landing pages that describe access conditions even for restricted resources.\nLearn more in our [PIDs and FAIR Principles](#rr-rdm-pid-fair) section.\n\n**Interoperable:** Data needs to be integrated with other data and interoperate with applications or workflows.\n\n**Reusable:** Data should be well-described so that they can be used, combined, and extended in different settings.\n\nYou can find a more detailed [overview of the FAIR principles by GO FAIR](https://www.go-fair.org/fair-principles) of what the FAIR principles recommend.\nYou can also read [A FAIRy tale](https://doi.org/10.5281/zenodo.2248200) for an understandable explanation of each principle.\n\nMaking data 'FAIR' is not the same as making it 'open'.\nAccessible means that there is a procedure in place to access the data.\nData should be as open as possible, and as closed as necessary.\n\nIt is also important to say that the FAIR principles are aspirational: they do not strictly define how to achieve a state of FAIRness, but rather describe a continuum of features, attributes, and behaviours that will move a digital resource closer to that goal.\n\nThe FAIR principles are also applied to software (see [Chue Hong et al. 2022](https://doi.org/10.15497/RDA00068) and [Barker et al. 2022](https://doi.org/10.1038/s41597-022-01710-x)). \nWatch a [ten minute video on FAIR software](https://www.youtube.com/watch?v=ME8_NRGRhSs&list=PL1CvC6Ez54KDvJbbdLn5rPvf1kInifEh9&index=16) for a short explanation.\n\n## FAIR principles and environmental sustainability\n\n> \"FAIR practices can result in highly efficient code implementations, reduce the need to retrain models, and reduce unnecessary data generation/storage, thus reducing the overall carbon footprint.\n> As a result, green computing and FAIR practices may boht stimulate innovation and reduce financial costs.\" - {cite:ps}`Lannelongue2023greener`\n\n## FAIR principles and accessibility\n\nThe Accessible in FAIR is not equal to ensuring that your research objects are accessibles to all users. \nFor this, the term “actually accessible” has been coined by {cite:ps}`Colon2023accessibility` to refer to data that is \"easy to locate, obtain, interpret, use, share, and analyze for everybody, including disabled people.\"\n\n(rr-rdm-fair-community)=\n## Community involvement\n\nVarious online resources with tools and advice for good data management are available, such as: \n* The [FAIR Cookbook](https://faircookbook.elixir-europe.org/content/home.html), designed to serve a variety of audience types and involved in different stages of data management life cycle.\nThe FAIR Cookbook is developed and maintained by life sciences professionals, both in the academia and industry sectors, including members of the ELIXIR community. \n* The [ELIXIR Research Data Management Kit (RDMkit)](https://rdmkit.elixir-europe.org/), with resources for individual life scientists and collaborative workspaces.\nThe RDMkit is open for suggestions from anyone, as long as they abide by the [contributor responsibilities](https://rdmkit.elixir-europe.org/how_to_contribute).\n\nMany groups and organisations are working to define guidance and tools to help researchers and other stakeholders (like librarians, funders, publishers, and trainers) make data more FAIR.\nThere are two global initiatives that act as umbrella organisations and reference points for many discipline-specific efforts, including the ones listed above: [GOFAIR](https://www.go-fair.org) and the [Research Data Alliance (RDA)](https://www.rd-alliance.org).\n* Under GOFAIR, there are many [Implementation Networks (INs)](https://www.go-fair.org/implementation-networks) committed to implementing the FAIR principles.\n* Under the RDA, there are several groups tackling different aspects relevant to the RDM life cycle. Among these, one group, the [FAIR Data Maturity Model Working Group](https://www.rd-alliance.org/groups/fair-data-maturity-model-wg) is reviewing existing efforts, building on them to define a standard set of common assessment criteria for the evaluation of FAIRness.\n\n## More information\n- Deep dive into the [FAIR principles by Dr. Maryann Martone](https://www.youtube.com/watch?v=xx2wHxQfcnA) (45 minute video)\n- [Reproducible and FAIR Teaching Materials](https://lennartwittkuhn.com/dra-fair-teaching/#/title-slide)\n- [FAIR: Guía de Referencia General](https://doi.org/10.5281/zenodo.15856491)\n"
  },
  {
    "path": "book/website/reproducible-research/rdm/rdm-find.md",
    "content": "(rr-rdm-find)=\n# Finding Data\n\nThere is an enormous amount of research data now out there online, either openly available or restricted. \nDespite the amount of data available, finding the right data for your research project/question is often difficult. \nThe tips below may help you in finding data suitable for your project.\n\nYou also need to consider if data is actually reusable - does it have the correct license? \nAnd does it contain enough [metadata and documentation](#rr-rdm-metadata) for reuse? \n\n(rr-rdm-find-data)=\n## Finding a dataset\n\nYou can find open and restricted datasets by conducting searches of the metadata such as keyword searches.\n\nYou can find data via:\n* Direct browsing of discipline-specific and multidisciplinary repositories such as Zenodo, Open Science Framework, Figshare. \n    * Search for discipline-specific data repositories on [Re3data](https://www.re3data.org/), [FAIRsharing](https://fairsharing.org/) or look at this list of [data repositories](https://oad.simmons.edu/oadwiki/Data_repositories).\n    * See [](#rr-rdm-repository) for more information.\n* Search in data journals and research articles - you can start by looking at our [Chapter on Data Articles](#rr-rdm-article).\n* Use your network to find datasets.\n* Use specific data search tools:\n    * [B2FIND data search](http://b2find.eudat.eu/)\n    * [BASE](https://www.base-search.net/) \n    * [DataCite Metadata Search](https://search.datacite.org/)\n    * [Europäisches Datenportal](https://www.europeandataportal.eu/de)\n    * [Google Dataset Search](https://datasetsearch.research.google.com/)\n    * [Kaggle](https://www.kaggle.com/datasets)\n    * [Wikidata](https://www.wikidata.org/wiki/Wikidata:Main_Page)\n    * [Open Data Network](https://www.opendatanetwork.com/)\n    * [Awesome Public Dataset](shttps://github.com/awesomedata/awesome-public-datasets#readme)\n    * [EOSC Portal](https://eosc-portal.eu/) and search the [data catalogue](https://search.marketplace.eosc-portal.eu/search/dataset?q=*&standard=true&exact=false&radioValueAuthor=A&radioValueExact=A&radioValueTitle=A&radioValueKeyword=A). \n\n(rr-rdm-find-license)=\n## Check the license\n\nOnce you found a dataset, you need to check the license to see if you can actually reuse the data!\n\nThe most commonly used open licences are [Creative Commons](https://creativecommons.org/choose/), [Open Government Licence](http://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/), or an [Open Data Commons Attribution License](https://opendatacommons.org/licenses/by/index.html).\nSee our chapter on [](#rr-licensing) for more information.\n\nNot all datasets that are available to researchers are open datasets. \nTherefore, if you want to use a restricted dataset, you need to check how you can apply to access it and what the restrictions are on its use. \nRestricted datasets still have a license on them and there should be a clear application process such as a data request form or an email address to inquire about the access. \n\n(rr-rdm-find-metadata)=\n## Check the metadata and documentation for reusability\n\nAfter a metadata check to see if the data is of use to you, you'll need to evaluate the dataset more closely. \n\nThe following questions may help you to do so:\n\n* What was the original research question?\n* How was the data collected?\n* Who collected the data? \nSee [](doi:10.1038/s41597-024-03591-8) for some considerations of why it is important to consider who collected data.\n* Are the collection and processing methods appropriate to answer my research question?\n* Is the data collection process well documented? Which instruments were used? What settings/parameters?\n* Are protocols of the data collection shared?\n* Is there sufficient information available to understand the dataset and its context/origin?\n* Is the information complete, understandable and consistent?\n\n(rr-rdm-find-credit)=\n## Giving credit for use of data\n\nOnce you have used someone elses dataset, you'll need to cite the data to provide credit to the original data creator(s)!\n\nYou need to do this clearly in your research documentation as well as in any research articles you publish. \nSee [](#cm-citable-cite) for more information about how to properly cite datasets.\n\nAlways check how the original dataset should be cited: sometimes researchers want you to cite the accompanying publication instead of the dataset itself. \nThis information is generally available in READme files or in the metadata of the repository.\n\n\n(rr-rdm-find-info)=\n## More information\n\n* [Eleven quick tips for finding research data](https://doi.org/10.1371/journal.pcbi.1006038)\n* [What's wrong with this data?](https://adsei.org/2024/01/22/whats-wrong-with-this-data/)\n* [AREN - Reusing Open Data](https://doi.org/10.5281/zenodo.11862587)\n\n"
  },
  {
    "path": "book/website/reproducible-research/rdm/rdm-metadata.md",
    "content": "(rr-rdm-metadata)=\n# Documentation and Metadata\n\nHaving data available is of no use if it cannot be understood. Without metadata to provide provenance and context, the data can't be used effectively.\nFor example, a table of numbers is useless if no headings describe what the columns/rows contain.\nTherefore you should ensure that open datasets include consistent metadata, that is information about the data so that the data is fully described.\nThis requires that information accompanying data is captured in documentation and metadata. \n\n(rr-rdm-metadata-documentation)=\n## Documentation\nDocumentation provides context for your work. \nIt allows your collaborators, colleagues and future you to understand what has been done and why.\n\nData documentation can be done on different levels. \nAll documentation accompanying data should be written in clear, plain language. \nDocumentation allows data users have sufficient information to understand the source, strengths, weaknesses, and analytical limitations of the data so that they can make informed decisions when using it. \n\n```{figure} ../../../figures/documentation.*\n---\nname: documentation\nalt: The figure goes through a dark wood setting lights along the way. The lights are blocks of text - one can see that these are pieces of documentation. They make it easy for colleagues to find their way. In the darkness one sees another figure - someone got lost in the woods where no documentation was available.\n---\nIllustration about peer review.\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: 10.5281/zenodo.3332807.\n```\n\n(rr-rdm-readme)=\n### README for datasets\n\nA README file provides information about data (or software) and is intended to help ensure that the data can be correctly interpreted and used, by yourself or others.\nA README file is generally shared together with an open dataset, or can be the [landing page of your software/project repository](#pd-project-repo-readme).\n\nREADME text files should describe the methods used for data collection and analysis and include data/software-specific information (parameters, variables, column headings, symbols used).\nSee [Make a README](https://www.makeareadme.com/) for more information on why README files are important and how you can set up your own README files.\n\n#### README tips and examples\n\n* Create one README file for each dataset\n* Name the file README\n* Use plain text file (`README.txt` or `README.md`).\n  Or use README.pdf when text formatting is important for your file.\n\nExample templates:\n\n* [Cornell Template](https://cornell.app.box.com/v/ReadmeTemplate)\n* [4TU.ResearchData’s guidelines for readme files](https://data.4tu.nl/s/documents/Guidelines_for_creating_a_README_file.pdf)\n\n(rr-rdm-codebook)=\n### Codebook or Data dictionary\n\nA data dictionary or codebook ensures that the dataset is interpretable and reusable in the future, and has also been called the '[single most important piece of documentation you will create in your research study](https://cghlewis.com/blog/data_dictionary/)'. \nA guiding question when setting up your data dictionary is: Can another researcher analyse/interpret the data using solely the codebook?\n\n* Useful codebooks are human and machine readable (information provided can be accessed using automated approaches) and consistent.\n* The codebook should at least list all variables and labels that are included in the dataset/article, and may include additional variables. \n* You should explain the (range) of numerical values, units of measurement, sources, classification schemes used, or labels of questions asked.\n* You can also include documentation or metadata not shown in the dataset itself, with an explanation of why it is not included in the final data/article, or outline in detail what missing data means (if there is any in the dataset).\n\nYou can check the [OSF guidance for data dictionaries](https://help.osf.io/article/217-how-to-make-a-data-dictionary) for more detailed variable guidance. \n\nWhen using a spreadsheet as a codebook, the same formatting principles apply as to regular [spreadsheet data](#rr-rdm-spreadsheets) \n\n#### Data dictionary examples\n\n* See Tables 1 and 2 in [Horstmann et al. 2020](https://doi.org/10.1027/1015-5759/a000620) or their [templates in spreadsheet format](https://osf.io/nerpa/)\n\n\n(rr-rdm-metadata-metadata)=\n## Metadata\n\nMetadata is information about the data, descriptors that facilitate cataloguing data and data discovery. \nOften, metadata are intended for machine reading.\n\nWhen data is submitted to a trusted data repository, the machine-readable metadata is generated by the repository. \nIf the data is not in a repository a text file with machine-readable metadata can be added as part of the documentation.\n\n- The type of research and the nature of the data also influence what kind of documentation is necessary. \n- The level of documentation and metadata [{term}`def<Metadata>`] will vary according to the project, and the range of people the data needs to be understood by.\n- Examples of documentation may include items like [data dictionaries](https://help.osf.io/hc/en-us/articles/360019739054-How-to-Make-a-Data-Dictionary) (see [here for a template](https://data.nal.usda.gov/data-dictionary-blank-template)) or codebooks, protocols, logbooks or lab journals, README files, research logs, analysis syntax, algorithms and code comments.  \n- Variables should be defined and explained using data dictionaries or codebooks.\n- Data should be stored in logical and hierarchical folder structures, with a README file used to describe the structure.\nThe README file is helpful for others and will also help you find your data in the future {cite:ps}`Fuchs2018documentation`.\nSee the [README template from Cornell](https://cornell.app.box.com/v/ReadmeTemplate) for an example.\n- It is best practice to use recognised community metadata standards to make it easier for datasets to be combined.\n\n\n(rr-rdm-metadata-standards)=\n### Community Standards - Metadata\nThe use of community-defined standards for metadata is vital for reproducible research and allows for the comparison of heterogeneous data from multiple sources, domains and disciplines.\nMetadata standards are also discipline-specific.\nFor example, for brain data, the [Brain Imaging Data Structure](https://doi.org/10.25504/FAIRsharing.rd1j6t) is the standard to use.\nNot every discipline may use metadata standards, however.\nYou can see if your discipline uses metadata standards through [FAIRsharing](https://fairsharing.org/), a resource to identify and cite the metadata or identifier schemas, databases or repositories that exist for your data and discipline.\n\nIn this case, a text file with discipline specific metadata can be added as part of the documentation.\n\nWant to learn more about Metadata and Metadata Standards? Watch an [introduction video](https://commons.esipfed.org/node/1422).\n\n\n(rr-rdm-metadata-pid)=\n### PID Metadata\n\n{abbr}`PID (Persistent Identifier)` metadata is metadata submitted to PID registration agencies, most repositories handle PID metadata automatically through API integration, it enables your work to be discoverable across disciplines and platforms.\n\nPID metadata includes core properties like:\n- Creator names and affiliations\n- Title and description\n- Publication date and resource type\n- Relationships to other research outputs (such as citations or dataset-paper links)\n\nUnlike domain-specific metadata (such as the Brain Imaging Data Structure for neuroimaging data), PID metadata follows standardized schemas that are discipline agnostic.\nBoth types of metadata are valuable - PID metadata enables broad discoverability while domain-specific metadata captures the detailed context needed for reuse within your field.\n\nLearn about how repositories generate PID metadata and the distinction between these metadata types in our [chapter on persistent identifiers](#rr-rdm-pid-metadata).\n\n\n\n(rr-rdm-metadata-tagging)=\n## Tagging\n\nTags are keywords assigned to files, and a way to add metadata to a file to organise them more flexibly.\nWhile a file can only be in one folder at a time, it can have an unlimited number of tags. \n\nSome tips include:\n- Use short tag names (one or two words)\n- Be consistent with tags\n- Not all file formats allow tags, and when files are transferred tags may be stripped\n\nSee [Tagging and Finding Your Files by MIT libraries](https://libguides.mit.edu/metadataTools)) for more information. \n\n(rr-rdm-metadata-resources)=\n## Additional Resources\n- Videos on [Data Description](https://www.youtube.com/watch?v=sg3P_V8PIes) & [Documentation and Data Quality](https://www.youtube.com/watch?v=3ByfQWDcavg) from the [TU Delft Open Science MOOC](https://online-learning.tudelft.nl/courses/open-science-sharing-your-research-with-the-world/).\n- Example of data documentation by {cite:ps}`Larsen2021Documentation`\n- [Webinar: The Data You Document are the Data We Love](https://youtu.be/SoFxBN-Jnbg?t=1133)\n- [Slides: FAIRify your data: data documentation and metadata](https://osf.io/wbr7t/)\n- [Controlled vocabularies for the social sciences: what they are, and why we need them](https://odissei-data.nl/en/2022/10/controlled-vocabularies-for-the-social-sciences-what-they-are-and-why-we-need-them/)\n- [Research Data Management: Metadata](https://libguides.ucd.ie/data/metadata)\n- Data dictionaries and codebooks by {cite:ps}`Buchanan2021dictionaries`.\n"
  },
  {
    "path": "book/website/reproducible-research/rdm/rdm-methods.md",
    "content": "(rr-rdm-methods)=\n# Methods and Protocols\n\nThis chapter will provide an overview of how to manage your methods or protocols and possibilities for sharing this work with others.\n\n## Why\n\nIn order to ensure that others can reproduce your research, it is key that you document all the steps you took during the research process. \nIn a wetlab, this is often done in a lab notebook that can be kept on paper or digitally. \n(See the sections on [](#rr-rdm-elns) and [](#rr-open-notebooks) for more on the latter.)\nIn both cases the lab notes should record what you did or observed in the laboratory. \nIt should be recording why steps were taken, including mistakes and thoughts or difficulties experienced during data collection and processing. \nYou should take notes in a manner that someone else, with a similar research background or yourself in six months, could use your notebook and repeat the work with the same results. \nIt is very important to clearly describe every step taken and to be specific, otherwise reusers might misinterpret your documentation which will lead to challenges (as can be seen in this [exact instruction challenge video](https://www.youtube.com/watch?v=cDA3_5982h8)). \nSee also the [](#rr-rdm-metadata-documentation) for more information on how to properly document your workflow. \n\n(rr-rdm-methods-open)=\n## Open Methods/Protocols\n\n[protocols.io](https://www.protocols.io/) and [Bio-protocol Exchange](https://bio-protocol.org/exchange) are repositories for protocols. \nFor protocols.io, you can watch two short introduction videos by [Emma Ganley](https://www.youtube.com/watch?v=hva-oTapSWU&list=PL1CvC6Ez54KCcs99wV3eex1v5GUry6Yb7&index=12) and [Lenny Teytelman](https://www.youtube.com/watch?v=1wN6RqCmpqM&list=PL1CvC6Ez54KDvJbbdLn5rPvf1kInifEh9&index=13) to learn more. \n\nSee this video on [methods & protocols](https://youtu.be/CzpY4A5G70s?si=YPX9L_LAC5FAv7G3) from the [ReproducibiliTeach](https://www.bihealth.org/en/translation/innovation-enabler/quest-center/events/course/reproducibiliteach-strategies-to-make-your-research-more-transparent-robust-reproducible-2) team for the differences between protocol journals and protocol repositories (at 23:33).\n\nYou can also choose to [share your electronic lab notes openly](https://www.lornecampbell.org/?p=179).\n\n(rr-rdm-methods-resources)=\n## Additional Resources\n\n* [Course Syllabi for Open and Reproducible Methods](https://osf.io/vkhbt/)\n* [Developing a modern data workflow for evolving data](https://doi.org/10.1101/344804) by {cite:ps}`Yenni2018workflow`\n* [Webinar:  How To Perform A Workflow Analysis ](https://www.youtube.com/watch?v=9H9xnVRlc_M)\n\n"
  },
  {
    "path": "book/website/reproducible-research/rdm/rdm-personal.md",
    "content": "(rr-rdm-personal)=\n# Personal data management\n\nFor a more practical overview on tools and practises that facilitate reproducibility, please see the [](#pd-sdp) on [managing](#pd-sdpm) and [working on](#pd-sdpw) sensitive data under [](#pd).\n\n```{figure} ../../../figures/data-ecosystem.*\n---\nname: data-ecosystem-2\nalt: In the illustration the private data is locked up under a well. However, if there is consent, some of the water in this private data well can be shared publicly. Sharing this private data publicly with consent is important for improving public knowledge and scientific progress, which is visualised as a field where people are working on the planting and managing of plants or data charts. The water from the well is used to water the field. The public data that grows thanks to the sharing of the data can then be 'harvested' and be of public benefit. \n\n---\nThe private data ecosystem. _The Turing Way_ project illustration by Scriberia. Zenodo. [http://doi.org/10.5281/zenodo.3332807](http://doi.org/10.5281/zenodo.3332807)\n```\n\n## Personal data\n\nPersonal data is information about **living people** who can be identified using the data that you are processing, either directly or indirectly (for example, a person's name, address or other unique identifier such as their Social Security number). \nFind out more about what personal data is and what policies apply to this type of data in the [personal data](#pd-sdp-personal) chapter.\n\n\n(rr-rdm-informed-consent)=\n## Informed consent\n\nInformed, voluntary and fair consent to participate in a study is very important for any research project that involves human participants. \nYou can find more information about this in the [Informed Consent section](#pd-sdpm-informed).\n\n\n(rr-rdm-privacy)=\n## Safeguard privacy\nThere are a number of strategies that you can adopt to **safeguard the privacy** of your research subjects, which are described in detail in [Data Privacy Strategies](#pd-sdpm-privacy). \nIf you do plan to share or publish the data you should ensure that this can be done so safely: read [](#pd-sdpm-sharing).\n\n## More resources \nCheck out the resources listed in [](#pd-sdpm-resources) of [](#pd-sdpm).\n\n"
  },
  {
    "path": "book/website/reproducible-research/rdm/rdm-pid.md",
    "content": "(rr-rdm-pid)=\n# Persistent Identifiers\n\nPersistent identifiers (PIDs) are long-lasting references to digital resources that remain valid even if the resource's location changes.\nThey are fundamental to making research findable, accessible, and citable in the long term.\nThroughout this book, you'll see recommendations to \"assign a DOI\" or use persistent identifiers - this chapter explains what PIDs are, how they work, and how they enable FAIR and open research practices.\n\n<!-- TODO: Add illustration for persistent identifiers when available -->\n\n(rr-rdm-pid-what)=\n## What are Persistent Identifiers?\n\nA persistent identifier is a unique string of characters that reliably points to a specific digital resource.\nUnlike a web address (URL) that can break when a website is reorganized or shut down, a PID is designed to remain functional indefinitely.\n\n### The Link Rot Problem\n\nResearch outputs shared online face a significant challenge: **link rot**.\nStudies have shown [one in five reference article become inaccessible](https://doi.org/10.1371/journal.pone.0115253) within just a few years.\nWhen a dataset moves from one repository to another, or when a university reorganizes its web infrastructure, ordinary web links break.\nThis makes it impossible for other researchers to find and verify the original work.\n\n### How PIDs Solve This\n\nPIDs use a **resolution service** that acts as a lookup system:\n1. The PID (for example, `10.5281/zenodo.3332807`) doesn't change even if the resource moves\n2. When someone uses the PID, it is sent to a **resolver** (like [https://doi.org](https://doi.org))\n3. The resolver looks up where the resource currently lives and redirects the user to the correct location\n4. If the resource moves, only the resolver's records need updating - the PID itself stays the same\n\nThis is similar to how a phone number can stay the same even if you move to a new address.\n\n(rr-rdm-pid-ecosystem)=\n## Open Scholarly Infrastructure Ecosystem\n\nModern research relies on an ecosystem of interconnected PID systems.\nThese systems work together to create a **connected scholarly graph** where research outputs, people, organizations, and funding can all be reliably identified and linked.\n\n### PIDs for Research Outputs\n\n[DataCite](https://datacite.org/) and [Crossref](https://www.crossref.org/) are the two main providers of Digital Object Identifiers (DOIs) for research:\n\nDataCite specialises in assigning DOIs to diverse research outputs including:\n\n- Datasets\n- Software and code\n- Preprints and working papers\n- Protocols and methods\n- Presentations and posters\n- Data Management Plans\n- Physical samples\n- Workflows and computational notebooks\n\nCrossref primarily handles:\n\n- Journal articles and book chapters\n- Published conference proceedings\n- Dissertations and theses\n- Reports and standards documents\n\nBoth systems use the same DOI infrastructure (the Handle System), so all DOIs work the same way regardless of which organization issued them.\nThe main difference is in their communities and the types of metadata they specialize in collecting.\n\nWhen you use a **trusted repository** (see our [chapter on data repositories](#rr-rdm-repository)), it will typically assign a DOI through one of these providers automatically.\nYou don't usually need to choose between DataCite and Crossref yourself - the repository or publisher handles this for you.\n\n### PIDs for People\n\n[ORCID (Open Researcher and Contributor ID)](https://orcid.org/) provides unique identifiers for researchers.\nAn ORCID iD is a 16-digit number that distinguishes you from every other researcher, even those with identical names.\n\nFor comprehensive guidance on ORCID, see our [dedicated chapter on ORCID](#cm-citable-orcid).\n\nKey benefits:\n- Collect all your research outputs in one place, regardless of where they're published\n- Link your work across name changes or institutional moves\n- Automatically populate author information when submitting to journals and funders\n- Ensure proper attribution when others cite your work\n\n### PIDs for Organizations\n\n[ROR (Research Organization Registry)](https://ror.org) provides identifiers for research institutions.\nEvery university, research institute, and funding organization can have a unique ROR ID.\n\nExamples:\n- The Alan Turing Institute: `https://ror.org/03f0awy98`\n- Max Planck Society: `https://ror.org/01hhn8329`\n- Himalayan Biodiversity Network: `https://ror.org/03b57r242`\n\nROR IDs appear in research output metadata to indicate:\n- Where researchers are affiliated\n- Which institutions collaborated on a project\n- Where research was conducted\n\n### PIDs for Funders\n\nThe Crossref Funder Registry and ROR provides identifiers for funding organizations.\nThese enable researchers to formally cite the grants that supported their work, not just acknowledge them in text.\n\nThis creates a traceable connection between:\n- The grant that funded the research\n- The researchers who received funding\n- The research outputs that resulted\n\nFor more on citing funding, see the section on [connection metadata in linking research outputs](#cm-citable-linking-funding).\n\n### How These Systems Work Together\n\nThese PID systems don't operate in isolation - they're designed to interconnect:\n\n- A **dataset** (DataCite DOI) can be linked to:\n  - The **researchers** who created it (ORCIDs)\n  - Their **institutions** (ROR IDs)\n  - The **grants** that funded it (Funder IDs)\n  - The **article** that describes it (Crossref DOI)\n  - The **software** used to analyze it (DataCite DOI)\n\nThis creates a rich, queryable network of relationships that makes research more discoverable and its impacts more measurable.\nFunders, institutions, and researchers can trace the full story of research from funding to outputs to reuse.\n\n(rr-rdm-pid-fair)=\n## PIDs and FAIR Principles\n\nPersistent identifiers are not just convenient - they're fundamental to making research [FAIR (Findable, Accessible, Interoperable, and Reusable)](#rr-rdm-fair).\n\n\n### Findable\n\n**PIDs make research objects findable in multiple ways:**\n\n- **Unique identification**: Every research output gets a globally unique identifier that can't be confused with anything else\n- **Metadata harvesting**: PID providers collect standardized metadata that can be searched across millions of research outputs\n- **Search engines**: Services like [DataCite Metadata Search](https://search.datacite.org/), [Google Dataset Search](https://datasetsearch.research.google.com/), and [BASE](https://www.base-search.net/) aggregate PID metadata to enable discovery\n- **Discipline-specific discovery**: PIDs allow community repositories to expose their holdings to broader search systems\n\nWhen you assign a PID to a dataset, it becomes discoverable not just on the repository where it lives, but across the entire scholarly ecosystem.\n\n### Accessible\n\n**PIDs point to access methods, even for restricted resources:**\n\n- PIDs resolve to a **landing page** that describes the resource and how to access it\n- Even if data cannot be openly shared (for example, due to privacy concerns), the metadata describing it can be\n- Landing pages explain access conditions, embargo periods, or application processes\n- The PID remains valid even if access conditions change over time\n\nThis aligns with the principle that data should be \"as open as possible, as closed as necessary.\"\nSee our chapters on [open data](#rr-open-data) and [sharing data](#rr-rdm-sharing) for guidance on when and how to share research outputs.\n\n### Interoperable\n\n**PIDs use standard systems that work across platforms:**\n\n- All DOIs use the same resolution infrastructure, regardless of who issued them\n- Standardized PID metadata formats enable automatic data exchange between systems\n- PIDs can be embedded in other metadata formats, citations, and databases\n- Relationship types (see [linking research outputs](#cm-citable-linking)) allow expressing connections in machine-readable ways\n\nThis means tools and services can be built on top of PID infrastructure, creating value beyond what any single repository could provide.\n\n### Reusable\n\n**PIDs enable persistent citation and credit:**\n\n- Formal citation of research outputs beyond traditional publications\n- Track reuse and impact through citation networks\n- Clear attribution enables ethical reuse\n- Versioning through PIDs allows citing specific versions while maintaining connections to the conceptual work\n\nWhen combined with open [licenses](#rr-licensing), PIDs make it clear what can be reused and by whom.\n\n(rr-rdm-pid-metadata)=\n## PID Metadata\n\nWhen a PID is created, it's accompanied by **metadata** - structured information about the resource the PID identifies.\nThis metadata is what makes research discoverable and understandable.\n\n### What is PID Metadata?\n\nPID metadata is:\n- **Machine-readable**: Formatted so computers can automatically process and exchange it\n- **Standardized**: Uses common field names and structures across all resources\n- **Cross-domain**: Works for any type of research output, not just one discipline\n- **Publicly accessible**: Available even if the resource itself has restricted access\n\n### Core PID Metadata Properties\n\nWhile different PID providers have their own schemas, core properties typically include:\n\n**Essential (usually required):**\n- **Identifier**: The PID itself (for example, DOI)\n- **Creator**: Who created the resource\n- **Title**: What the resource is called\n- **Publisher**: Who is making it available (often the repository)\n- **Publication Year**: When it was made available\n- **Resource Type**: What kind of output it is (Dataset, Software, Preprint, and so on)\n\n**Important for discoverability:**\n- **Description**: What the resource is about (abstract or summary)\n- **Subject/Keywords**: Topics covered\n- **Rights**: License and reuse terms\n- **Version**: Which version this is\n- **Language**: What language(s) it's in\n\n**For linking and attribution:**\n- **Related Identifiers**: Links to other research outputs (papers, data, code)\n- **Funding References**: Grants that supported the work\n- **Contributors**: Others who contributed (with ORCID iDs)\n- **Affiliation**: Institutional affiliations (with ROR IDs)\n\nFor comprehensive guidance on metadata, see our [chapter on documentation and metadata](#rr-rdm-metadata).\n\n### Relationship to Domain-Specific Metadata\n\nIt's important to understand that PID metadata and domain-specific metadata serve different but complementary purposes:\n\n**PID metadata enables discovery:**\n- Works across all research domains\n- Optimized for search engines and aggregators\n- Minimal barrier to entry\n- Focus on core bibliographic information\n\n**Domain-specific metadata enables reuse:**\n- Follows community standards for a specific field (for example, Brain Imaging Data Structure for neuroscience)\n- Contains detailed technical specifications\n- May include specialized vocabularies or ontologies\n- Critical for understanding and working with the data\n\n**Both are needed:**\nThink of PID metadata as the catalog card that helps someone find a book in a library, while domain-specific metadata is the detailed table of contents and index inside the book.\n\nOur [metadata chapter](#rr-rdm-metadata) discusses resources like [FAIRsharing](https://fairsharing.org/) that help you find the right domain-specific standards for your field.\nWhen you deposit in a repository, you'll typically provide both:\n1. Core PID metadata through the repository's submission form\n2. Domain-specific metadata as part of your documentation and data files\n\n### Metadata Completeness: Minimal vs. Rich\n\nWhile some fields are required to create a PID, providing **rich metadata** substantially increases the value of your research outputs:\n\n**Minimal PID metadata** (required fields only) allows:\n- Basic discovery through search\n- Formal citation in references\n- Persistent access to the resource\n\n**Rich PID metadata** (many optional fields completed) enables:\n- More precise search and filtering\n- Understanding context without accessing the resource\n- Automated connections to related work\n- Better assessment of relevance and reusability\n- Tracking funding impact and institutional contributions\n\n**Example of minimal vs. rich metadata:**\n\nMinimal:\n```\nTitle: Field Survey Data\nCreator: J. Smith\nPublisher: Generic Repository\nYear: 2024\nType: Dataset\n```\n\nRich:\n```\nTitle: Soil Carbon Content Survey Data from Temperate Grasslands 2022-2023\nCreators: Jane Smith (ORCID: 0000-0002-1234-5678)\n          Alex Johnson (ORCID: 0000-0003-8765-4321)\nAffiliations: University of Example (ROR: 02abcdef9)\nPublisher: Field Science Data Repository\nYear: 2024\nType: Dataset\nDescription: Soil samples collected monthly from 15 grassland sites in\n             Oxfordshire, UK, analyzed for total organic carbon using\n             loss-on-ignition method. Part of the Grassland Carbon\n             Monitoring project.\nSubjects: Soil Science; Carbon Cycle; Grassland Ecology\nRelated Identifiers:\n  - IsSupplementTo: doi:10.1234/example-paper (the paper)\n  - IsCompiledBy: doi:10.5281/zenodo.1234567 (the analysis code)\nFunding: Natural Environment Research Council (Grant NE/X012345/1)\nRights: Creative Commons Attribution 4.0 International\nVersion: 1.0\nGeolocation: Oxfordshire, UK (51.7°N, 1.2°W)\n```\n\nThe rich metadata tells a much more complete story and enables many more discovery pathways.\n\n### How Repositories Generate PID Metadata\n\nWhen you deposit research outputs in a **trusted repository** (see [our chapter on repositories](#rr-rdm-repository)), the repository handles PID creation and much of the metadata collection automatically:\n\n1. **You provide information** through the repository's upload form (title, description, creators, and so on)\n2. **The repository generates** a PID (usually a DOI) through its relationship with DataCite or Crossref\n3. **The repository constructs** properly formatted PID metadata from your information\n4. **The repository registers** the PID and metadata with the PID provider\n5. **The PID provider makes** the metadata publicly searchable through their services\n6. **The metadata is harvested** by aggregators and discovery services\n\nThis automated process is one of the key benefits of using established repositories rather than just hosting files on a personal or institutional website.\n\nThe repository also typically creates a **landing page** for your PID that displays the metadata in human-readable format and provides access to the resource itself.\n\n(rr-rdm-pid-practical)=\n## Practical Guidance\n\n### When to Create PIDs for Your Research Outputs\n\nPIDs are valuable for nearly any research output that you want others to be able to find, access, and cite.\nConsider creating PIDs when:\n\n**During research planning:**\n- Data Management Plans that you want to cite in reports\n- Registered protocols or preregistrations (see [registered reports](#cm-dif-articles-registered-reports))\n- Experimental or computational protocols\n\n**During research execution:**\n- Raw datasets collected\n- Processed or cleaned datasets\n- Interim analysis results\n- Computational notebooks documenting analysis steps\n- Software or code developed for the project\n\n**When preparing publications:**\n- Preprints of articles\n- Final datasets supporting publications\n- Analysis code to reproduce results\n- Presentations or posters about the work\n\n**After publication:**\n- Updated versions of datasets or code\n- Educational materials derived from your research\n- Null results or negative findings\n\nPIDs are not just for \"final\" outputs - see our [chapter on research objects](#cm-ro) for more on sharing throughout the research lifecycle.\n\n### Repository-Based vs. Direct PID Minting\n\nThere are two main ways to obtain PIDs:\n\n**Repository-based (recommended for most researchers):**\n- **How it works**: Upload your output to a trusted repository, which creates the PID automatically\n- **Advantages**:\n  - Simpler - repository handles all technical details\n  - Includes storage and preservation\n  - Repository maintains the PID even if you move institutions\n  - Established community trust\n- **Examples**: [Zenodo](https://zenodo.org/), [Figshare](https://figshare.com/), [Dryad](https://datadryad.org/), [OSF](https://osf.io/), institutional repositories\n\nSee our [chapter on selecting repositories](#rr-rdm-repository) for guidance on choosing the right one.\n\n**Direct minting (for specialized cases):**\n- **How it works**: Your institution or organization registers PIDs directly with a PID provider\n- **Advantages**:\n  - More control over the process\n  - Can integrate with custom systems\n  - Useful for large-scale automated workflows\n- **Considerations**:\n  - Requires institutional infrastructure and expertise\n  - Your institution must be a member of the PID provider\n  - You're responsible for maintaining the PID and hosting the resource\n  - May use services like [DataCite Fabrica](https://doi.datacite.org/)\n\nFor most researchers, repository-based PID creation is the appropriate choice.\n\n### Understanding DOI Resolution\n\nWhen you or someone else uses a DOI, here's what happens:\n\n1. **A DOI is shared** (in a citation, link, or reference): `doi:10.5281/zenodo.3332807`\n2. **It's formatted as a URL** to make it clickable: `https://doi.org/10.5281/zenodo.3332807`\n3. **The doi.org resolver** looks up where the resource currently lives\n4. **You're redirected** to the resource's current location (the landing page at Zenodo, in this example)\n5. **The landing page** shows metadata and provides access to the resource itself\n\nThis is why DOIs should always be expressed as full URLs in online contexts:\n- ✓ Good: `https://doi.org/10.5281/zenodo.3332807`\n- ✗ Less useful: `10.5281/zenodo.3332807` (not clickable)\n- ✓ Also good in text: `doi:10.5281/zenodo.3332807` (clear it's a DOI)\n\n### Maintaining PIDs\n\nOne of the key advantages of using repository-based PIDs is that you don't need to maintain them yourself.\nThe repository ensures:\n\n- **The PID continues to resolve** even if the repository's website is redesigned\n- **The metadata stays accurate** and can be updated if needed\n- **The resource remains accessible** according to the preservation policies\n- **The landing page is maintained** with current access information\n\nIf you need to update metadata (for example, to add a link to a publication that cites your data), contact the repository where the resource is hosted.\nMost repositories provide forms or help systems for metadata updates.\n\n### What if a Resource Truly Disappears?\n\nIn rare cases, a resource may need to be removed (for example, if it's found to contain sensitive data that shouldn't have been shared).\nEven then, the PID is not deleted:\n\n- The PID continues to resolve to a **tombstone page**\n- The tombstone explains why the resource is no longer available\n- Any remaining metadata that can be safely shared is displayed\n- This preserves the scholarly record and explains what happened\n\nThis is much better than a link that simply returns \"404 Not Found\" - it provides context and maintains the integrity of the citation network.\n\n(rr-rdm-pid-connecting)=\n## Connecting Research Through PIDs\n\nPIDs are most powerful when they're used to connect related research outputs together.\nFor detailed guidance on how to link your research outputs, versions, and funding through PID metadata, see our [chapter on linking research objects](#cm-citable-linking).\n\nKey connections you can make:\n- Link datasets to the papers that describe them\n- Connect different versions of the same resource\n- Tie research outputs to the grants that funded them\n- Associate outputs with related resources like protocols or analysis code\n\n(rr-rdm-pid-resources)=\n## Additional Resources\n\n### Learn More About PIDs\n\n- [PIDforum community](https://www.pidforum.org/) - News and discussions about persistent identifiers\n- [DataCite Support](https://support.datacite.org/) - Technical documentation and help\n- [Crossref Resource Center](https://www.crossref.org/documentation/) - Documentation for Crossref services\n- [ORCID Support](https://support.orcid.org/) - Help with ORCID iDs\n- [PIDs 101 Webcast](https://www.youtube.com/watch?v=gnomtSUbi9Y) - Webinar introducing PIDs\n\n\n### PID Services and Tools\n\n- [doi.org](https://doi.org) - The main DOI resolver\n- [DataCite Metadata Search](https://search.datacite.org/) - Search across millions of research outputs with DataCite DOIs\n- [Crossref Metadata Search](https://search.crossref.org/) - Search publications with Crossref DOIs\n- [ORCID Registry](https://orcid.org/) - Look up researchers and their works\n- [ROR Registry](https://ror.org) - Search for research organizations\n\n### Related Chapters in The Turing Way\n\n- [Making Research Objects Citable](#cm-citable) - How to cite and get credit for all your research outputs\n- [FAIR Principles](#rr-rdm-fair) - Making research Findable, Accessible, Interoperable, and Reusable\n- [Data Repositories](#rr-rdm-repository) - Choosing where to deposit research outputs\n- [Documentation and Metadata](#rr-rdm-metadata) - How to describe your research effectively\n- [Research Objects](#cm-ro) - Sharing research throughout the lifecycle\n- [Linking Research Objects](#cm-citable-linking) - Creating connections between related outputs\n\n:::{note}\nFunding: This chapter was originally contributed as part of the dissemination efforts by the [Implementing FAIR Workflows project](https://doi.org/10.54224/20568), funded by [Templeton World Charity Foundation](https://www.templetonworldcharity.org/).\n:::\n"
  },
  {
    "path": "book/website/reproducible-research/rdm/rdm-repository.md",
    "content": "(rr-rdm-repository)=\n# Data Repositories\n\nA repository is a place where digital objects can be stored and shared with others (see also [this repository definition](https://book.the-turing-way.org/afterword/glossary.html#term-Repository)).\n\nData repositories provide access to academic outputs that are reliably accessible to any web user (see the [OpenDOAR inclusion criteria](https://v2.sherpa.ac.uk/opendoar/about.html)). \nRepositories must earn the trust of the communities they intend to serve and demonstrate that they are reliable and capable of appropriately managing the data they hold ({cite:ps}`Lin2020trust`).\n\n```{figure} ../../../figures/data-repo.*\n---\nheight: 500px\nname: data-repo\nalt: A tree representing a general data repository, with squirrels symbolizing researchers gathering FAIR data, which can be open or restricted. Next to the tree are examples showing how different academic disciplines and institutions have unique types of data repositories, and how FAIR data may differ when obtained from general or domain-specific repositories.\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence.  [](10.5281/zenodo.13882307).\n```\n\nLong-term archiving repositories are designed for secure and permanent storage of data, ensuring data preservation over extended periods.\nThis differs from platforms like GitHub and GitLab which primarily serve as collaborative development tools, facilitating version control and project management in a more dynamic and transient environment.\nPlatforms such as GitHub and GitLab do not assign persistent identifiers to repositories, and their preservation policies are more flexible compared to those of data repositories. \n\nThis chapter includes:\n\n- Introduction to repositories\n- An overview of how repositories facilitate you to comply to the FAIR principles\n- How to select an appropriate repository\n- An introduction to the Open Science Framework\n\n(rr-rdm-repository-FAIR)=\n## Repositories and FAIR\n\nSelecting an appropriate repository for your research outputs has many benefits:\n- It helps make your Research Objects more [FAIR](#rr-rdm-fair). This is achieved through:\n    - Repositories assign a Persistent Identifier (PID) such as a DOI to your Research Objects, which makes them findable and citable (see [](#cm-citable-cite)).\n    See our [chapter on persistent identifiers](#rr-rdm-pid) to understand how PIDs work and why they're essential for FAIR research.\n    - Repositories use metadata standards in describing your Research Object, which ensures that other people can find it using search engines.\n    - Repositories add a licence to the Research Objects.\nA [license](#rr-licensing) describes to potential reusers of your work what they are allowed to do with it. \n    - Repositories provide documentation for Research Objects.\nThis can be in the form of [READMEs](#rr-rdm-readme) and/or wikis that provide a description of your project and why it might be relevant to people.\n    - Encouraging widely-used file formats.\nMany repositories have restrictions on the file formats used to ensure the sustainability of Research Objects.\nSome file formats (especially proprietary ones with a limited user base) can become deprecated.\n- It allows to determine the levels of access to Research Objects.\nAs covered in [](#rr-open-data-barriers), there are good reasons to not to make all Research Objects completely open.\nHowever, it's still worthwhile to at least open the metadata and provide an option for people to obtain access to the actual Research Objects if they have certain credentials or if they have been given explicit access.\nThat way, your work will still be FAIR (because the metadata are findable and there is an access procedure in place), as well as and secure (because you can control who has access).\n    - Restricting access and storing data on European servers can help to [manage sensitive data](#pd-sdpm)\n\n(rr-rdm-repository-supplemental)=\n## Why not the supplemental materials?\n\nSupplemental materials are not following the FAIR principles - as there is no separate DOI assigned to the supplemental materials which makes it difficult to retrieve these materials. \nNext to supplemental materials not being aligned with the FAIR principles, there are other reasons why a data repository is a better solution: \n\n- Data control: Supplementary materials cannot be updated, unlike materials available at data repositories.\n- Interoperability: If publishers only allow text and PDF formats it hampers data sharing and it will be difficult to reuse the data.\n- Availability: Supplementary materials are difficult to access if the article is behind the paywall, and links to supplementary materials can break (since they do not have their own persistent identifier).\n- Impact: Data and code should be a primary research output instead of being hidden in the supplementary materials.\n- Publisher requirements: Some publishers recommend using a data repository instead.\n- Size limits: There may be size limits in place of how large or how many supplementary materials can be shared.\n\n## Why not \"data available upon request\"? \n\nSeveral studies indicate that \"data available upon request\", is not actually available upon request!\n\nWe encourage you to explore some of the existing research on this question.\nWe extract key quotes from a selection of studies here:\n- _\"Only \"38% of the researchers sent their data immediately or after reminders\"_ [Vanpaemel et al. 2015](http://dx.doi.org/10.1525/collabra.13)\n- _\"We received only one of ten raw data sets requested.\"_ [Savage and Vickers 2009](https://doi.org/10.1371/journal.pone.0007078)\n- _\"..less than one-third of the contacted authors sent us the requested data.\"_ [Dutra dos Reis et al. 2021](https://doi.org/10.1080/08989621.2021.1910029)\n- _\"73% of the authors did not share their data._\" [Wicherts et al. 2006](https://doi.org/10.1037/0003-066X.61.7.726)\n- _\"..the odds of a data set being extant fell by 17% per year. \nIn addition, the odds that we could find a working e-mail address for the first, last, or corresponding author fell by 7% per year.\"_ [Vines et al. 2014](http://dx.doi.org/10.1016/j.cub.2013.11.014)\n- _\"We received no response to 41.3% of our data requests.\"_ - [Tedersoo et al. 2021](https://doi.org/10.1038/s41597-021-00981-0)\n- _\"..only 7/157 research articles shared their data sets, 4.5%.\"_ [Rowhani-Farid and Barnett 2016](http://dx.doi.org/10.1136/bmjopen-2016-011784)\n- _“Data were recoverable online or through direct data requests for 30% of this sample.\nData recovery declines exponentially with time since publication, halving every 6 years,….\"_ [Minocher et al. 2021](https://doi.org/10.1098/rsos.210450)\n- _\"Among articles stating that data was available upon request, only 17% shared data upon request.\"_ [Hussey 2023](https://doi.org/10.31234/osf.io/jbu9r)\n- _\"..only 123 (6.8%) provided the requested data.\"_ - [Gabelica et al. 2022](https://doi.org/10.1016/j.jclinepi.2022.05.019)\n- _\"..we found raw data/code for 133 (47%) of those 283 preprints (15% of all analyzed preprint articles)._ [Strcic et al. 2022](https://doi.org/10.1007/s11192-022-04346-1)\n- only one (0.8%) out of 130 analyzed articles contained a direct link to the analyzed data [Gorman 2020](https://doi.org/10.1007/s11948-020-00203-7)\n\nUnfortunately, journals often [do not mandate data sharing](https://metaresearch.nl/blog/2026/2/3/promised-data-unavailable-im-sorry-maam-theres-nothing-we-can-do) or do not enforce data sharing where these policies are in place. \n\n(rr-rdm-repository-select)=\n## Selecting an appropriate repository\nThis chapter outlines some of the crucial functionalities that you should look out for when picking where to share your data, code, methods, hardware, slides, or any other Research Object.\n\nData should be submitted to domain or discipline specific, community recognised, repository where possible. \nA [general purpose repository](#rr-rdm-repository-types-general) can be used when there are no suitable discipline specific repositories. \nDiscipline specific data repositories are likely to have more functionalities for the type of data that you would like to share, as well as community standards that you can adhere to make the data more [FAIR](#rr-rdm-fair).\nWhy sharing data is a good idea is covered in [](#rr-rdm-sharing-motivations) and [](#rr-open-data).\n\nThe choice of repository can depend on multiple factors:\n\n- Your discipline\n- Type of digital output\n- File size\n- Policies/requirements from institutions, national policies, funding agencies\n- Access restrictions\n\nYou can search for relevant repositories on [re3data](https://www.re3data.org/) and [FAIRsharing](https://fairsharing.org/). \nHowever, a search will likely result in a long list of repositories, which you will need to narrow down. \nThe following questions may help you with that:\n\n- Is the data repository discipline-specific and community-recognised? \nDoes it use the recognised standards in my discipline?\n- Is the data repository known by the research community?\n- Are others using the data repository to share their data?\n- Has a data repository been specified by my funder/publisher/institution?\n- What are the file size requirements and limitations?\n- What are the costs for data sharing?\n- What data formats are allowed? \nWill it take the data that you want to share?\n- Does it provide a [persistent identifier](#rr-rdm-pid-ecosystem), for example a Digital Object Identifier (DOI)?\n- Does it provide the right type of access control (restricted access/embargoes) that suits the sharing conditions of the data? \n- Is there support available on how to curate the data/metadata?\n\nSee the [ARDC's Guide to choosing a data repository](https://ardc.edu.au/resource/guide-to-choosing-a-data-repository) or the [DCC checklist for evaluating data repositories](https://www.dcc.ac.uk/guidance/how-guides/where-keep-research-data) for more information. \n\n(rr-rdm-repository-types)=\n## Types of repositories\n\nIf your discipline does not have a disciplinary specific repository you can make use of several general repositories. \nBelow follows a (non-exhaustive) list of these different types of repositories: \n\n(rr-rdm-repository-types-general)=\n### General purpose repositories\n\n- [Zenodo](https://zenodo.org/) (see this [Data Umbrella webinar](https://www.youtube.com/watch?v=eChOfh8t04k) for practical guidance on Zenodo)\n- [Figshare](https://figshare.com/)\n\nFor a detailed comparison of general purpose repositories including file size limits, versioning features, access control options, and other key criteria, see the [Generalist Repository Comparison Chart](https://doi.org/10.5281/zenodo.11105429).\n\n### Project repositories\n\n- [Open Science Framework (OSF)](https://osf.io/)\n- [Research Equals](https://www.researchequals.com/)\n- [Octopus](https://www.octopus.ac/)\n- [CRAN](https://cran.r-project.org/) for R-Packages\n\n### Generic data repositories\n\n- [Dryad](https://datadryad.org/stash)\n- [Dataverse](https://dataverse.org/)\n- [4TU.ResearchData](https://data.4tu.nl/)\n- [UK Data Service](https://ukdataservice.ac.uk/)\n\n### Institutional or National repositories\n\nMany countries and/or institutions also provide access to repositories that you could use. \nCheck with your local Research Data Management support to see if this available at your institute, or try to search for such a national repository using [re3data](https://www.re3data.org/) and [FAIRsharing](https://fairsharing.org/). \n\n## Recommended Repositories \n\nSeveral lists of Recommended Repositories by publishers exist: \n\n- [PLOS ONE Recommended Repositories](https://journals.plos.org/plosone/s/recommended-repositories)\n- [Springer Nature Data repository guidance](https://www.springernature.com/gp/authors/research-data-policy/recommended-repositories)\n- [Elsevier's Public repositories to store and find data](https://www.journals.elsevier.com/data-in-brief/policies-and-guidelines/public-repositories-to-store-and-find-data)\n\n(rr-rdm-repository-osf)=\n## Example: Open Science Framework (OSF) \n\nThe OSF is a free open-source software project that facilitates open collaboration in science research. \nOSF is way more than a data repository or an archive; it is a collaboration tool which can be used by research teams to work on projects privately or openly, similar to GitHub. \nThis case study highlights OSF as one of the  repositories *for everything* that you can choose to store your research output long term and make it citable through getting a persistent identifier.\nAn example of what you could share on the OSF is a [](#rr-compendia).\n[Get started with the OSF](https://help.osf.io/article/342-getting-started-on-the-osf) by using the introduction on their website. \n\n### OSF access management\nOSF helps to control levels of access you want to give to different people. \nThis can be achieved through OSF folder structure that allows to assign different privacy settings to different folders within one project. \nIn OSF terminology, these folders with custom privacy settings are called *components*.\nOSF has servers in Europe which allows compliance with the [GDPR](#pd-sdp-personal-policies).\n\n### OSF and FAIR principles\nThe following functionality of OSF helps to make such a folder [FAIR](#rr-rdm-fair):\n\n- In addition to its own unique, persistent URLs, OSF offers DOIs for public folders.\n- OSF allows to add metadata to your folder.\nProject metadata fields include at Title, Description, License, Tags and Persistent Identifiers.\nIt is possible to add more metadata into the project Wiki or submit in form of a separate file.\n- It is possible to add license to a project to specify how others are allowed to copy, distribute, and make use of this work. \n- OSF provides detailed landing pages to document projects.\nEach *component* has its own wiki that allows to add reach documentation on multiple levels.\n- File formats are not limited by OSF; it is your decision which format to use to make your project future proof. \n\n### Additional OSF resources\n\n- [Introduction to OSF](https://vimeo.com/668636108) by Dr Amy Gillespie \n- [Collaborating, sharing, and preregistering through OSF](https://www.youtube.com/watch?v=48Xy62spsLI) by Anita Eerland.\n\n"
  },
  {
    "path": "book/website/reproducible-research/rdm/rdm-resources.md",
    "content": "(rr-rdm-resources)=\n# Resources\n\n(rr-rdm-resources-learn)=\n## What to Learn Next\n\nIf you have not read the chapters on [](#rr-open) and [](#cm-citable) yet, you might want to read it now for more context on how Research Data Management supports Open Research and how these practises can result in getting attribution for your work.\n\n(rr-rdm-resources-reading)=\n## Further Reading\n\n- [Detailed guidance on sharing personal or sensitive data from the UK Data Service](https://www.ukdataservice.ac.uk/manage-data/legal-ethical/consent-data-sharing.aspx)\n- [An overview of storage solutions and their advantages and disadvantages](https://web.archive.org/web/20180605213316/http://datasupport.researchdata.nl/en/start-the-course/iii-the-research-phase/storing-data/)\n- [Reproducible research](https://coderefinery.github.io/reproducible-research/) by Code Refinery\n- [UKRN Open Research Primers](https://www.ukrn.org/primers/)\n- [Eight principles of good data management](https://doi.org/10.31234/osf.io/5tmfe) by {cite:ps}`Henry2021RDM`\n- [Some simple guidelines for effective data management](https://doi.org/10.1890/0012-9623-90.2.205) \n- [Research data management and services](https://doi.org/10.5860/crln.78.5.274)\n- [Data Management in Large-Scale Education Research](https://datamgmtinedresearch.com/) by Crystal Lewis\n- [Eight Principles of Good Data Management](https://www.teaguehenry.com/strings-not-factors/2021/2/21/eight-principles-of-good-data-management)\n- [Bare Necessities of Data Management](https://cghlewis.com/blog/project_beginning/) by Crystal Lewis\n\n(rr-rdm-resources-resources)=\n## Resources\n\n### General\n\n- [The Research Data Management Workbook](https://doi.org/10.7907/z6czh-7zx60)\n- [FAIR Cookbook](https://faircookbook.elixir-europe.org/content/home.html)\n- [ELIXIR Research Data Management Kit (RDMkit)](https://rdmkit.elixir-europe.org/)\n- [Research data management UK data service](https://ukdataservice.ac.uk/learning-hub/research-data-management/)\n- [Data resources](https://chanzuckerberg.github.io/open-science/data_sharing/overview)\n- [Resources by the Utrecht University Research Data Management support team](https://zenodo.org/communities/uu-rdm-support/)\n- [Ten Common Data Management Mistakes](https://cghlewis.com/talk/sssp_ecf/) & [A Curated Collection of Data Management Resources](https://cghlewis.com/blog/data_mgmt_resources/) by Crystal Lewis \n- [Data Management for Psychological Science: A Crowdsourced Syllabus](https://docs.google.com/document/d/1z15bL9cP84re6d4zdkO60q06lnknnN3xEktN7GnLFFQ/edit)\n- [ORION Open Science Factsheets](https://www.orion-openscience.eu/publications/training-materials/201808/factsheets)\n- [Reproducible Data Science](https://ecorepsci.github.io/reproducible-science/index.html)\n- [Research Reproducibility and Open Science](https://guides.uflib.ufl.edu/reproducibility/lessons)\n- [PRESENT: research project management](https://www.youtube.com/watch?v=tBGLRXUbCrU&t=524s) by Barbara Vreede\n- [NLM Reproducibility Workshop](https://nlm-repro.github.io/)\n- [A practical guide for transparency in psychological science: Example OSF Project](https://osf.io/xf6ug/)\n- [Software sustainability institute blogpost on training resources](https://www.software.ac.uk/blog/2023-06-20-signpost-training-resources)\n- [Make Your Research Reproducible: Practical Guide for Researchers](https://doi.org/10.5281/zenodo.11146986)\n- [DANS RDM/FAIR FAQ](https://dans.knaw.nl/en/training-faq/)\n- [Data curation primers](https://datacuration.network/outputs/data-curation-primers/) by the Data Curation Network\n- [A Curated Collection of Data Management Resources](https://cghlewis.com/blog/data_mgmt_resources/)\n\n### Podcasts\n\n- Podcast: Within and Between: [S2E13](https://open.spotify.com/episode/6klHxGUi0v5m5pTFUHbkC4?si=f681d9091fd0490d&nd=1) & [S2E14](https://open.spotify.com/episode/27SXLCsjhtvh4LyfaRIG92?si=9ab8715953584d46&nd=1) on Data Management\n- FAIR Data Podcast: [Frederique Belliard](https://open.spotify.com/episode/7pSo97wP8leDKC4wNP57aB?si=544df27cfe3145a5) & [Sharif Islam](https://open.spotify.com/episode/4kYTe89xys1oeiTZtwE18j?si=e3bf0139dbeb4f08)\n- The Turing Podcast: [Reproducible data science: How hard can it be?](https://open.spotify.com/episode/1OVxFUA5UyIfMSCd842wjD?si=64652726c0314060)\n- Down to Earth: A podcast for Geoscientists by Geoscientist: [S4E02: Dealing with Data: Infrastructure and Standards](https://open.spotify.com/episode/6N7aDfsb4KMaYjSEDpkJ80?si=61a65b5423f7435a) & [S4E08: Demystifying the Scientific Process with Data Management, FAIR and Science Communication](https://open.spotify.com/episode/0nt1rBvbjxmJybCYEKxcil?si=14876c5f6a094594)\n- [Access for Who?](https://africandigitalheritage.org/access-for-who-a-podcast-on-digital-restitution/)\n  - [Episode 2: Digital Collections (Part I)](https://open.spotify.com/episode/4Pz76LeJRCtMOHIXRh37U7?si=a39cf5dd3d84415b)\n  - [Episode 3: Ownership and Intellectual Property](https://open.spotify.com/episode/2GZfNjPiuQQnxzADa9vqvV?si=d77549abf8fa4aa6)\n  - [Episode 4: African Data Futures](https://open.spotify.com/episode/58pG4XOChe2ewzCk0Igryi?si=2c37d776de6e4d2d)\n\n### Policies\n- [Research Data Management and Open Science Policy Faculty of Geosciences](https://geo-data-support.sites.uu.nl/faculty-rdm-policy/) ([pdf](https://geo-data-support.sites.uu.nl/wp-content/uploads/sites/504/2025/05/ResearchDataManagement_policy_Geosciences_2025_V1.0.pdf))\n\n### Presentations/Slides and videos\n\n- [Slides on Research Data Management](https://doi.org/10.5281/zenodo.4048591)\n- [Slides: Practicalities of Data Handling](https://doi.org/10.5281/zenodo.5078264)\n- [Slides: Research Data Management in the Life Sciences](https://osf.io/mvrny/)\n- [Rethinking Research Data by Kristin Briney ](https://www.youtube.com/watch?v=dXKbkpilQME)\n- [Research Data Management](https://www.youtube.com/watch?v=QRy2uGTpEcQ) by TU Delft Open Science MOOC\n\n### Tools\n\n- [Overview of RDM tools](https://rdmkit.elixir-europe.org/index.html)\n\n### Webinars & Panels\n\n- [Webinar: Know Moore About Research Data Management](https://www.youtube.com/watch?v=NCUT6MA-zVA)\n- [Webinar: Introduction to Research Data Management](https://www.youtube.com/watch?v=duDCcV8xhQo)\n- [Webinar: Data sharing and reproducibility by Dr Laurence Hunt](https://vimeo.com/668640629)\n- [Webinar: Publishing and citing data in practice by Jez Cope](https://youtu.be/PpMOkTnBMlI)\n- [Webinar: 7th Horizon Europe Open Science requirements in practice](https://www.youtube.com/watch?v=wcuuW-cWEIM)\n- [Talking Data Equity by We All Count ](https://www.youtube.com/@weallcount), for example:\n  - [Talking Data Equity with Dr. Kim Van Der Woerd and Sofia Vitalis ](https://www.youtube.com/watch?v=I47k-TDL-8U)\n  - [Talking Data Equity with Innovation Network ](https://www.youtube.com/watch?v=csESRjmleGE)\n  - [Talking Data Equity with Dr. Wendy Castillo](https://www.youtube.com/watch?v=M3powZy_g28)\n  - [Talking Data Equity with Dr. Kari L. Jordan](https://www.youtube.com/watch?v=_wQ0t6JDgJw) \n  - [Talking Data Equity with Dr. Helen Kara ](https://www.youtube.com/watch?v=ymQ4xYx3e94)\n  - [Talking Data Equity with Isabel Algrant & Amy Hawn Nelson from AISP](https://www.youtube.com/watch?v=fJCqK-mM5ng) \n\n\n### Courses\n- [Essentials 4 Data Support](https://danstraining.moodlecloud.com/course/view.php?id=11)\n- [Research Data Management and Sharing](https://www.coursera.org/learn/data-management/)\n- [Data Management for Psychological Science: A Crowdsourced Syllabus](https://docs.google.com/document/d/1z15bL9cP84re6d4zdkO60q06lnknnN3xEktN7GnLFFQ/edit?pli=1&tab=t.0)\n\n\n### Research Data Management Toolkits\n\n- [JISC research data management toolkit](https://www.jisc.ac.uk/guides/rdm-toolkit)\n- [ELIXIR research data management toolkit](https://rdm.elixir-europe.org/index.html)\n- [University of New Hampshire data management toolkit](https://libraryguides.unh.edu/datamanagement)\n- [Digital Research Skills Australasia](https://dresa.org.au/)\n- [The Data Ethics Canvas](https://theodi.org/insights/tools/the-data-ethics-canvas-2021/)\n\n"
  },
  {
    "path": "book/website/reproducible-research/rdm/rdm-sharing.md",
    "content": "(rr-rdm-sharing)=\n# Sharing and Archiving Data\n\n(rr-rdm-sharing-motivations)=\n##  Motivations For Sharing Data\nThere are many reasons to share your research data publicly.\n\n1. To allow the possibility to fully reproduce a scientific study.\n2. To prevent duplicate efforts and speed up scientific progress.\nLarge amounts of research funds and careers of researchers can be wasted by only sharing a small part of research in the form of publications.\n3. To facilitate collaboration and increase the impact and quality of scientific research.\n4. To make results of research openly available as a public good, since research is often publicly funded.\n\nYou can read more about why data should be available, and why some data should remain closed, in the [Open Data section](#rr-open-data).\n\n```{figure} ../../../figures/birds-of-open-data.*\n---\nheight: 400px\nname: birds-of-open-data.*\nalt: Two birds in a fountain of open data. One asks \"You mind if I reuse this data?\" The other answers \"Go ahead! We can even work together on it!\"\n---\nBirds of Open Data. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. [](doi:10.5281/zenodo.3332807).\n```\n\n(rr-rdm-sharing-steps)=\n## Steps To Share Your Data\n\n### Step 1: Select what data you want to share\n\nNot all data can be made openly available, due to ethical and commercial concerns (see [](#rr-open-data)), and you may decide that some of your intermediate data is too large to share.\nAs such, you first need to decide which data you need to share for others to be able to reproduce your research.\n\n### Step 2: Choose a data repository or other sharing platform\n\nData should be shared in a formal, open, and indexed data repository [{term}`def<Repository>`] where possible so that it will be accessible in the long run.\nSuitable data repositories by subject, content type or location can be found at [Re3data.org](https://www.re3data.org/), and in [FAIRsharing](https://fairsharing.org/databases) where you can also see which standards (metadata and identifier) the repositories implement and which journal/publisher recommend them.\n\nSee [](#rr-rdm-repository-select) for more information.\n\n### Step 3: Choose a licence and link to your paper and code\n\nSo that others know what they can do with your data, you need to apply a licence [{term}`def<License>`] to your data.\nThe most commonly used [licences](#rr-licensing) are [Creative Commons](https://creativecommons.org/choose/), [Open Government Licence](http://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/), or an [Open Data Commons Attribution License](https://opendatacommons.org/licenses/by/index.html).\nTo get maximum value from data sharing, make sure that your paper and code both link to your data, and vice versa, to allow others understand your project better.\n\n### Step 4: Upload your data and documentation\n\nIn line with the [FAIR principles](#rr-rdm-FAIR), upload the data in open formats as much as possible and include sufficient documentation and metadata so that someone else can understand your data.\nIt is also essential to think about the file formats in which the information is provided.\nData should be presented in structured and standardised formats to support interoperability, traceability, and effective reuse.\nIn many cases, this will include providing data in multiple, standardized formats, so that it can be processed by computers and used by people.\n\n(rr-rdm-sharing-resources)=\n## Additional resources on data sharing\n* '[How can you make research data accessible?](https://www.software.ac.uk/how-can-you-make-research-data-accessible)': a blog that contains five steps to make your data more accessible\n* The European Commission's [data guidelines](https://open-research-europe.ec.europa.eu/for-authors/data-guidelines)\n* Videos on [Data sharing and reuse](https://www.youtube.com/watch?v=4igGBCggU0Y) & [Data Preservation and Archiving](https://www.youtube.com/watch?v=J76yTp8XE-0) from the [TU Delft Open Science MOOC](https://online-learning.tudelft.nl/courses/open-science-sharing-your-research-with-the-world/).\n* [Webinar: Why share your data?](https://www.ebi.ac.uk/training/online/courses/bringing-data-life-data-management-biomolecular-sciences/why-share-your-data/)\n* [Webinar: Publishing and citing data in practice by Jez Cope](https://youtu.be/PpMOkTnBMlI)\n* Coursera Videos from [Research Data Management and Sharing](https://www.coursera.org/learn/data-management) on the [Benefits of Sharing](https://www.coursera.org/lecture/data-management/benefits-of-sharing-IPZ0h), [Why Archive Data?](https://www.coursera.org/lecture/data-management/why-archive-data-lcQ2m), and [Why is Archiving Data Important?](https://www.coursera.org/lecture/data-management/why-is-archiving-data-important-04Gji)\n* [Blog: Ask not what you can do for open data; ask what open data can do for you](http://blogs.nature.com/naturejobs/2017/06/19/ask-not-what-you-can-do-for-open-data-ask-what-open-data-can-do-for-you/)\n* [Open Science – Research Data](https://www.ouvrirlascience.fr/open-science-research-data/)\n* @Levenstein2018sharing\n\n(rr-rdm-data-availability-statement)=\n## Data Availability Statement\nOnce you made your data available, it is important to ensure that people can find it when they read the associated article.\nYou should cite your dataset directly in the paper in places where it is relevant, and include a citation in your reference list, as well as include a Data Availability Statement at the end of the paper (similar to the acknowledgement section).\nSee [](#cm-citable-cite-data) for some examples.\n\n"
  },
  {
    "path": "book/website/reproducible-research/rdm/rdm-smp.md",
    "content": "(rr-rdm-smp)=\n# Software Management Plan\n## Introduction\nA Software Management Plan (SMP), similar to a [](#rr-rdm-dmp), is a document that describes how your software will be generated, used and shared during and after your project.\nAnd similar to a DMP, an SMP is a living document, which should be updated throughout the research project as needed.\n\nAccording to {cite:ps}`Grossmann2024smp`, a SMP is:\n\n> an instrument to collect ideas and information necessary for [researchers] programming activity, which helps [researchers] gain awareness and provide for the necessary resources. \n> Such an instrument can be an SMP, which aims to collect all information relevant for the software development in a scientific context to support a structured approach or help distributed teams to adhere to (self-) defined standards.\n> \n> A Software Management Plan (SMP) contains general and technical information about the software project, information on quality assurance, release and public availability as well as legal and ethical aspects that affect the software. \n> The SMP summarises information that adequately describes and documents the creation, documentation, storage, versioning, licensing, archiving and/or publication of the software created or used in a project. \n> Associated hardware and other necessary resources, as well as other associated software and software libraries, text and data publications must also be described and are a special feature of the SMP.\n> The purpose of an SMP is initially to support the traceability and, if necessary, the longterm usability of the software (for direct application as well as for further processing) and to facilitate user support in the event of queries. \n> The SMP therefore also serves the purpose of quality assurance.\n> The SMP can be linked to one or more DMPs if the software is used for data generation or processing. \n> SMP and DMP can be summarised as output plans.\n\nOne important thing to say in this context is that software includes a wide range of things: from analysis code used by only one researcher to software libraries with many users.\nSee [](#rr-rdm-smp-what-software) for more details.\n\nHere is [a good introduction to SMPs](https://tu-delft-dcc.github.io/docs/software/fair_software/software_management_plan.html).\n\n(rr-rdm-smp-what)=\n### What is it?\nAn SMP is a document which describes how a specific software project will be developed and maintained, and over what period of time.\nIt describes, for example, how the software will manage [version control](#rr-vcs), how it will be [licensed](#rr-licensing-floss), how it will manage [license compatibility](#rr-licensing-compatibility), and so on.\n\nMore than a document, a SMP should be a way for developers of research software to reflect on their process, their choices more explicit, and consider what options are available to them.\nIdeally, this reflection should happen early on in the development process, and should be revised and updated on a regular basis.\n\n### How can they benefit your research?\nAn SMP can help the developers of research software make explicit their intentions and choices on how they will manage their software project.\nIf you plan on sharing your code, it will help you ensure that your code is reusable by others.\n\n(rr-rdm-smp-what-software)=\n### What software to manage?\nSome researchers say they do not create any software, they only write one-off scripts to analyse data.\nThese scripts, short as they may be, are still software.\nThe Australian [National Agenda for Research Software](https://ardc.edu.au/project/research-software-agenda-for-australia/) proposes different categories of research software: analysis code, prototype tools, infrastructure software.\nThe key point is that SMPs apply to research software across this spectrum, although it may apply differently depending on the needs of the software.\n\n[Defining the roles of research software (Version 2)](https://doi.org/10.54900/xdh2x-kj281) provides a different view of the different categories of research software.\nThe common thread with these different interpretations is that not all software is created under the same circumstances.\nThe context of the software is important to understand how it should be managed.\n\nThe [Practical guide to Software Management Plans](https://doi.org/10.5281/zenodo.7038280) provides a collection of optional requirements to be included in an SMP.\nFrom these requirements \"Purpose\" is recommended as a starting point, and should always be there: software should always be made with a purpose in mind, and its purpose determines its management level.\n\n(rr-rdm-smp-when)=\n### When to write an SMP?\nIdeally, a SMP should be drafted during the planning phase of your research project, alongside your DMP. \nSome funders (for example NWO, ZonMw, the Netherlands eScience Center) require an SMP as part of your grant application.\n\n- Find out if your institution has its own Software Management Plan template, if so, use it\n- If not, determine the management level of your software\n- Use the SMP template appropriate to your software\n\nAn SMP is a living document.\nAs such, it should be updated on a regular basis.\nFor example, when you release major versions of your software.\n\n(rr-rdm-smp-templates)=\n## Existing SMP templates\n\n- [SSI Checklist for a Software Management Plan](https://doi.org/10.5281/zenodo.1422656)\n- [Netherlands eScience Center Software Sustainability Protocol](https://doi.org/10.5281/zenodo.1451750)\n- [ELIXIR Software Management Plan for Life Sciences](https://doi.org/10.37044/osf.io/k8znb)\n- [Checklists for different types of software](https://gitlab.com/HDBI/data-management/checklists/)\n- [WUR SMP template and guidance](https://doi.org/10.5281/zenodo.10473646)\n\n(rr-rdm-smp-tools)=\n## SMP tools\n\n- [SMP decision tree](https://smp.research.software/)\n\n(rr-rdm-smp-resources)=\n## Additional Resources\n\n- [Self-study materials on SMPs](https://esciencecenter-digital-skills.github.io/research-software-support/modules/softwaremanagementplans/slides-smp)\n- [TU Delft Library ‘Navigating Research Data and Software: A Practical Guide for PhD Supervisors’ 2025](https://www.youtube.com/watch?v=5Zy3l4dTJd4)\n- [Recommendations for Developing and Aligning Policies on Research Software](https://doi.org/10.5281/zenodo.13740998)\n- @Grossmann2024smp\n"
  },
  {
    "path": "book/website/reproducible-research/rdm/rdm-spreadsheets.md",
    "content": "(rr-rdm-spreadsheets)=\n# Data Organisation in Spreadsheets\n\nSpreadsheets, such as Microsoft Excel files, google sheets, and their Open Source alternative [(for instance) LibreOffice](https://www.libreoffice.org), are commonly used to collect, store, manipulate, analyse, and share research data.\nSpreadsheets are convenient and easy-to-use tools for organising information into an easy to write and easy to read forms for humans. \nHowever, one should use them with caution, as the use of an inappropriate spreadsheet is a major cause of mistakes in the data analysis workflow.\nSee for example the [loss of COVID19 data in England due to poor use of Excel](https://www.bbc.com/news/technology-54423988).\nThere is a collection of [horror-stories](https://eusprig.org/research-info/horror-stories/) that tells how the use of spreadsheets can ruin analysis-based studies due to unexpected behaviour of the spreadsheet or error-prone editing processes.\nSome of these mishaps are not unique to spreadsheets, but many, such as [Gene name errors](https://doi.org/10.1186/s13059-016-1044-7) (and another [Gene name error example](https://doi.org/10.1186/1471-2105-5-80)), are.\n\nFortunately, most problems can be avoided with the following recommendations: \n- Use spreadsheet in a text-only format (.csv or .tsv),\n- Create tidy spreadsheets,\n- Make spreadsheets consistent (with each other) and implement rules for data entries, and\n- Avoid manipulating and analysing data in spreadsheet software (this includes copy-paste). \n\nSpreadsheets are a powerful tool only if the dataset is collected and organised in specific formats that are usable for both the computers and researchers.\n\n(rr-rdm-spreadsheets-nondata)=\n## 1. Avoid Non-Data Content\n\nSpreadsheets are used for organising data in a tabular form. \nThe subject, the object and the relationship between them are transformed into rows, cells and columns, respectively.\nFor example, the subject: `experiment`, relationship: `was performed on the date`, and the object: `2020-06-06` gives one row for each experiment, one column for `date of experiment`, and the value `2020-06-06` in the cell. \nUnfortunately, spreadsheet programs allow you to add other kinds of contents to this, like color to specific cells. \nWhile it may help the researchers at some point, one needs to remember that this kind of **cell modification should not be considered as data**, primarily because they cannot be exported to other software.\n\nAs a simple rule, what can be exported in a text-only format, comma-separated values (CSV), or tab-separated values (TSV), can be considered as the data. \nOther functions should be avoided when using these programs for research data. \nThis includes: \n- cell formatting, such as changing font, color or borders,\n- using functions, \n- merging cells (this one is particularly problematic), \n- using specific cell formats (especially dates, see below). \n\nAs a test for your spreadsheet compatibility with reproducible research, export your data from the spreadsheet to the CSV format and reopen it.\nIf you can still get all the information that you stored in your sheet, then your data is fine.\n\n```{tip}\nIf you want to use color to help with a rapid highlight in your document, create a new column to indicate which cells are highlighted (it becomes a part of your data).\nIn addition to the visual feedback, you can now also use this information to filter or sort your data and get the highlighted cells quickly.\n```\n\n(rr-rdm-spreadsheets-format)=\n## 2. Tidy Format For Spreadsheets\n\nIf [the spreadsheet is poorly organised](https://luisdva.github.io/pls-don't-do-this/), then it may be difficult for collaborators to easily read-in and [reuse](#rr-rdm-fair) your data for further analysis.\n\nIndeed, a large part of the work of data scientists is to transform the data into a form that the computer can read. \nHowever, this is incredibly time-consuming when the information is split between several spreadsheets and when there are no concrete data transformation plans before the data is acquired.\n\nThere are very simple rules to facilitate data use, which go into the concept of [**tidy data**](https://en.wikipedia.org/w/index.php?title=Tidy_data&oldid=962241815), see @Wickham2014tidydata. \nThe tidy data format allows for filtering and sorting data easily in spreadsheet software. \n\nIn short:\n\n- One column = one variable (no more, no less, this implies that two header names can not be identical, see [Column Names as Contracts](https://emilyriederer.netlify.app/post/column-name-contracts/))\n- One row = one sample or observation\n- One cell = one information point or value\n- **The first row is the header** \n- Header names must not include a special character (including space) or start with a number\n\n```{figure} ../../../figures/tidy-1.*\n---\nname: tidy-1\nalt: >\n  Three images depicting visual representations of the descriptions mentioned previously.\n  In the first image on the left, variables are demonstrated with double headed arrows going up and down the columns.\n  In the middle image, double headed arrows go along rows, demonstrating observations.\n  In the right hand image, black circles over each cell demonstrate values.\n---\nAn illustration of tidy data.\n```\n\nThere are data validation tools available, like [Frictionless Data](https://frictionlessdata.io/)'s [Python package](https://framework.frictionlessdata.io/) or [GitHub Action](https://repository.frictionlessdata.io/), that allow you to automatically check whether your spreadsheets are tidy.\n\n(rr-rdm-spreadsheets-consistent)=\n## 3. Consistent Values\n\nWhen you work with several spreadsheets or with a team during data collection, it is crucial to make sure the same information will be entered with the same term, and that the same term always conveys the same information. \nDiscrepancies often lead to errors, especially when the same terms could mean different things depending on who is entering the data. \nFor example, indicating date as `02-03` will mean February the 3<sup>rd</sup> in the USA, but March the 2<sup>nd</sup> in Europe.\n\nIt is good practice to implement a `data dictionary` or a `taxonomy` of accepted terms and document the convention used in a README file.\nDepending on the software you use, you may be able to restrict the accepted values in specific columns.\nIf such a taxonomy or ontology is available, using it may allow you (and others) to use the data in conjunction with other datasets.\nFor example, you may use the generic `male` and `female` term for the sex of an animal (without capitals, and without using abbreviation), as many ontologies use these terms.\nBesides, you may want to use some extra tools to validate the spreadsheets before its integration in the analysis.\n\n(rr-rdm-spreadsheets-missing)=\n### Missing data points\nYou should also have clear rules about missing data points. \nUsing `NA`, `NULL`, or empty cells is not trivial and may have different meanings (impossible data point, not recorded, or lost data point). \nImagine a researcher wants to record the time spent before seeing a pollinator land on an iris flower, and no pollinator was seen during the 10-minute experiment.\nSuppose the researcher reports `600` (the duration of the experiment in seconds). \nIn that case, there will be no way to distinguish a scenario where no pollinator was seen, and one when a pollinator was seen at the end of the experiment (and you may forget that rule and treat `600` as a normal value).\n\nIf `NA` is reported, one may interpret this value as a non-existing data point (the experiment had not been performed).\nAn elegant solution is to have a second column stating whether a pollinator was seen during the experiment, where `TRUE`, `FALSE` and `NA` values are accepted.\n\nFinally, you should also be aware of the default behaviour of your spreadsheet program, as it may be different for different programs, and different versions of the same program.\nFor instance, the decimal is usually indicated with a comma in the French or German versions of Excel. \nIn the English versions, a dot is used since the comma has no meaning (`9,000` will be translated into `9000` or `9` depending on the version you are using).\n\n(rr-rdm-spreadsheets-manipulation)=\n## 4. Data Manipulation and Analysis\n\nWhen you manually manipulate data in a spreadsheet program, you will need to record all the steps that you took. \nThis can be time consuming and can be avoided by manipulating and analysing the data with automatic analyses or programmes such as [Open Refine](https://openrefine.org/) that will record the data manipulation steps for you.\n\nOpenRefine can be used for tabular data (for example in [social sciences](https://datacarpentry.org/openrefine-socialsci/), [ecology](https://datacarpentry.org/OpenRefine-ecology-lesson/) and [history](https://programminghistorian.org/en/lessons/cleaning-data-with-openrefine).\nOpenRefine can help you to get an overview of large datasets, identify and correct inconsistencies, and integrate datasets. \nIt automatically records these processes, saving a script of the steps involved.\nOpenRefine uses your web browser as a graphical interface, but the software runs only locally so it is safe to use for sensitive data.\n\nAutomatic manipulation will also help with data validation, as software may return error messages if data is manipulated incorrectly. \n\n(rr-rdm-spreadsheets-validation)=\n## 5. Data validation\n\n- [Excel support page on data validation](https://support.office.com/en-us/article/Apply-data-validation-to-cells-29FECBCC-D1B9-42C1-9D76-EFF3CE5F7249)\n- Check manually whether your data is consistent, complete and correct:\n - If a column should contain only numeric values or characters, check that there are no non-numeric values or non-character\n - Check for consistency in names, unit of measurements, data type and so on\n - Check if there are any empty cells and replace them with your chosen null value (see [above](#rr-rdm-spreadsheets-missing))\n - Remove redundant data (while keeping in mind what could be reused in the future!)\n\n(rr-rdm-spreadsheets-accessibility)=\n## 6. Accessibility\n\nComma- or Tab-Separated Value (CSV/TSV) formats are not only best for preservation, but for accessibility as well. \nFor more information:\n- [Data Curation Primer](https://github.com/DataCurationNetwork/data-primers/blob/master/Accessibility%20Data%20Curation%20Primer/accessibility-data-curation-primer.md#tabular)\n- [Make your Excel documents accessible to people with disabilities](https://support.microsoft.com/en-us/office/make-your-excel-documents-accessible-to-people-with-disabilities-6cc05fc5-1314-48b5-8eb3-683e49b3e593) (Microsoft Office)\n- [Excel Tips](https://accessibility.psu.edu/microsoftoffice/excel/) (Accessibility and Usability at Penn State)\n- [Create Accessible Spreadsheets](https://www.section508.gov/create/spreadsheets/) (General Services Administration of the 49 U.S. - focused on Excel)\n\n(rr-rdm-spreadsheets-tips)=\n## Other Tips\n\n(rr-rdm-spreadsheets-tips-time)=\n### Dealing With Time Information\n\nWhile dates should be written as `yyyy-mm-dd`, Excel and other software tend to transform this data into their own date formats (even during data import from a CSV file). \nThe only 100% secure way to deal with this is to make different columns for years, months, and days and recreate the data in the software used for analysis. \nTime entered with `hh:mm:ss` normally works.\n\n(rr-rdm-spreadsheets-tips-several)=\n### Working With Several Sheets\n\nWe often use several sheets for different but related data. \nIt is a handy tool indeed, especially when one wants to share the complete dataset with colleagues.  \nOn the other hand, CSV files only save one sheet at a time. \nThough most data analysis software have several ways to import `xlsx` files, the practical solution is to work with the `xlsx` format while making sure that the information is available in CSV format for each sheet. \nA better solution, especially for long term storage, is to save all sheets separately in a CSV file and zip them together. \nThis solution also allows including extra documentation that could be in a different format (for example, a text file explaining the meaning of the headers and the chosen unit).\n\n(rr-rdm-spreadsheets-tips-design)=\n### Spreadsheet Design\n\nData is often collected manually, on paper. \nTo be most efficient and avoid mistakes, it is best to collect the data in the same format as it will be digitalised. \nThat is, one should design the computer-readable spreadsheet to be printed for data collection. \nThis poses some design questions, especially for information that is unique to one experiment (one paper) but may change between experiments (for example, experimentalist or temperature of the room). \nYou indeed want that information in one column, but you would like to enter it only once during data acquisition (especially on the paper version). \nOne solution is to move these columns onto a second (non-printed) page on the spreadsheet and adjust the headers and footers to enter the information on the paper version. \nOne needs to make sure the information is entered in the column during digitalisation.\n\nThe way you enter the information (that is, the way you design your headers and cell content) may be different depending on the analysis you want to perform.\nOne should still always try to be as generic and objective as possible and think about any additional analyses one may want to perform. \n \nAs an example, let us suppose you are interested in depicting if the percentage of [penguins](https://github.com/allisonhorst/palmerpenguins) are taller than 30 cm in three different penguin species.\nYou may be inclined to record a true or false column `is-penguin-longer-than-30cm`, but this will restrict the analysis you can perform.\nA better solution is to record the length of the penguin (in mm) and automatically create the categorization later.\n\nHeaders names should be chosen with care, and when it is not clear what is meant and what unit is used, you may want to add some explanation in an external document. \nYou may also share a sample spreadsheet to a colleague to receive feedback on how understandable your sheet is.\n\nAnother alternative is to add some explanations on top of the sheet in the first rows before the headers.\nBy keeping human-readable information at the top of the file, one can better understand the data that starts in the header rows.\nThis information can also help in analysing that data, making sure that the scripts ignore the explanation lines and only consider it during analysis.\nHowever, a good file with tidy columns and rows should not need extra explanation.\n\nAs for header names, the size of the headers is not an issue for computers. \nHowever, for human readability, it is better to keep it short (up to 32 characters, see [](#rr-rdm-storage-conventions).\n\nYou do not have to think about the order of the columns for the analysis, as it has no importance for data analysis software. \nYou can, therefore, completely optimise that parameter for the data collection step.\n\n(rr-rdm-spreadsheets-tips-versioning)=\n### Standard and Versioning\n\nA good spreadsheet design has instructive and intuitive header names, and it facilitates both data collection and analysis. \nBuilding such a spreadsheet design is difficult as it takes time, multiple iterations, and consensus. \nIt is therefore beneficial to look for a standard spreadsheet before designing your own and to share your design openly once it is created. \nOne should also use a version history of the spreadsheets (as they will evolve), and the analysis script should mention the version number of the spreadsheet. \nDocumentation of the spreadsheet, its version history, and the ontologies it is linked to, can be useful for future users. \n\n(rr-rdm-spreadsheets-tips-team)=\n### Working In A Team\n\nIf you are working with a team on data collection, make sure:\n- Everyone uses the same software (and software version) to enter the data.\n- Everyone uses the same version of the spreadsheet template.\n- Everyone understands what each column represents, and the unit that should be used.\n- Every column has a defined standard on how to enter data in it or taxonomy of terms that one can use.\n- One person is responsible for answering putative questions during data collection.\n- Every spreadsheet is validated before entering the analysis workflow, and as soon as possible.\n\n(rr-rdm-spreadsheets-summary)=\n## Summary\n\nWhile spreadsheets can be a very user-friendly way to collect and share data, they can also be the source of mistakes if misused. \nWhen aiming at developing a reproducible workflow for analyses, one should design the spreadsheet for both computer and human readability, and, even before starting data collection, they should consider what would make their data analysis easy.\nData manipulation and analysis in spreadsheets, in particular, is best avoided as it leads to non-reproducible workflows. \nUsing version control and making the data read-only are two additional data management practices that can prevent accidents.\n\nUse a README [{term}`def<README>`] file and and other structure choices to explain naming conventions.\nIt will make it clear to others what the file and header names mean, and what criteria to consider when designing an analysis workflow. \nIf you work in a team, you should take particular care of the conventions and make sure everyone follows them. \n\n(rr-rdm-spreadsheets-resources)=\n## Additional Resources\n- To learn more about data organisation in spreadsheets, you may have a look at the Data Carpentry lessons for [Social Scientists](https://datacarpentry.org/spreadsheets-socialsci/) and [Ecologists](https://datacarpentry.org/spreadsheet-ecology-lesson/).\n- To read about recommended practices, see @Broman2018data\n- See also a blogpost with [resources for using spreadsheets in research and moving onto other tools](https://www.software.ac.uk/blog/2021-11-05-resources-using-spreadsheets-research-and-moving-other-tools).\n- [Workshop on Tidy Spreadsheets in Medical Research by Peter Higgins](https://www.youtube.com/watch?v=9f-hpJbjKZo)\n"
  },
  {
    "path": "book/website/reproducible-research/rdm/rdm-storage.md",
    "content": "(rr-rdm-storage)=\n# Data Storage and Organisation\n\nData loss can be catastrophic for your research project and can happen often.\nYou can prevent data loss by picking suitable storage solutions and backing your data up frequently.\n\n```{figure} ../../../figures/version-control.*\n---\nheight: 500px\nname: version-control\nalt: Two images are shown to represent the benefits of using version control. On the left, there is an image of two people rummaging through a blue box on top of a table. The box is full of jumbled documents and the people look confused and frustrated. The documents are named \"final 2\" and \"let this be the final\". On the right, the same two people look happy and are searching through files organised clearly in a blue filing cabinet. There are \"V1, V2, V3 and V4\" separations organising the files.\n---\n_The Turing Way_ project illustration by Scriberia. Original version on Zenodo. [http://doi.org/10.5281/zenodo.3695300](http://doi.org/10.5281/zenodo.3695300)\n```\n\n(rr-rdm-storage-where)=\n## Where to Store Data\n\n- Most institutions will provide a _network drive_ that you can use to store data.\n- _Portable storage media_ such as memory sticks (USB sticks) are more risky and vulnerable to loss and damage.\n- _Cloud storage_ provides a convenient way to store, backup and retrieve data.\nYou should check terms of use before using them for your research data.\n\nEspecially if you are handling personal or sensitive data (see [](#pd-sdp) for more information), you need to ensure the cloud option is compliant with any data protection rules the data is bound by.\nTo add an extra layer of security, you should encrypt devices and files where needed.\n\nYour institution might provide local storage solutions and policies or guidelines restricting what you can use.\nThus, we recommend you familiarise yourself with your local policies and recommendations.\n\nWhen you are ready to [release the data to the wider community](#rr-rdm-sharing), you can also search for the appropriate databases and repositories in [FAIRsharing](https://fairsharing.org/databases), according to your data type, and type of access to the data.\n\n(rr-rdm-storage-organisation)=\n## Data Organisation\n\nTo organise your data, you should use a clear folder structure to ensure that you can find your files. \nWe encourage you to use an existing template, such as the [Tonic Research Project Template](https://github.com/tonic-team/Tonic-Research-Project-Template) (see also [below for more examples](#rr-rdm-storage-organisation-examples)).\n\n\n```{figure}  ../../../figures/file-management-manual.jpg\n---\nname: Folder structure for research data\n\nalt: A protagonist has a file with \"readme\" written on it and brings it to another person standing in front of a filing cabinet. The cabinet has three drawers labelled \"data\", \"code\", and \"results\".\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n-\tMake sure you have enough (sub)folders so that files can be stored in the right folder and are not scattered in folders where they do not belong, or stored in large quantities in a single folder.\n-\tUse a clear folder structure.\nYou can structure folders based on the person that has generated the data/folder, chronologically (month, year, sessions), per project (as done in the example below), or based on analysis method/equipment or data type.\n- Avoid overlapping or vague folder names, and do not use personal data in folder/file names.\n\n(rr-rdm-storage-organisation-examples)=\n### Data Organisation Examples\n\n- Download [this](http://nikola.me/folder_structure.html) folder structure by Nikola Vukovic\n- You can pull/download folder structures using GitHub:\n[This template](https://github.com/bvreede/good-enough-project) by Barbara Vreede, based on [cookiecutter](https://github.com/cookiecutter/cookiecutter), follows recommended practices for scientific computing by [Wilson et al. (2017)](https://doi.org/10.1371/journal.pcbi.1005510).\n- See [this template](https://osf.io/4sdn3/) by Chris Hartgerink for file organisation on the [Open Science Framework](https://osf.io/).\n- [How to Organize Your Digital Files](https://www.nytimes.com/wirecutter/guides/how-to-organize-your-digital-files/) by Melanie Pinola.\n- [Project structure videos by Danielle Navarro](https://www.youtube.com/watch?v=u6MiDFvAs9w&list=PLRPB0ZzEYegPiBteC2dRn95TX9YefYFyy&index=1) (with [slides](https://slides.djnavarro.net/project-structure/#1)).\n- [Research Project Template](https://github.com/HeidiSeibold/research-project-template) by Heidi Seibold\n- [ASCII folder structure diagram: Tree](https://tree.nathanfriend.com/)\n\n### More Information on Data Organisation\n- [How to organise your data and code](https://renebekkers.wordpress.com/2021/04/02/how-to-organize-your-data-and-code) by Rene Bekkers. \n\n(rr-rdm-storage-conventions)=\n## File Naming Conventions\n\nA File Naming Convention or [Style Guide](https://datamgmtinedresearch.com/style) ensures that your data and [code](https://indrajeetpatil.github.io/second-hardest-cs-thing/#/dealing-with-the-second-hardest-thing-in-computer-science) files are consistently named. \nStructure your file names and set up a template for this.\nFor example, it may be advantageous to start naming your files with the date each file was generated (such as `YYYYMMDD`).\nThis will sort your files chronologically and create a unique identifier for each file.\nThe utility of this process is apparent when you generate multiple files on the same day that may need to be versioned to avoid overwriting.\nFile names should be friendly to both machines and humans.\n\nSome other tips for file naming include:\n- Use the date or date range of the experiment: `YYYYMMDD`\n- Use the file type\n- Use the researcher's name/initials\n- Use the version number of file (v001, v002) or language used in the document (ENG)\n- Use zero padded numbers when generating a lot of data (00001)\n- Do not make file names too long (this can complicate file transfers)\n- Avoid special characters `()?\\!@\\*%{[<>` and spaces\n- Hyphens `-` and underscores `_` can be used to separate related and unrelated chunks, respectively\n- Keep in mind that some operating systems are case-sensitive - by using lowercase you can avoid potential problems\n- Avoid personal data in file names\n\nYou can explain the file naming convention in a [README.txt file](#rr-rdm-readme) so that it will also become apparent to others what the file names mean.\nNaming the file names with a schema will also make it easier to keep track of what file corresponds to what variables or settings you have used, facilitating data searches/queries. \n\nFor further guidance on file naming: \n- [Jenny Bryan’s ‘naming things’ presentation](https://speakerdeck.com/jennybc/how-to-name-files) (or watch the [5 minute summary](https://youtu.be/ES1LTlnpLMk))\n- [MIT's recommendations on File naming and folder hierarchy](https://libraries.mit.edu/data-management/store/organize/)\n- [8 step guide on how to set up your file naming convention](https://resolver.caltech.edu/CaltechAUTHORS:20200601-161923247) \n- [Project structure slides by Danielle Navarro](https://djnavarro.net/slides-project-structure/#9)\n\n(rr-rdm-storage-renaming)=\n### File renaming tools\n\nIf you want to change your file names you have the option to use bulk renaming tools.\nBe careful with these tools, because changes made with bulk renaming tools may be too rigorous if not carefully checked!\n\nSome bulk file renaming tools include: \n- [Bulk Rename Utility](http://www.bulkrenameutility.co.uk/Main_Intro.php), [WildRename](http://www.cylog.org/utilities/wildrename.jsp), and [Ant Renamer](http://www.antp.be/software/renamer) (for Windows)\n- [Renamer](https://renamer.com/) (for MacOS)\n- [PSRenamer](http://www.cylog.org/utilities/wildrename.jsp) (for MacOS, Windows, Unix, Linux)\n\n(rr-rdm-storage-backups)=\n## Backups\n\nTo avoid losing your data, you should follow good backup practices.\n\n- You should have 2 or 3 copies of your files, stored on\n- at least 2 different storage media,\n- in different locations.\n\nBackups are ideally done automatically and should take into consideration your institute's guidelines.\nThe more important the data and the more often the datasets change, the more frequently you should back them up.\nIf your files take up a large amount of space and backing up all of them proves to be challenging or expensive, you may want to create a set of criteria for when you back up the data.\nThis can be part of your [](#rr-rdm-dmp).\n\nWatch this video on [Safe data storage and backup](https://www.youtube.com/watch?v=bgbbToXHgW0) from the [TU Delft Open Science MOOC](https://online-learning.tudelft.nl/courses/open-science-sharing-your-research-with-the-world/).\n\n\n\n"
  },
  {
    "path": "book/website/reproducible-research/rdm/rdm-stories.md",
    "content": "(rr-rdm-stories)=\n# Personal Impact Stories\n\n## Susanna-Assunta Sansone: From FAIR Co-Author to FAIR Doer\n\nLet us start with my digital footprints so that you can discover my activities:\n\n- [Biography](https://www.eng.ox.ac.uk/people/susanna-assunta-sansone)\n- [The Data Readiness group I run at Oxford University](https://sansonegroup.eng.ox.ac.uk)\n- [ORCID: 0000-0001-5306-5690](https://orcid.org/0000-0001-5306-5690)\n- [Profile on LinkedIn](https://uk.linkedin.com/in/sasansone)\n- [Talks on SlideShare](https://www.slideshare.net/SusannaSansone)\n- [Twitter; yes I am the FAIRlady](https://twitter.com/SusannaASansone)\n- [Activities on GitHub; yeah, no code sorry](https://github.com/SusannaSansone)\n- [Google Scholar](https://scholar.google.co.uk/citations?user=gfJ8wsIAAAAJ&hl=en)\n\nI have worked on research data management since 2001, yes, way before this area was even considered a 'thing'.\nI was also told that there is no career to make in research data management.\nWell, how wrong that comment was!\nFormerly seen as an intersection between service provision and IT, data management has become a first-class citizen, recognised as a research and development subject, as it should be.\nA lot of the credit for this change goes to the FAIR principles.\nLove it or hate it, FAIR is now an internationally-known lighthouse brand.\nSince we published the first article on the [FAIR principles](https://doi.org/10.1038/sdata.2016.18), enabling FAIR has been my focus.\n\nThe reuse of other people’s data is providing useful insights for new research questions and products, and driving new scientific discoveries.\nTo realise its potential, however, we need new mechanisms to manage the growing availability and scale of scholarly digital products, such as datasets, software, algorithms, articles.\nFAIR has been specifically designed to emphasise the machine-readability of these digital objects.\n\nWithin my group of research software and knowledge engineers, we address the grand challenges related to information science and scholarly communications, where data quality and readiness for (re)use is a prerequisite for success.\nI believe that better data means better science, and this underpins reusable research, aids scholarly publishing, and enables faster and reliable data-driven discoveries.\nAs I say in my [one minute video](https://youtu.be/3VDw7XIulIk), my vision is to transform the concept of data readiness into a powerful toolkit at the researchers’ fingertips to realize FAIR data by stealth.\n\nFAIR is not a magic wand. \nThere is a lot to be done to enable and enact this transformation.\nWe need all hands on deck!\nResearchers, service providers, journal publishers, library science experts, funders and learned societies in the academic as well as the commercial and governmental settings all play a role:\nfrom providing use cases to drive policy and culture changes that motivates, rewards and credits researchers for disseminating and publishing high-quality, machine-readable data; to building tools and services, to inform, training and educate.\n\nThere are many community efforts around FAIR; keeping abreast with these is an activity in itself.\nI spend considerable time to bring my group activities (such as [ISA](https://isa-tools.org) and [FAIRsharing](https://fairsharing.org)) in and under larger international umbrella organizations like [GO FAIR](https://www.go-fair.org/implementation-networks/overview/fair-strepo) and the [RDA](http://dx.doi.org/10.15497/RDA00030) to interact with others, learn from them, compare and contrast efforts and build new collaborations.\nI also play leading roles, sitting on boards and chairing working groups with colleagues, because you must get your hands dirty and lead by example.\n\nIn research data management, the history is the future.\nThe one I envision is a future where scientific evidence is routinely available in a transparent, trustworthy and persistent manner to support peer-review and withstand reproducibility, to underpin new results and discoveries, and effectively drive sciences forward.\n\n**My advice: _be aware, be FAIR!_**\n"
  },
  {
    "path": "book/website/reproducible-research/rdm/rdm-visualisation.md",
    "content": "(rr-rdm-visualisation)=\n# Data Visualisation\n\nData visualisation allows you to: \n* Extract valuable information and patterns from data\n* Communicate this in a clear and comprehensible visual representation\n* Enhance the communication of research findings, making it accessible to a broader audience\n* Identify data quality issues, as outliers and data errors may become more visible in visualisations\n\nTherefore, data visualisation is an aspect of research data management!\n\nBelow follow some resources that may help you in creating clearer, more accessible and more transparent data visualisations. \n\n<!--\n```{figure} ../../figures/data-visualisation.*\n---\nname: project-design\nalt: A group of people collaboratively developing a data visualisation by using a giant pencil. \n---\n _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n-->\n\n(rr-rdm-visualisation-tools)=\n## Tools\n\n-  [Datawrapper](https://www.datawrapper.de/), where you can upload your data to generate tables and charts.\n-  [upset graphs](https://upset.app/) are a straightforward way to visualize set intersections in a matrix layout, which can help in analysing multiple datasets at once.\n-  Using **Python Plotly** you can add annotations and animations as extra visual cues to highlight important features.\n  - [Annotating visualisations in Python plotly](https://medium.com/nerd-for-tech/enriching-data-visualizations-with-annotations-in-plotly-using-python-6127ff6e0f80) (blog and video)\n  - [Animations using Python plotly](https://youtu.be/kMFvpmOaF2I)\n\n(rr-rdm-visualisation-accessibility)=\n## Accessibility\n\n- [Tips to improve interpretability and accessibility](https://www.youtube.com/watch?v=RzT95DVUMnw) by Dr Tracey Weissgerber (video)\n- [Writing Meaningful Alt-Texts for Data Visualisations in R](https://www.youtube.com/watch?v=dXV5bx1WQTM)\n- Writing Alt Text to communicate the meaning in data visualizations by @Hare2022dataviz\n- [Alt-texts](https://axesslab.com/alt-texts/)\n- [Writing Alt Text](https://dataabinitio.com/?p=1161) for a Scientific Figure by Kristin Briney\n- [Writing Alt Text for Data Visualization](https://medium.com/nightingale/writing-alt-text-for-data-visualization-2a218ef43f81)\n  To get started, use Amy Cesal's quick formula: [alt text = `chart type` of `type of data` where `reason for including chart`. `Link to data`.]\n\n(rr-rdm-visualisation-colours)=\n## Colours\n- [A detailed guide to colors in data vis style guides](https://blog.datawrapper.de/colors-for-data-vis-style-guides/) (blog)\n\n(rr-rdm-visualisation-resources)=\n## Resources\n\n### Books and Articles\n\n- [Fundamentals of Data Visualisation](https://serialmentor.com/dataviz/) by {cite:ps}`Wilke2019dataviz`\n- Data Visualisation, A practical introduction by @Healy2018dataviz\n- Creating clear and informative image-based figures for scientific publications by @Jambor2021dataviz\n- A layered grammar of graphics by @Wickham2010dataviz\n- A Field Guide to Digital Color by @Stone2003dataviz\n- The Grammar of Graphics by @Wilkinson1999dataviz\n- The Visual Display of Quantitative Information by @Tufte2001dataviz\n- Avoiding Twisted Pixels: Ethical Guidelines for the Appropriate Use and Manipulation of Scientific Digital Images by [](https://doi.org/10.1007/s11948-010-9201-y)\n\n### Other text resources and examples\n\n- [Data Visualisation Course](https://exploratory-data-visualization.netlify.app/)\n- [Free visual and communication resources](https://padlet.com/evansemporiumstore/lks3aoyyhkpnkmpe)\n- [A collection of notebooks demonstrating plotting with matplotlib](https://github.com/KirstieJane/NH19-Visualization/)\n- [A Comprehensive Guide to the Grammar of Graphics for Effective Visualization of Multi-dimensional Data](https://towardsdatascience.com/a-comprehensive-guide-to-the-grammar-of-graphics-for-effective-visualization-of-multi-dimensional-1f92b4ed4149)\n- [Friends Don't let Friends Write Bad Graphs](https://github.com/cxli233/FriendsDontLetFriends) by @li2023dataviz\n- [Data by Design](https://dataxdesign.io/)\n- [Parallel Coordinates Plots (PCP)](https://visualizationcheatsheets.github.io/pcp.html)\n- [I’ve Stopped Using Box Plots. Should You?](https://nightingaledvs.com/ive-stopped-using-box-plots-should-you/)\n\n### Videos\n\n- 5 minute videos on [Data visualisation - Introduction and motivation](https://www.youtube.com/watch?v=7t2qYO2zEWQ) and [Figure design, design process, fundamentals](https://www.youtube.com/watch?v=WtYArH4EIRg)\n- [Create Effective Data Visualizations](https://youtu.be/jt-VdyFzjj0) (second part focuses primarily on Tableau)\n- [Data visualisation for scientific papers](https://www.youtube.com/playlist?list=PLWb8IFSVeQ62NbG-u4vQlh4srFcC2KH5g) videos by ReproducibiliTeach\n- Outline of grammar of graphics\n    -   [A Grammar of Graphics](https://www.youtube.com/watch?v=RCaFBJWXfZc) - Excellent summary of the grammar of graphics layers or 'functional pipeline'\n    -   [Leland Wilkinson - The Grammar of Graphics](https://www.youtube.com/watch?v=1X93Sum_SyM) - Leland himself giving a quick high level summary of the grammar of graphics\n-   [Martin Krzywinski: A pandemic of bad charts](https://www.youtube.com/watch?v=_YGmfsKL8N8)\n-   [EMBL Keynote Lecture 2019 - Data visualization and data science, Hadley Wickham](https://www.youtube.com/watch?v=9YTNYT1maa4)\n-   Practical high level intros to Tufte's principles\n    -   [What should we do to improve our graphics and figures?](https://www.youtube.com/watch?v=00Fha1lkRxk)\n    -   [Graphical Excellence](https://www.youtube.com/watch?v=VkyzSAPkQ50)\n- Workshop: [Missing Data Exploration, Imputation, and Evaluation](https://www.youtube.com/watch?v=MTHgZNB5Wxw) by Hanne Oberman\n- [Violin plots should not exist](https://www.youtube.com/watch?v=_0QMKFzW9fw) by Angela Collier \n\n### Podcasts\n\n-   [Data Viz Today](https://dataviztoday.com/)\n-   [Data Stories](https://datastori.es/)\n-   [PolicyViz](https://policyviz.com/podcast/)\n\n### Other\n\n-   [biovis](http://biovis.net/)\n"
  },
  {
    "path": "book/website/reproducible-research/rdm.md",
    "content": "(rr-rdm)=\n# Research Data Management\n\n(rr-rdm-prerequisites)=\n## Prerequisites\n\nThe following sections in this handbook provide useful context and complementary information to this chapter:\n\n| Prerequisite                                        | Importance |\n| --------------------------------------------------- | ---------- |\n| {ref}`rr-vcs` | Helpful    |\n| {ref}`rr-open`      | Helpful    |\n\n(rr-rdm-summary)=\n## Summary\n\nResearch Data Management (RDM) [{term}`def<Research Data Management>`] covers how research data can be stored, described and reused.\nData here is used as a generic term to encompass all digital objects.\nRDM is a vital part of enabling reproducible research.\nRDM ensures efficiency in research workflows, and also greater reach and impact, as data become [FAIR](#rr-rdm-fair) (Findable, Accessible, Interoperable and Reusable).\nData should be stored in multiple locations and backed-up regularly to prevent loss or data corruption.\nClearly describing data using documentation and metadata ensures that others know how to access, use and reuse your data, and also enable conditions for sharing and publishing data to be outlined.\n\n```{figure} ../../figures/data-ecosystem.*\n---\nheight: 400px\nname: data-ecosystem\nalt: >\n  A blue and grey scale cartoon.\n  Private data is shown as an underground reservoir of water under a well with an open padlock representing access to that data.\n  Above the well a person with a ponytail says confidentiality and consent indicating the mechanisms by which the private data can be accessed.\n  A pipeline fountain is spurting 1s and 0s forming a cloud labelled public data, which is raining 1s and 0s onto a field of bar chats and pie charts being tended by people, indicating the provement of public knowledge and scientific progress through public data.\n  A wheelbarrow of pie charts labelled public benefit at the front of the image reinforces this idea. \n---\nOpen and closed data for reproducibility.\n_The Turing Way_ project illustration by Scriberia. Original version on Zenodo. http://doi.org/10.5281/zenodo.3695300. \n```\n\n\n(rr-rdm-useful)=\n## Motivation and Background\n\n```{figure} ../../figures/rdm-storage.*\n---\nheight: 400px\nname: rdm-storage\nalt: A cartoon woman standing in front of a very messy closet. She is looking for data that she generated last year. Behind her a person is watching doubtfully, unsure whether she can find it in this mess.\n---\nResearch Data Management: making it possible to retrieve data from last year.\n_The Turing Way_ project illustration by Scriberia. Original version on Zenodo. http://doi.org/10.5281/zenodo.3695300. \n```\n\n- [Managing your data](#rr-rdm-storage-organisation) allows you to always find your data and ensure the quality of scientific practice.\n- [Storing your data properly](#rr-rdm-storage) and backing-up regularly prevents data loss.\n- It can help with [recognition](#cm-citable-orcid) for all research outputs.\n- It stimulates **collaboration** with others, who will find it easier to [understand and reuse your data](#rr-rdm-metadata).\nIt helps to set out the recommended data practices of a lab or a team in a [](#cl-team-manual), or in a project's [](#rr-rdm-dmp).\n- RDM is cost/time efficient (see [Why Does Data Need to be Managed?](https://www.youtube.com/watch?v=C7RZ2t3Cpig)), especially if [shared publicly](#rr-rdm-sharing), as you will always be able to find and use your data.\n"
  },
  {
    "path": "book/website/reproducible-research/renv/renv-containers.md",
    "content": "(rr-renv-containers)=\n# Containers\n\n(rr-renv-containers-why)=\n## Why Containers?\n\nEven for moderately complex projects, the size of the software dependency stack can be huge.\nTake a simple pipeline to build a pdf report for an analysis scripted in R using `Rmarkdown`, for example.\nTo make this reproducible, not only do (i) the respective R packages need to be installed and (ii) the R version needs to be the same, but also (iii) the versions of `pandoc` and `LaTeX` need to be the same as during runtime.\n\nInstead of trying to resolve these dependencies via a package manager (such as conda) -  which also depends on all required software being available in a single package manager - it might be easier to create a snapshot of the entire computing environment including all dependencies.\nThese computing environments are then self-contained, hence the name 'containers'.\n\n[This RedHat blog\npost](https://developers.redhat.com/blog/2018/02/22/container-terminology-practical-introduction)\nprovides an introduction to containers and container terminology.\n\n(rr-renv-containers-what)=\n## What are Containers?\n\nContainers allow a researcher to package up a project with all of the parts it needs - such as libraries, dependencies, and system settings - and ship it all out as one package.\nAnyone can then open up a container and work within it, viewing and interacting with the project as if the machine they are accessing it from is identical to the machine specified in the container - regardless of what their computational environment _actually_ is.\nThey are designed to make it easier to\ntransfer projects between very different environments.\n\nIn a way, containers behave like a virtual machine. To the outside world, they look like their own complete system.\nHowever, unlike a virtual machine, rather than creating a whole virtual operating system plus all the software and tools typically packaged with one, containers only contain the individual components they need in order to operate the project they contain.\nThis gives a significant performance boost and reduces the size of the application.\n\nContainers are a particularly useful way for reproducing research which relies on software to be configured in a certain way, or which makes use of libraries that vary between (or do not exist on) different systems.\nIn summary, containers are a more robust way of sharing reproducible research than package management systems or Binder because they reproduce the entire system used for the research, not just the packages explicitly used by it.\nTheir major downside is that due to their greater depth, they are conceptually more difficult to grasp and produce than many other methods of replicating computational environments.\n\nBen Corrie give a reasonably accessible overview of core concepts in ['What is a container?'](https://www.youtube.com/watch?v=EnJ7qX9fkcU).\n\n(rr-renv-containers-images)=\n## What are Images?\n\nImages are the files used to generate containers.\nHumans do not make images; they write recipes to generate images.\nContainers are then identical copies instantiated from images.\n\nThink of it like this:\n\n- A recipe file a human writes contains all the steps to generate a working version of the project and its computational environment, but no actual materials.\nThink of this as a blueprint.\n- Building an image takes that recipe and using it, assembles all the packages, software libraries, and configurations needed to make the full-fledged project and environment, and bundles them up in a condensed lump.\nThink of images like a piece of flat-pack furniture made using the blueprint.\n- Containers take that image and assemble a fully working version of the project and the environment needed to run it.\nThink of this as assembling the flat-pack furniture.\n\nSo if a researcher wants to allow others to reproduce their work, they would need to write a recipe file, and use it to build an image of their project.\nThey can then share this image file with anyone who wants to replicate their work.\nThat person can then use the image to generate a container containing a working version of the project.\n\n(rr-renv-containers-docker)=\n## Docker\n\n(rr-renv-containers-whatdocker)=\n### What is Docker?\n\nThere are many tools available for creating and working with containers.\nWe will focus on [Docker](https://www.docker.com/), which is widely used, but be aware that others such as [Apptainer](http://apptainer.org/), [LXC](https://linuxcontainers.org/), [Podman](https://podman.io/), [Singularity](https://sylabs.io/singularity/) also exist.\nApptainer and Singularity are designed with a focus on high-performance computing and tend to be well supported and preferred on such systems.\nPodman may be seen as a completely free and open-source alternative to Docker.\nIt has a Docker compatible command-line interface and can run Docker container images.\nApptainer, Singularity and Podman do not need `sudo` permissions to be run, while up until April 2020 Docker did (please see the {ref}`rr-renv-containers-rootless` section).\n\nIn Docker, the recipe files used to generate images are known as Dockerfiles, and should be named `Dockerfile`.\n\n[Docker Hub](https://hub.docker.com/) hosts a great many pre-made images, such as\n[images](https://hub.docker.com/_/ubuntu) of Ubuntu machines, which can be downloaded and build upon.\nThis makes the process of writing Dockerfiles relatively easy since users very rarely need to start from scratch, they can just customise existing images.\nHowever, this leaves a user vulnerable to similar security issues as described in the {ref}`rr-renv-yaml-security` of the {ref}`rr-renv-yaml` sub-chapter:\n\n- It is possible to include malicious code in Docker images\n- It is possible for people producing images to unknowingly include software in them with security vulnerabilities\n\n[This](https://opensource.com/business/14/7/docker-security-selinux) article goes deeper into the potential security vulnerabilities of containers and here is a [detailed breakdown](https://opensource.com/business/14/9/security-for-docker) of security features currently within Docker, and how they function.\nThe best advice for using images built by others is, as usual, only download and run something on your machine if it comes from a trusted source.\nDocker Hub has \"official image\" badges for commonly used, verified images as shown here:\n\n```{figure} ../../../figures/docker-official-image.*\n---\nname: docker-official-image\nalt: A screenshot of official image badges\n---\n```\n\n(rr-renv-containers-installdocker)=\n### Installing Docker\n\nInstallers for Docker on a variety of different systems are available [here](https://docs.docker.com/install/).\nDetailed installation instructions are also available for a variety of operating systems such as [Ubuntu](https://docs.docker.com/install/linux/docker-ce/ubuntu/), [Debian](https://docs.docker.com/install/linux/docker-ce/debian/), [Macs](https://docs.docker.com/docker-for-mac/install/), and [Windows](https://docs.docker.com/docker-for-windows/install/).\n\n(rr-renv-containers-commands)=\n### Key Commands\n\nHere are a few key commands for creating and working with containers:\n\n- To build an image from a Dockerfile, go to the directory where the Dockerfile is and run:\n  ```\n  sudo docker build --tag image_name .\n  ```\n- To list the images on your system, use:\n  ```\n  sudo docker image ls\n  ```\n- To remove an image, run:\n  ```\n  sudo docker rmi image_name\n  ```\n- To open a container from an image, run:\n  ```\n  sudo docker run -i -t image_name\n  ```\n  The `-i -t` flags automatically open up an interactive terminal within the container so you can view and interact with the project files.\n- To exit an interactive terminal, use:\n  ```\n  exit\n  ```\n- To get a list of active containers with IDs, run:\n  ```\n  sudo docker container ls\n  ```\n- There are also three main commands used for changing the status of containers:\n  - Pausing suspends the process running the container.\n    ```\n    sudo docker pause container_ID\n    ```\n    Containers can be unpaused by replacing `pause` with `unpause`.\n  - Stopping a container terminates the process running it. A container must be stopped before it can be deleted.\n    ```\n    sudo docker stop container_ID\n    ```\n    A stopped container can be restarted by replacing `stop` with `restart`.\n  - If `stop` does not work containers can be killed using\n    ```\n    sudo docker kill container_ID\n    ```\n- To remove a container, run:\n  ```\n  sudo docker rm container_ID\n  ```\n(rr-renv-containers-dockerfiles)=\n### Writing Dockerfiles\n\nLet us go through the anatomy of a very simple Dockerfile:\n\n```\n# Step 1: Set up the computational environment\n\n# Set the base image\nFROM ubuntu:18.04\n\n# Install packages needed to run the project\nRUN apt-get update && \\\n    apt-get install -y --no-install-recommends python3.7 python3-pip && \\\n    rm -rf /var/lib/apt/lists/*\nRUN python3 -m pip install numpy\n\n#-----------------------\n\n# Step 2: Include the project files in the image\n\n# Copy files from the `project_files` directory on the machine building the image\n# into the `project` folder in the container. This folder and any missing\n# directories in its path are created automatically.\nCOPY project_files/ project/\n```\n\nThis looks complicated, but most of the lines in this example are comments (which are preceded by `#`'s).\nThere are only six lines of actual code.\nThe first of these is a `FROM` statement specifying a base image.\nAll Dockerfiles require a FROM, even if it is just `FROM SCRATCH`.\nAll the following commands in a Dockerfile build upon the base image to make a functioning version of the researcher's project.\nSpecifying a version for the image (`18.04` in this case) is optional.\nHowever, it is best practice as it ensures that our Dockerfile remains valid after new releases of Ubuntu, which may not include packages (or specific versions thereof) that we require later (for example `python3.7`).\n\nIt is worth spending time to choose an appropriate base image, as doing so can reduce the amount of work involved in writing a Dockerfile dramatically.\nFor example, a collection of images with the R programming language included in them can be found [here](https://github.com/rocker-org/rocker-versioned).\nIf a project makes use of R, it is convenient to use one of these as a base image rather than spend time writing commands in your Dockerfile to install R.\n\nThe biggest block of lines comes next.\nIt's a series of `RUN` statements, which run shell commands when building the image.\nIn this block, they are used to install the software necessary to run the project. The first `RUN` block is a\nchain of commands of this form:\n\n```\nRUN command_to_do_thing_1 \\\n   && command_to_do_thing_2 \\\n   && command_to_do_thing_3 \\\n   && command_to_do_thing_4\n```\n\nIt is good practice to group related commands into a single `RUN` block to reduce the final size of your image by\n[avoiding the creation of unnecessary layers](https://docs.docker.com/develop/develop-images/#minimize-the-number-of-layers).\nWe also follow best-practice by using `--no-install-recommends` to [avoid installing unnecessary packages](https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#dont-install-unnecessary-packages)\nand [cleaning up the `apt-cache`](https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#run), both of which further reduce the size of Debian or Ubuntu images.\n\nAfter we have installed Python, we use another RUN statement to install a library required by our code.\n\nFinally the `COPY` command is used to copy the project files from the machine building the image into the image itself.\nThe syntax of this command is `COPY file_to_copy location_in_container_to_copy_to`.\nIn this example, all the files in the `project_files` directory are included in the `project` file in the container.\nNote that you can only copy files from the directory where the Dockerfile is located, or subdirectories within it (in the example, that is the\n`project_files` subdirectory).\n\nThe `ADD` command has the same capabilities as `COPY`, but it can also be used to add files not on the machine building the image.\nFor example it can be used to include files hosted online by following `ADD` with a URL to the file.\nIt is good practice to use `COPY`, except where `ADD` is specifically required, as the term `COPY` is more explicit about what is being done.\n\nHere is what happens if a container is opened from an image called `book_example`, built from the example above:\n\n```{figure} ../../../figures/container-example.*\n---\nname: container-example\nalt: A screenshot of what happens when a container is opened from an image\n---\n```\n\nAs you can see, the directory `project` has been created, and inside the project files, `analysis.py` and `data.csv` have been copied into it.\nBecause the Dockerfile already includes the software required for the project, in the image, the `analysis.py` script runs without installing more software.\n\n(rr-renv-containers-dockerfiles-workdir)=\n### `WORKDIR`\n\nThis command can be used in Dockerfiles to change the current working directory.\nCommands that follow this in the Dockerfile will be applied within the new working directory unless/until another `WORKDIR` changes the working directory.\nWhen a container is opened with an interactive terminal, the terminal will open in the final working directory.\nHere is a simple example of a Dockerfile that uses `WORKDIR`, and the container it generates.\n\n```\n# Basic setup\nFROM ubuntu\nRUN apt-get update\n\n# Make a directory called A\nRUN mkdir A\n\n# Make the working directory A\nWORKDIR A\n\n# Make two directories, one called B_1 and one called B_2\nRUN mkdir B_1\nRUN mkdir B_2\n```\n\n```{figure} ../../../figures/workdir-example.*\n---\nname: workdir-example\nalt: Screenshot of container generated using WORKDIR command\n---\n```\n\nDirectories `B_1` and `B_2` have been created within directory `A`.\n\n`WORKDIR` should be used when changing directories is necessary while building an image.\nIt may be tempting to use `RUN cd directory_name` instead, as this syntax will be more familiar to those that commonly work via the command line,\nbut this can lead to errors.\nAfter each `RUN` statement in a Dockerfile, the image is saved, and any following commands are applied to the image anew.\nAs an example, here is what happens in the above example if the `WORKDIR A` line is swapped\nfor `RUN cd A`.\n\n```{figure} ../../../figures/cd-example.*\n---\nname: cd-example\nalt: A screenshot of what happens when the WORKDIR command is swapped with RUN cd\n---\n```\n\nAll the directories have are in the top level in this case, rather than `B_1` and `B_2` being inside `A`.\nThis is because the image was restarted after the `RUN cd A` command and opened at the top (root) level by default, so that is where the\n`mkdir B_1` and `mkdir B_2` commands took effect.\n\n(rr-renv-containers-dockerfiles-commands)=\n#### Other Commands\n\nOther commands that are sometimes used in Dockerfiles include:\n\n- `CMD`: This is used to run commands as soon as the container is opened.\nThis is different to RUN commands which are commands run as part of _setting up_ a container.\nFor example, to have a welcome message when a container is opened from the image, `CMD` could be used as follows:\n  ```\n  CMD [\"echo\",\"Welcome! You just opened this container!\"]\n  ```\n  It is good practice to use CMD for any commands that need to be run before someone starts working in the container\n  instead of forcing users to run them themselves (and trusting that they will even know that they need to).\n- `VOLUMES`: These will be discussed {ref}`later <rr-renv-containers-volumes>`.\n- `MAINTAINER`: This contains information regarding the person that wrote the Dockerfile.\nIt is typically included at the top of a Dockerfile.\n- `EXPOSE`: This includes ports that should be exposed.\nIt is more relevant to people using Docker to share web apps.\n- `USER`: Change the user that a command is run as (useful for dropping privileges).\n\n(rr-renv-containers-dockerignore)=\n### Building Images and `.dockerignore` Files\n\nAs mentioned in the {ref}`key commands <rr-renv-containers-commands>` section, to build an image open a terminal in the same directory as\nthe Dockerfile to be used and run:\n\n```\nsudo docker build --tag name_to_give_image .\n```\n\nWhen an image is built everything in the Dockerfile's directory and below (this is called the \"context\") is sent to the Docker daemon to build the image.\nThe daemon uses the Dockerfile and its context to build the image.\nIf the context contains many large files, which are not needed for building the image, (old datafiles, for example) then it is a waste of time sending them to the daemon.\nDoing so can make the process of building an image slow.\nFiles can be excluded from the context by listing them in a text file called `.dockerignore`.\nIt is good practice to do so.\n\nThe files do not need to be listed individually in the `.dockerignore` file.\nHere is an example of the contents of a `.dockerignore` file:\n\n```\n*.jpg\n**/*.png\ndata_files/*\nfile_to_exclude.txt\n```\n\nThis excludes from the context:\n\n- All `.jpg` files in the same directory as the Dockerfile file\n- All `.png` files in the same directory as the Dockerfile file _or any subdirectories within it_\n- All files within the `data_files` directory\n- The file named `file_to_exclude.txt`\n\n(rr-renv-containers-sharing)=\n### Sharing Images\n\nDocker images can be shared most easily via [Docker Hub](https://hub.docker.com/), which requires an account.\nSay two researchers, Alice and Bob, are collaborating on a project and Alice wishes to share an image of some of her work with Bob.\n\nTo do this, Alice must:\n\n- Write a Dockerfile to produce an image of her work.\n- Build the image. She (being inventive) calls it image_name\n- Go to Docker Hub and sign up for an account. Say Alice (again, being inventive) chooses the username `username_Alice`\n- Log into Docker Hub via the terminal on her machine using:\n  ```\n  sudo docker login\n  ```\n- Tag the image of her project on her machine via the command line by supplying the name of the image and using the pattern `username/image_name:version`. So Alice runs the command:\n  ```\n  sudo docker tag image_name username_Alice/image_name:version_1\n  ```\n- Push the image to her Docker Hub account using:\n  ```\n  sudo docker tag push username_Alice/image_name:version_1\n  ```\n- Alice's image is now online and can be downloaded. Over to Bob...\n\nBob (assuming he already has Docker installed) can open a container from Alice's image simply by running\n\n```\nsudo docker run -i -t username_Alice/image_name:version_1\n```\n\nInitially, Docker will search for this image on Bob's machine.\nWhen it does not find it, it will _automatically_ search Docker Hub, download Alice's image, and open the container with Alice's work and environment on Bob's machine.\n\n(rr-renv-containers-copying)=\n### Copying Files To And From Containers\n\nContainers act much like virtual machines; as a result, copying files into and out of them is not as trivial as copying files to different locations within the same computer is.\n\nA file can be copied from the machine running a container into the container using:\n\n```\nsudo docker cp file_name container_ID:path_to_where_to_put_file/file_name\n```\n\nRecall that container IDs can be obtained using `sudo docker container ls`.\n\nA file can be copied from within a container to the machine running the container by running the following command on the machine running the container:\n\n```\nsudo docker cp container_ID:path_to_file/file_name path_to_where_to_put_file/file_name\n```\n\nIf the second part (the `path_to_where_to_put_file/file_name`) is substituted for a `.`, then the file will be copied to whatever directory the terminal running the command is in.\n\n(rr-renv-containers-volumes)=\n### Volumes\n\nEvery time a container is opened from an image, that container is completely new.\nSay a container is opened, and work is done within it.\nIf that container is closed, and the image it came from is again used to start another container, none of that work will be in the new one.\nIt will simply have the starting state described in the image.\n\nThis can be a problem if a researcher wants to work in a container over time. Fortunately, there is a way around this using volumes.\nVolumes store the work done within a container even after it is closed, and can be used to load that work into future containers.\n\nTo create/use a volume, run:\n\n```\nsudo docker run -i -t --mount source=volume_name,target=/target_directory image_name\n```\n\nYou should give your volume a more descriptive name than `volume_name`.\nA `target` directory is required; only work within this directory will be saved in the volume.\nOnce the researcher is done, they can close the container as normal.\nWhen they come back to the project and want to continue their work, they only need to use the same command as above, and it will load the work contained in `volume_name` into the new container.\nIt will save any new work there too.\n\nBelow is a list of volume related commands:\n\n- To list volumes: `sudo docker volume ls`\n- To delete a volume: `sudo docker volume rm volume_name`\n- To delete all unattached volumes: `sudo docker volume prune`\n\nIf, when deleting a container, a `-v` is included after `rm` in `sudo docker rm container_ID`, any volumes associated with the container will also be deleted.\n\n(rr-renv-containers-rootless)=\n### Docker without root access\n\nUp until April 2020, the only way to run Docker was with root access.\n\"Rootless\" mode was made available as part of the [v20.10](https://docs.docker.com/engine/security/rootless/) release.\nRootless mode is currently only available on Linux and requires an initial install of Docker >= v20.10.\n\nThe underlying difference between Docker without and with rootless mode is that previously any system running Docker had a daemon running as `uid0` that creates and owns all images, but with rootless mode the user creates and owns any images that they initialize.\nTo install and run the rootless version of Docker as a non-root user, use the following commands (where `20.10` refers to the installed version of Docker):\n\n```\ndockerd-rootless-setuptool.sh install\ndocker run -d --name dind-rootless --privileged docker:20.10-dind-rootless\n```\n\nThe following prerequisites, which are part of the [`shadow-utils`](https://github.com/shadow-maint/shadow) package are required to run Docker rootless: `newuidmap` and `newgidmap`.\n\n(rr-renv-containers-podman)=\n## Podman\n\n[Podman](https://podman.io/) is an open-source container engine that can be seen as a meaningful alternative to Docker.\nIn fact, Podman provides a Docker-compatible command-line interface.\nFor most use cases, a user familiar with Docker can simply alias the Docker command to Podman (`alias docker=podman`) and carry on as normal.\nPodman includes a [full set of tools](https://docs.podman.io/en/latest/Commands.html) to create, run, manage, and share containers.\n\nPodman is free and open-source software released under the Apache License 2.0.\nThis is in contrast to Docker which has some open-source components, such as the engine and command-line interface, but also develops closed-source, [subscription-requiring](https://www.docker.com/blog/updating-product-subscriptions/) software, including the Docker Desktop clients for MacOS and Windows.\n\nAll [Open Container Initiative](https://opencontainers.org/) container images can be used with Podman including Docker images hosted on Docker Hub.\nIt is likely existing projects using Docker can be migrated to Podman.\n\nUnlike Docker which uses a daemon running as root, Podman is daemonless.\nUnprivileged users can run containers using Podman.\nIn most cases this will be configured automatically.\nThis avoids a problem with the standard Docker configuration where users able to run containers have implicit access to the Docker daemon.\nThe Docker Daemon is run by root by default and provides a trivial way to escalate privileges and get a high level of access to the hosts devices and filesystem.\n\n````{note}\nAdding a user to the docker group is essentially giving them a high-level of access to the host with a very simple route to privilege escalation.\nFor example:\n\n```console\ndocker run --mount=type=bind,source=/,destination=/host -it busybox\n```\n\nThe user now has access to the filesystem of the host with the permissions of `root`.\n````\n\n(rr-renv-containers-installpodman)=\n### Installing Podman\n\nThe Podman documentation has up-to-date instructions for [installing Podman](https://podman.io/getting-started/installation).\n\nIt is important to understand that Podman is a tool for running Linux containers and so it requires a Linux host.\nIf your computer is running Windows or MacOS, you can use the [Podman remote client](https://github.com/containers/podman/blob/main/docs/tutorials/mac_win_client.md) to interact with Podman on a Linux virtual machine or remote Linux Host.\n\nAlternatively, the MacOS Podman client includes the experimental `podman machine` subcommand for managing a Linux virtual machine that Podman can use.\nDetailed instructions can be found [on Podman's GitHub repository](https://github.com/containers/podman/blob/main/docs/tutorials/mac_experimental.md)\nOn Windows you can also run Podman in the [Windows Subsystem for Linux](https://docs.microsoft.com/en-us/windows/wsl/) (>= 2.0).\n[This RedHat blog post](https://www.redhat.com/sysadmin/podman-windows-wsl2) has instructions.\n\nFor most recent Linux distributions you should [find Podman in the official repositories](https://podman.io/getting-started/installation#linux-distributions).\nMost distributions (including Arch, Debian, Fedora, and Ubuntu) will apply the appropriate configuration to let unprivileged users run Podman automatically.\nIf there are any problems, the Podman documentation [has instructions for configuration](https://docs.podman.io/en/latest/markdown/podman.1.html?highlight=rootless#rootless-mode).\nThis is as simple as two commands per user who should be able to run Podman.\n\n(rr-renv-containers-commandspodman)=\n### Podman Commands\n\nPodman has a Docker-compatible command line interface so those commands will not be reiterated here.\nThe Docker commands in the {ref}`key commands <rr-renv-containers-commands>` should all work by substituting `sudo docker` with `podman`.\nDetails of all commands and their options can be found [in the Podman documentation](https://docs.podman.io/en/latest/Commands.html).\n\n(rr-renv-containers-imagespodman)=\n### Building Container Images\n\nPodman can build container images using the `podman build` command.\nPodman will build images from either Dockerfiles or Containerfiles.\nContainerfiles use the same format as Dockerfiles, which are discussed in {ref}`Writing Dockerfiles <rr-renv-containers-dockerfiles>`\n\n(rr-renv-containers-rootlesspodman)=\n### Rootless Containers\n\nRootless containers are containers run by a normal user (not using `sudo` or with the `root` account).\nThese containers never have more privileges than the account that runs them.\nThis is an strong security advantage for rootless containers compared to running containers as root or through the Docker daemon.\n\n```{note}\nIf you are running a distribution with SELinux (for example Fedora or CentOS) you may need to add the `--privileged` flag to the Podman commands below in order to access the host filesystem inside of containers.\n```\n\nThis can be demonstrated with a simple example. Create a directory and put file with some text in it:\n```console\nmkdir tmp\necho \"Hello\" > tmp/a.txt\n```\n\nNow mount this directory into an interactive [busybox](https://www.busybox.net/) container:\n```console\npodman run --mount=type=bind,source=./tmp,destination=/tmp -it docker.io/library/busybox\n```\n\nIn the container's shell, confirm that the session belongs to the root user:\n```console\n/ # id\nuid=0(root) gid=0(root) groups=10(wheel)\n/ # whoami\nroot\n```\n\nAppend some text to the file created on the host, mounted at `/tmp/a.txt` in the container:\n```console\n/ # echo \"World!\" >> /tmp/a.txt\n```\n\nCreate a new file in the `tmp` directory and close the container:\n```console\n/ # touch /tmp/b.txt\n/ # exit\n```\n\nInspect the files in `tmp` on the host. The file `a.txt` was modified by the container process:\n```console\n$ cat tmp/a.txt\nHello\nWorld!\n```\n\nThe file `b.txt` was created. However, despite being created by `root` inside the container, on the host it is owned by the user which ran the container.\nThis can be confirmed with `ls -l tmp/b.txt`.\n\nIt is also impossible to read or modify files that the user running the container would not be able to.\nFor example, the `/etc/shadow` file which contains users' hashed passwords:\n\n```console\npodman run --mount=type=bind,source=/etc/shadow,destination=/shadow -it docker.io/library/busybox\n/ # cat /shadow\ncat: can't open '/shadow': Permission denied\n```\n\nIf the above Podman command were run as root, using `sudo`, then the container would not be rootless and it would be possible to read and modify `etc/shadow`.\n\n(rr-renv-containers-singularity)=\n## Singularity\n\n```{note}\nAs Singularity is a tool for running Linux containers it can not run natively on\nWindows or MacOS.\n\nSingularity provides [Vagrant](https://www.vagrantup.com/) boxes which let users\non Windows or MacOS quickly deploy a virtual machine with Singularity installed.\nInstructions can be found [in the Singularity\ndocumentation](https://sylabs.io/guides/latest/admin-guide/installation.html#installation-on-windows-or-mac)\n```\n\nHistorically, a significant drawback of using Docker for reproducible research is that it was not intended as a user-space application but as a tool for server administrators.\nAs such, it required root access to operate.\nThere is, however, no reason why the execution of an analysis should require root access for the user.\nThis is especially important when computations are conducted on a shared resource like high-performance computing (HPC) systems where users will never have root access.\n\nThe [singularity](https://www.sylabs.io/) container software was introduced to address this issue.\nSingularity was created with HPC systems and reproducible research in mind (see [this](https://www.youtube.com/watch?v=DA87Ba2dpNM) video).\nSingularity containers do not require root access to run.\nRoot access is normally required to build container images.\nHowever it is possible to build images as a normal user (with some restrictions) using the [fakeroot feature](https://sylabs.io/guides/latest/user-guide/fakeroot.html).\nThis enables users to build container images locally before running them on a high-performance cluster.\nAs an added benefit, this makes it possible to bring software and project dependencies to an HPC system without requiring the system administrators to install or maintain them.\n\nFurthermore, Singularity can take advantage of the large Docker ecosystem by building Singularity container images from Docker container images.\nDocker images can also be extend by building new images based on docker containers as a base layer.\n\n(rr-renv-containers-singularity-images)=\n### Singularity Container Images\n\nJust as Docker images are built using `Dockerfile` files, singularity containers are built from singularity definition files.\nThe Singularity documentation has a complete [specification of the definition file format](https://sylabs.io/guides/latest/user-guide/definition_files.html)\n\nAs a minimal working example, we can build a `lolcow` container based on the official ubuntu docker container image.\nThis is based on [an example](https://sylabs.io/guides/latest/user-guide/build_a_container.html) in the Singularity documentation.\nPut the following text in a file named `lolcow.def`:\n\n```\nBootstrap: docker\nFrom: ubuntu\n\n%post\n    apt-get -y update\n    apt-get -y install fortune cowsay lolcat\n\n%environment\n    export LC_ALL=C\n    export PATH=/usr/games:$PATH\n\n%runscript\n    fortune | cowsay | lolcat\n```\n\nThis example uses a docker image (`ubuntu`) as a basis.\nThe required packages are installed packages with `apt-get`.\nThe `PATH` variable is updated so that the run commands will be found when the container is run.\nThe `%runscript` defines the command to be executed when the container is run.\n\nA container image can then be built:\n\n```console\nsudo singularity build lolcow.sif lolcow.def\n```\n\nThis will pull the ubuntu image from Docker Hub, run the steps of the recipe in the definition file and produce a Singularity image file (`lolcow.sif`).\nThe container can be run with:\n\n```console\nsingularity run lolcow.sif\n```\n\nor, simply:\n\n```console\n./lolcow.sif\n```\n\n````{note}\nThe way that Singularity packages container images as a single file in your working directory is convenient for migrating your work to HPC.\nYou may simply copy your container image to a cluster using `scp` or `rsync`:\n\n```console\nrsync -avz lolcow.sif <user>@<hpc_system>:~/\n```\n````\n\nYou should see a nice ASCII cow and a few words of wisdom:\n\n```\n___________________________________\n/ You will be called upon to help a \\\n\\ friend in trouble.                /\n-----------------------------------\n       \\   ^__^\n        \\  (oo)\\_______\n           (__)\\       )\\/\\\n               ||----w |\n               ||     ||\n```\n\n(rr-renv-containers-singularity-gpu)=\n### GPU Support\n\nA key distinction of Singularity is that it is able to natively utilise host GPUs in containers.\nSingularity has support for CUDA supporting GPUs from Nvidia and ROCm supporting GPUs from AMD.\nRunning containers with GPU support does not require root privileges.\nComplete details on using GPUs can be found [in the Singularity documentation](https://sylabs.io/guides/latest/user-guide/gpu.html)\n\nTo use Nvidia GPUs in a container pass the `--nv` flag to the `run`, `exec` or `shell` command.\nFor example:\n\n```console\nsingularity pull docker://tensorflow/tensorflow:latest-gpu\nsingularity exec --nv tensorflow_latest_gpu.sif nvidia-smi\n```\n\nUsing AMD GPUs is similar but the `--rocm` flag is used.\nFor example:\n\n```console\nsingularity pull docker://rocm/tensorflow:latest\nsingularity run --rocm tensorflow_latest.sif\n```\n\nWhen using the `--nv` and `--rocm` graphics drivers and libraries from the host are passed to the container.\nYou must therefore ensure that the application inside the container is compatible with the driver stack on the host.\nFor example, if the host has support for CUDA 10.2 a container featuring PyTorch build for CUDA 11.3 is likely to problems running.\n\n(rr-renv-containers-singularity-hpc)=\n### Singularity on HPC\n\nBeing HPC compatible, singularity containers are also supported by a wide range of workflow management tools.\nFor example, both [snakemake](https://snakemake.readthedocs.io/en/stable/) and [nextflow](https://www.nextflow.io/docs/latest/singularity.html) support job-specific singularity containers.\nThis makes singularity containers uniquely suited for parallelizing workflows on HPC systems using the widely used [slurm](https://slurm.schedmd.com/documentation.html) workload manager.\nUsing singularity, containers and snakemake/nextflow is a way of scaling reproducibility to a massive scale.\nFurthermore, as an added benefit, bringing workflows from a desktop machine to an HPC system no longer requires writing custom job submission scripts.\n\n(rr-renv-containers-singularity-storage)=\n### Long-term Storage of Container Images\n\nIt is important to note that a mere container recipe file is not reproducible in itself since the build process depends on various (online) sources.\nThus, the same recipe file might lead to different images if the underlying sources were updated.\n\nTo achieve true reproducibility, it isimportant to store the actual container _images_.\nFor singularity images, this is particularly easy since an image is simply a large file.\nThese can vary in size, from a few tens of megabytes (micro-containers) to several gigabytes, and are therefore not suited for being stored in a git repository themselves\nA free, citable, and long-term solution to storing container images is [zenodo.org](https://zenodo.org/) which allows up to 50 Gb per repository.\nSince zenodo mints DOIs for all content uploaded, the images are immediately citable.\nIn contrast to [Docker Hub](https://hub.docker.com/) (which also only accepts docker images),\nzenodo is also clearly geared towards long-term storage and discoverability via a sophisticated metadata system.\nThus, it is ideally suited for storing scientific containers associated with particular analyses since these tend to not change over time.\n\n(rr-renv-containers-warning)=\n### Words of Warning\n\nEven though singularity and docker might look similar, they are conceptually very different.\nSingularity handles the distinction between the host and container file system differently.\nFor instance, by default, singularity includes a few bind points in the container, namely:\n\n- `$HOME`\n- `/sys:/sys`\n- `/proc:/proc`\n- `/tmp:/tmp`\n- `/var/tmp:/var/tmp`\n- `/etc/resolv.conf:/etc/resolv.conf`\n- `/etc/passwd:/etc/passwd`\n- `$PWD`\n\nNote, `$PWD` comes in handy since it implies that all files in the working directory are visible within the container.\nBinding `$HOME` by default, however, also implies that software using configuration files from `$HOME` might behave unexpectedly since the image specific configuration files are overwritten with the current users settings in `$HOME`.\nWhile this behaviour is handy in HPC scenarios, it is potentially dangerous for reproducible research.\nTo avoid potential issues, any software installed in a singularity container should be pointed to a global, user-independent configuration file.\n"
  },
  {
    "path": "book/website/reproducible-research/renv/renv-options.md",
    "content": "(rr-renv-options)=\n# Capturing Computational Environments\n\nThere are several ways of capturing computational environments.\nThe major ones covered in this chapter will be Package Management Systems, Binder, Virtual Machines, and Containers.\nEach has its pros and cons, and the most appropriate option for you will depend on the nature of your project.\n\nThey can be broadly split into two categories: those that capture only the software and its versions used in an environment (Package Management Systems), and those that replicate an entire computational environment - including the operating system and customised settings (Virtual Machines and Containers).\n\nAnother way these can be split is by how the reproduced research is presented to the reproducer.\nUsing Binder or a Virtual Machine creates a much more graphical, GUI-type result.\nIn contrast, the outputs of Containers and Package Management Systems are more easily interacted with via the command line.\n\n```{figure} ../../../figures/computational-environments.*\n---\nname: computational-environments\nalt: A depiction of the various tools used to capture computational environments\n---\nWays of capturing computational environments\n```\n\nA brief description of each of these tools is given below\n\n\n(rr-renv-options-pms)=\n## Package Management Systems\n\nPackage Management Systems [{term}`def<Package Management System>`] are tools used to install and keep track of the software (and critically versions of software) used on a system and can export files specifying these required software packages/versions.\nThe files can be shared with others who can use them to replicate the environment, either manually or via their Package Management Systems.\n\n\n(rr-renv-options-binder)=\n## Binder\n\nBinder [{term}`def<Binder>`] is a service which generates fully-functioning versions of projects from a git repository and serves them on the cloud.\nThese \"binderized\" projects can be accessed and interacted with by others via a web browser.\nIn order to do this, Binder requires that the software (and, optionally, versions) required to run the project are specified.\nUsers can make use of Package Management Systems or Dockerfiles (discussed in the {ref}`rr-renv-options-containers` sections) to do this if they so desire.\n\n\n(rr-renv-options-vm)=\n## Virtual Machines\n\nVirtual Machines [{term}`def<Virtual machine>`] are simulated computers.\nA user can make a \"virtual\" computer very easily, specifying the operating system they want it to have, among other features, and run it like any other app.\nWithin the app will be the desktop, file system, default software libraries, and other features of the specified machine.\nThese can be interacted with as if it was a real computer.\nVirtual Machines can be easily replicated and shared.\nThis allows researchers to create Virtual Machines, perform their research on them, and then save their state along with their files, settings and outputs.\nThey can then distribute these as a fully-functioning project.\n\n\n(rr-renv-options-containers)=\n## Containers\n\nContainers [{term}`def<Container>`] offer many of the same benefits as Virtual Machines.\nThey essentially act as entirely separate machines which can contain their own files, software and settings.\n\nThe difference is that Virtual Machines include an entire operating system along with all the associated software that is typically packaged with it - regardless of whether the project makes use of that associated software.\nContainers only contain the software and files explicitly defined within them in order to run the project they contain.\nThis makes them far more lightweight than Virtual Machines.\n\nContainers are particularly useful if projects need to run on high-performance computing environments.\nSince they already _contain_ all the necessary software, they save having to install anything on an unfamiliar system where the researcher may not have the required permissions to do so.\n"
  },
  {
    "path": "book/website/reproducible-research/renv/renv-package.md",
    "content": "(rr-renv-package)=\n# Package Management Systems\n\nPackage managers install and keep track of the different software packages (and their versions) that you use within an environment.\nThere are quite a few to choose from, for example, Yum, Zypper, dpkg, Nix (which will be mentioned in the {ref}`rr-binderhub` section), and language specific package managers [Python Packages](https://py-pkgs.org/) and [R Packages](https://r-pkgs.org/). We are going to focus on [Conda](https://conda.io/en/latest/), which has several useful functionalities.\n\n(rr-renv-package-conda)=\n## What Does Conda Do?\n\nConda allows users to create any number of entirely separate environments, and quickly and switch between them.\nFor example, say a researcher has a project, _Project One_, which has its own environment, defined by Conda, that is made up of the following set of packages:\n\n| **Package Name** | **Version** |\n| ------------ | ------- |\n| `Package A`    | `1.5.2`   |\n| `Package B`   | `2.1.10`  |\n| `Package C`    | `0.7.9`   |\n\nLater, the researcher starts _Project Two_ in its own environment, with the following packages:\n\n| _Package Name_ | _Version_ |\n| ------------ | ------- |\n| `Package B`    | `2.1.10`  |\n| `Package C`    | `1.2.4`   |\n| `Package D`    | `1.5.2`   |\n| `Package E`    | `3.7.1`   |\n\nNote here that the version of `package C` used in _Project Two_ has been updated from the version used in _Project One_.\nIf these project environments were not separate, then the researcher would have the choice of:\n\n- A) Using the older version of `package C` forever and not benefiting from updates and bugfixes in later versions.\n- B) Installing the updated version of the package and hoping that it does not impact _Project One_.\n- C) Installing the updated version of the package for use in _Project Two_, then uninstalling it and reinstalling the old one whenever they need to do work on _Project One_.\nThis would be extremely annoying and is a step that risks being forgotten.\n\nAll of these options are extremely poor, hence the utility of Conda for creating distinct environments that are easily interchangeable.\n\nConda can also be used to capture and export computational environments easily.\nIt can go in the other direction too; it can generate computational environments from configuration files which can be used to recreate someone else's environment.\n\nAnother benefit of Conda is that it offers much greater flexibility to users who do not have admin privileges on the machines they are working on (as is very common when working with high-performance computing facilities).\nWithout Conda, it is typically challenging to install required software onto such machines.\nHowever, because Conda creates and changes _new_ environments rather than making changes to a machine's overall system environment, admin privileges are not required.\n\nFinally, while Conda is Python-centric to a degree, it is also well-integrated for use with other languages.\nFor example, the base version of Conda includes the C++ standard library.\n\n(rr-renv-package-installing)=\n## Installing Conda\n\nNote that these installation instructions are directed towards Linux systems.\nInstructions for installing Conda on Windows or Mac systems can be found [here](https://docs.conda.io/projects/conda/en/latest/user-guide/install/).\n\nGo to [https://repo.continuum.io/miniconda/](https://repo.continuum.io/miniconda/) and download the latest Miniconda 3 installer for your system (32 bit or 64 bit). It will have a name like `miniconda_version_number.sh`.\nRun the installer using:\n\n```\nbash Miniconda_version_number.sh\n```\n\nYou can check that Conda has installed successfully by typing:\n\n```\nconda --version\n```\n\nwhich should output a version number.\n\n(rr-renv-package-using)=\n## Making and Using Environments\n\nConda automatically installs a base environment with some commonly used software packages.\nIt is possible to work in this base environment; however, it is good practice to create a new environment for every project you start.\n\nTo create an environment, use `conda create --name your_project_env_name` followed by a list of packages to include.\nTo include the `scipy` and `matplotlib` packages, add them to the end of the command:\n\n```\nconda create --name Project_One scipy matplotlib\n```\n\nYou can specify the versions of certain (or all) packages by using `=package_number` after the name. For example, to specify `scipy 1.2.1` in the above environment:\n\n```\nconda create --name Project_One scipy=1.2.1 matplotlib\n```\n\nWhen creating environments, you can also specify versions of languages to install. For example, to use `Python 3.7.1` in the _Project_One_ environment:\n\n```\nconda create --name Project_One python=3.7.1 scipy=1.2.1 matplotlib\n```\n\nNow that an environment has been created, it is time to activate (start using) it via `conda activate environment_name`.\nSo in this example:\n\n```\nconda activate Project_One\n```\n\nNote that you may need to use `source` instead of `conda` if you are using an old version of Conda.\n\nOnce an environment is activated, you should see the environment name before each prompt in your terminal:\n\n```\n(Project_One) $ python --version\nPython 3.7.1\n```\n\n(rr-renv-package-deleting)=\n## Deactivating and Deleting Environments\n\nYou can deactivate (get out of) an environment using:\n\n```\nconda deactivate\n```\n\nand remove (delete) an environment as shown here:\n\n```\nconda env remove --name Project_One\n```\n\nTo check if an environment has been successfully removed, you can look at a list of all the Conda environments on the system using:\n\n```\nconda env list\n```\n\nHowever, deleting an environment may not delete the package files that were associated with it.\nThis can lead to a lot of memory being wasted on packages that are no longer required.\nPackages that are no longer referenced by any environments can be deleted using:\n\n```\nconda clean -pts\n```\n\nAlternatively, you can delete an environment (such as _Project_One_) along with its associated packages via:\n\n```\nconda remove --name Project_One --all\n```\n\n(rr-renv-package-removing)=\n## Installing and Removing Packages Within an Environment\n\nWithin an environment, you can install more packages using:\n\n```\nconda install package_name\n```\n\nsimilarly, you can remove them via:\n\n```\nconda remove package_name\n```\n\nThis is the best way to install packages from within Conda as it will also install a Conda-tailored version of the package.\nHowever, it is possible to use other methods if a Conda-specific version of a package is not available.\nFor example, `pip` is commonly used to install Python packages.\nSo, a command like:\n\n```\npip install scipy\n```\n\nwill install the `scipy` package explicitly - as long as `pip` is installed inside the currently active Conda environment.\nUnfortunately, when Conda and `pip` are used together to create an environment, it can lead to a state that can be hard to reproduce.\nSpecifically, running Conda after `pip` may potentially overwrite or break packages installed via `pip`.\nOne way to avoid this is by installing as many requirements as possible with Conda, and then use pip.\nDetailed information can be read on the post, [Using Pip in a Conda Environment](https://www.anaconda.com/using-pip-in-a-conda-environment/).\n\nAlthough Python packages have been used in many of the examples given here, Conda packages do not have to be Python packages. For example, here the R base language is installed along with the R package `r-yaml`:\n\n```\nconda create --name Project_One r-base r-yaml\n```\n\nTo see all of the installed packages in the current environment, use:\n\n```\nconda list\n```\n\nTo check if a particular package is installed, for example, `scipy` in this case:\n\n```\nconda list scipy\n```\n\nA Conda channel is where it downloaded a package from.\nCommon channels include `Anaconda` (a company which provides the defaults conda package channel), and `conda-forge` (a community-driven packaging endeavour).\nYou can explicitly install a package from a certain channel by specifying it like:\n\n```\nconda install -c channel_name package_name\n```\n\n(rr-renv-package-exporting)=\n## Exporting and Reproducing Computational Environments\n\nConda environments can be exported easily to human-readable files in the YAML format.\nYAML files are discussed in more detail {ref}`later <rr-renv-yaml>` in this chapter.\n\nTo export a conda environment to a file called `environment.yml`, activate the environment and then run:\n\n```\nconda env export > environment.yml\n```\n\nSimilarly, Conda environments can be created from YAML files via:\n\n```\nconda env create -f environment.yml\n```\n\nThis allows researchers to reproduce one another's computational environments quickly.\nNote that the list of packages is not just those explicitly installed.\nIt can include OS-specific dependency packages so environment files may require some editing to be portable to different operating systems.\n\nEnvironments can also be cloned.\nThis may be desirable, for example, if a researcher begins a new project and wants to make a new environment to work on it in; the new project's environment (at least initially) may require the same packages as a previous project's environment.\n\nFor example, to clone the _Project_One_ environment, and give this new environment the name _Project_Two_:\n\n```\nconda create --name Project_Two --clone Project_One\n```\n"
  },
  {
    "path": "book/website/reproducible-research/renv/renv-resources.md",
    "content": "(rr-renv-resources)=\n# Resources and Checklist\n\n(rr-renv-resources-checklist)=\n## Checklist\n\n- Choose the most appropriate method for your project for capturing your computational environment\n- Capture your computational environment\n- Share your captured computational environment along with your results/analysis\n\n(rr-renv-resources-learn)=\n## What to Learn Next\n\nWe recommend reading the chapter on {ref}`rr-testing`, and then the chapter on {ref}`rr-ci`.\nNote that the chapter on {ref}`rr-vcs` is a prerequisite for the chapter on continuous integration. The {ref}`rr-open` chapter also contains further information on sharing research reproducibly.\n\n(rr-renv-resources-reading)=\n## Further Reading\n\nThe [Docker documentation](https://docs.docker.com/get-started/) contains a lot of information about containers in general.\n\n\n(rr-renv-resources-bibliography)=\n## Bibliography\n\n- [semantic versioning](https://semver.org) **Creative Commons - CC BY 3.0**\n\n- [A. Brinckman, et al., Computing environments for reproducibility: Capturing the \"Whole Tale\", Future Generation Computer Systems (2018), https://doi.org/10.1016/j.future.2017.12.029](https://www.sciencedirect.com/science/article/pii/S0167739X17310695) **Attribution 4.0 International (CC BY 4.0)**\n\n- [Paper presenting singularity](https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0177459) **CC0 1.0 Universal (CC0 1.0)**\n\n- [Paper presenting singularity](https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0177459) **CC0 1.0 Universal (CC0 1.0)**\n\n- [Package Managers](https://opensource.com/article/18/7/evolution-package-managers) **Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)**\n\n- [Talk by Will Furnass on Conda](https://github.com/willfurnass/conda-rses-pres/blob/master/content.md) **Attribution-NonCommercial-ShareAlike 4.0 International**\n\n- [YAML tutorial](https://gettaurus.org/docs/YAMLTutorial/) **[Apache 2.0](http://www.apache.org/licenses/LICENSE-2.0)**\n\n- [Binder illustration](https://opendreamkit.org/2017/11/02/use-case-publishing-reproducible-notebooks/) **Permission to use granted by Juliette Taka, Logilab and the OpenDreamKit project.**\n\n- [mybinder docs intro](https://github.com/jupyterhub/binder/blob/master/doc/introduction.rst) **[BSD 3-Clause](https://github.com/binder-examples/requirements/blob/master/LICENSE)**\n\n- [Zero to Binder - official tutorial](https://github.com/Build-a-binder/build-a-binder.github.io/blob/master/workshop/10-zero-to-binder.md) **[BSD 3-Clause](https://github.com/binder-examples/requirements/blob/master/LICENSE)**\n\n- [Zero to Binder - adapted version](https://github.com/the-turing-way/the-turing-way/blob/main/workshops/boost-research-reproducibility-binder/workshop-presentations/zero-to-binder.md) **MIT**\n\n- [Zero to Binder](https://github.com/Build-a-binder/build-a-binder.github.io/blob/master/workshop/10-zero-to-binder.md) **[BSD 3-Clause](https://github.com/binder-examples/requirements/blob/master/LICENSE)**\n\n- [Bryan Brown LITA blog](https://litablog.org/2014/12/virtual-machines-in-a-nutshell/) **[Copyright granted for educational use](http://www.ala.org/copyright)**\n- [What is docker?](https://opensource.com/resources/what-docker) **CC BY-SA 4.0**\n\n- [What are containers?](https://opensource.com/resources/what-are-linux-containers?intcmp=7016000000127cYAAQ) **CC BY-SA 4.0**\n- [Docker carpentry](http://www.manicstreetpreacher.co.uk/docker-carpentry/aio/) **Creative Commons Attribution 4.0**\n- [Geohackweek tutorial](https://geohackweek.github.io/Introductory/docker-tutorial_temp/) **Creative Commons Attribution 3.0 Unported**\n- [Nüst, D., Sochat, V., Marwick, B., Eglen, S., Head, T., Hirst, T., & Evans, B. (2020, November 10). Ten simple rules for writing Dockerfiles for reproducible data science, https://doi.org/10.1371/journal.pcbi.1008316\n](https://github.com/nuest/ten-simple-rules-dockerfiles) **Creative Commons Attribution 4.0 International**\n"
  },
  {
    "path": "book/website/reproducible-research/renv/renv-virtualmachine.md",
    "content": "(rr-renv-vm)=\n# Virtual Machines\n\n(rr-renv-vm-what)=\n## What are Virtual Machines?\n\nVirtual Machines (VMs) essentially package a whole computer as an app that can be run.\nAs an example, the figure below shows a windows laptop (note the windows search button in the lower-left corner) running a virtual ubuntu machine (note the terminal outputting the operating system).\nThe machine running the VM is called the `host machine`.\n\nUsing software like [VirtualBox](https://www.virtualbox.org/) or [Vagrant](https://www.vagrantup.com/), a user can create and run any number of VMs.\nAs you could probably guess, having several VMs running at once can be a drain on memory.\nSo just because you can run several VMs does not mean you should.\n\n```{figure} ../../../figures/virtual-machine.*\n---\nname: virtual-machine\nalt: A screenshot of a Virtual Machine.\n---\n\n```\n\nUsers can download, install, backup and destroy VMs at will, which is why they are an attractive tool for sharing reproducible research.\nResearch often requires specific pieces of software or system settings.\nIf a researcher wishes to reproduce another's work on their computer, making the necessary changes to their environment to run the project may impact their work.\nFor example, in the {ref}`rr-renv-useful` section of this chapter, we described how using a different version of Python can lead to unexpected changes in the results of an analysis.\nSay a researcher installs an updated version of Python to replicate an analysis because the analysis requires features only present in the updated version.\nBy doing so, they put their own work at risk.\nVMs remove that risk; any tools downloaded or settings changed will only impact the VM, keeping the reproducer's research safe.\nIf they do inadvertently break something in the VM, they can delete it and make another one.\nVMs are effectively a quarantined area.\n\n(rr-renv-vm-research)=\n## Using Virtual Machines for Reproducible Research\n\nVirtual machines can be shared by exporting them as single files.\nAnother researcher can then import that file using their own virtualisation software like [VirtualBox](https://www.virtualbox.org/) and open up a copy of the VM which will contain all the software files and settings put in place by the person that made the VM.\nTherefore in practice, they will have a working version of the project without the pain of setting it up themselves.\n\n(rr-renv-vm-research-settingup)=\n### Setting up a Virtual Machine\n\nFirst, choose a tool for generating VMs.\nHere the widely-used [VirtualBox](https://www.virtualbox.org/) is chosen.\nDownload and install it on your system.\nTo create a new machine, click \"New\" in the top left.\nA window will pop up where you can enter a name for the machine and select what operating system (and version) to use.\nIn the figure below, a machine called `demo_VM` running Ubuntu is being created:\n\n```{figure} ../../../figures/vm-create-machine.*\n---\nname: vm-create-machine\nalt: A screenshot showing a Virtual Machine is created.\n---\n\n```\n\nAs you click through, you can adjust other features of the machine to be created, such as how much memory it should have access to.\nThe default options are suitable for most purposes, but this process permits customisation.\n\n(rr-renv-vm-research-starting)=\n### Starting a Virtual Machine\n\nTo start a virtual machine, select the machine from the list of VMs on the left, and click the green `Start` arrow at the top:\n\n```{figure} ../../../figures/vm-start-machine.*\n---\nname: vm-start-machine\nalt: A screenshot showing how to start a Virtual Machine.\n---\n\n```\n\n(rr-renv-vm-research-sharing)=\n### Sharing Virtual Machines\n\nA researcher can do work on their VM, and then export it.\nTo export a VM, click `File` in the top left and then `Export`.\nThis will export the VM as a single file which can be shared.\n\n```{figure} ../../../figures/vm-export-machine.*\n---\nname: vm-export-machine\nalt: A screenshot showing how to export a Virtual Machine.\n---\n\n```\n\nSomeone that has access to this file and VirtualBox installed just needs to click `File` in the top left, then `Import` to select that file.\nOnce it is imported, they can start the VM as described before, by selecting it from the menu clicking the green start arrow at the top.\n\n(rr-renv-vm-vagrant)=\n## Declarative Virtual Machines with Vagrant\n\n[Vagrant](https://www.vagrantup.com/) is a tool which *\"enables users to create and configure lightweight, reproducible, and portable development environments\"*.\nIn this context, an environment is a virtual machine (its CPUs, RAM, networking and so on) and the machines state (operating system, packages).\nVagrant can set up virtual machines using text scripts, instead of pointing and clicking through a graphical user interface.\nThis makes it particularly useful for automating the process of setting up virtual machines and making that process reproducible.\n(rr-renv-vm-vagrant-details)=\n### How Vagrant Works\n\nUnlike some other tools you may use to create or manage virtual machines, like [VirtualBox](https://www.virtualbox.org/) and [QEMU](https://www.qemu.org/), Vagrant does not have its own hypervisor.\nInstead, Vagrant uses [providers](https://developer.hashicorp.com/vagrant/docs/providers) to interact with other virtualisation tools.\nVagrant has built in providers for [VirtualBox](https://www.virtualbox.org/), [Hyper-V](https://learn.microsoft.com/en-us/virtualization/hyper-v-on-windows/about/) and [Docker](https://www.docker.com/).\nOther providers can be supported by plugins.\nIn particular, the Vagrant developers maintain an [official plugin](https://developer.hashicorp.com/vagrant/docs/providers/vmware/installation) for [VMWare](https://www.vmware.com/).\nFor Linux users there is also a [community supported provider](https://vagrant-libvirt.github.io/vagrant-libvirt/) for [libvirt](https://libvirt.org/).\n\n```{note}\nA hypervisor is software which allows virtual machines to interact with host machines hardware at a low level.\n[This](https://www.redhat.com/en/topics/virtualization/what-is-a-hypervisor) article from Red Hat gives a good overview.\n```\n\nVagrant environments can be packed into [boxes](https://developer.hashicorp.com/vagrant/docs/boxes).\nWhen using Vagrant you will most likely start from an existing box and build your environment on top of it.\nYou can browse and search for public boxes [here](https://app.vagrantup.com/boxes/search).\n\nAfter deploying a box, Vagrant can also use [provisioners](https://developer.hashicorp.com/vagrant/docs/provisioning) to apply further configuration.\nThis is useful to adapt a generic box to a specific purpose, for example by installing packages.\nProvisioning can be as simple as a shell script but can also incorporate powerful configuration management tools like [Ansible](https://docs.ansible.com/ansible/latest/index.html), [Puppet](https://puppet.com/) and [Chef](https://www.chef.io/).\n\n(rr-renv-vm-vagrant-vagrantfile)=\n### The Vagrantfile\n\nWith Vagrant, users can define the configuration of a virtual machine (or group of virtual machines) in a declarative configuration language stored in a Vagrantfile.\nThis configuration is written in the [Ruby](https://www.ruby-lang.org/en/) programming language.\nHowever, it is not necessary to know Ruby as the syntax is simple and the [documentation](https://developer.hashicorp.com/vagrant/docs/vagrantfile) explains all of the available options.\n\n```{attention}\nFor Vagrant to recognise a Vagrantfile file, it must be called `Vagrantfile`.\n```\n\nDefining the virtual machines in plain text has a number of advantages over distributing full virtual machine images:\n\n- The files can be checked into version control\n- Small size makes them fast and easy to share\n- Users can reproducibly build environments\n- A single definition can potentially work across multiple hypervisors (like VirtualBox, VMWare, libvirt)\n\nIn combination these qualities support Vagrant's goals of lightweight, portable and reproducible environments.\nA project can maintain its development environment alongside the source code and every contributor can use the environment with minimal barriers.\n\n(rr-renv-vm-vagrant-cli)=\n### The Vagrant CLI\n\nYou will most likely use vagrant through the command line interface (CLI).\nThe CLI can be used to:\n\n- manage machines with commands like `vagrant up`, `vagrant halt` and `vagrant destroy`\n- connect to machines with `vagrant ssh` and `vagrant powershell`\n- get, package and publish boxes\n- create minimal a Vagrantfile with `vagrant init`\n\nFull documentation for all commands can be found [here](https://developer.hashicorp.com/vagrant/docs/cli).\n\n(rr-renv-vm-vagrant-sync)=\n### Syncing Data\n\nVagrant can help sharing data between the host and the virtual machine by syncing directories.\nBy default, the directory containing the Vagrantfile is mounted at `/vagrant` on the guest.\nTherefore, if you keep a Vagrantfile in the root of a git repository, when you use the Vagrant environment you will find your project at `/vagrant`.\nThis makes it convenient to develop, build and test your project within the environment.\n\nAdditional shared directories can be declared as explained in [the documentation](https://developer.hashicorp.com/vagrant/docs/synced-folders/basic_usage).\n\n```{attention}\nSome boxes may not have any shared directories, so it is best to explicitly define any that you want in your Vagrantfile.\nIn particular, the 'generic' images built by [Roboxes](https://roboxes.org/) do not have any mounts by default.\nThese boxes are popular as they cover a wide variety of distributions and support a multiple hypervisors.\n```\n\n(rr-renv-vm-ttw)=\n## A Virtual Machine for The Turing Way\n\nHere we will walk through some important part of a Vagrantfile by designing an environment to build The Turing Way.\nBuilding the book this way might help keep your host system clean from build dependencies.\nIt could also help debug problems as multiple people can better ensure they are using the same environment to work on the book.\n\n(rr-renv-vm-ttw-vagrantfile)=\n### The Vagrantfile\n\nYou can find the [full Vagrantfile](https://github.com/the-turing-way/the-turing-way/blob/main/Vagrantfile) in the root of The Turing Way git repository.\nWe will then use some of the Vagrant CLI commands to provision the machine and use it to build the book.\n\nThe top level block of the Vagrantfile specifies the Vagrant configuration version.\nThis will help maintain backwards compatibility if new versions are released.\nAll other configuration is contained within this block.\n\n```{code-block} ruby\nVagrant.configure(\"2\") do |config|\n  ...\nend\n```\n\nNext the box to build our environment from is specified.\n\n```{code-block} ruby\n  config.vm.box = \"generic/fedora36\"\n```\n\nThis is a box for version 36 of the [Fedora Workstation Linux distribution](https://getfedora.org/en/workstation/).\nThe generic org creates boxes of many Linux distributions for multiple hypervisors.\nThis makes them useful for creating environments which can be run by users on different operating systems.\n\nThe virtual machine's hostname is defined, and The Turing Way project directory is mounted at `/vagrant` inside the virtual machine.\n\n```{code-block} ruby\n  config.vm.hostname = 'theturingway'\n\n  config.vm.synced_folder \"./\", \"/vagrant\"\n```\n\nThe number of virtual CPUs and amount of memory are set in provider specific blocks.\nIn this example two virtual CPUs and 2048MB of RAM are allocated for the VirtualBox and libvirt providers.\n\nProvider specific overrides can also be specified in provider blocks.\nIn this example the synced directory settings are changed for libvirt to improve NFS compatibility.\nNFS is the default method to sync folders for libvirt.\n\n```{code-block} ruby\n  config.vm.provider \"virtualbox\" do |vb|\n    vb.cpus = 2\n    vb.memory = 2048\n  end\n\n  config.vm.provider \"libvirt\" do |lv, override|\n    lv.cpus = 2\n    lv.memory = 2048\n\n    override.vm.synced_folder \"./\", \"/vagrant\", nfs_udp: false\n  end\n```\n\nThe shell provisioner is used to install the packages necessary to build the book.\nFirst a script is defined to install pip, then use pip to install the python requirements as explained in the [book README](https://github.com/the-turing-way/the-turing-way/blob/main/book/README.md).\nThe script is then passed to the provisioner.\n\n```{code-block} ruby\n  $script = <<-'SCRIPT'\n  dnf install -y python3-pip\n  sudo -u vagrant pip install --no-warn-script-location -r /vagrant/book/requirements.txt\n  SCRIPT\n\n  config.vm.provision \"shell\", inline: $script\n```\n\n(rr-renv-vm-ttw-build)=\n### Building the book\n\nHere we will show how to use The Turing Way Vagrant machine to build the book.\nFirst you will need to make sure you have [installed Vagrant](https://developer.hashicorp.com/vagrant/tutorials/getting-started/getting-started-install) and a compatible provider.\n[VirtualBox](https://www.virtualbox.org/) will probably be the easiest provider to use as it is supported on Linux, MacOS and Windows.\nWindows users can also try [Hyper-V](https://learn.microsoft.com/en-us/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v), which is included in some editions of Windows 10 and Windows 11.\n\nIf you haven't already, clone The Turing Way repository and change to the projects root directory.\n\n```{code-block} console\ngit clone https://github.com/the-turing-way/the-turing-way.git\ncd the-turing-way\n```\n\nNow create the virtual machine.\nThe output will show Vagrant creating the machine as well as the provisioner script installing the build dependencies.\nWindows users can modify this command to `vagrant up --provider hyperv` to use Hyper-V.\n\n```{code-block} console\nvagrant up\n```\n\nYou can now connect to the machine with SSH.\nVagrant has a convenient wrapper to make this simple.\n\n```{code-block} console\nvagrant ssh\n```\n\nThe project directory has been mounted at `/vagrant` on the guest.\nWe can change to the `book/website` directory and build the book like in the [README](https://github.com/the-turing-way/the-turing-way/blob/main/book/README.md).\n\n```{code-block} console\n[vagrant@theturingway ~]$ cd /vagrant/book/website/\n[vagrant@theturingway website]$ jupyter-book build .\n```\n\nAs the directory is shared with the host system, you will be able to see the built book on your computer and view it in your browser.\n\nWhen you are done you can exit the virtual machine, and halt it.\nYou can also destroy the virtual machine to clean up all storage associated with it.\n\n```{code-block} console\n[vagrant@theturingway ~]$ exit\nvagrant halt\nvagrant destroy\n```\n"
  },
  {
    "path": "book/website/reproducible-research/renv/renv-yaml.md",
    "content": "(rr-renv-yaml)=\n# YAML\n\nYAML is an indentation-based markup language which aims to be both easy to read and easy to write.\nMany projects use it for configuration files because of its readability, simplicity, and good support for many programming languages.\nIt can be used for many things, including defining computational environments, and is well integrated with [GitHub actions](https://github.com/actions), which is discussed in the {ref}`rr-ci-github-actions` chapter.\n\n(rr-renv-yaml-files)=\n## YAML Files\n\nA YAML file defining a computational environment might look something like this:\n\n```\n# Define the operating system as Linux\nos: linux\n\n# Use the xenial distribution of Linux\ndist: xenial\n\n# Use the programming language Python\nlanguage: python\n\n# Use version of Python 3.2\npython: 3.2\n\n# Use the Python package numpy and use version 1.16.1\npackages:\n  numpy:\n    version: 1.16.1\n```\n\nNote that comments can be added by preceding them with a `#`.\n\n(rr-renv-yaml-syntax)=\n## YAML Syntax\n\nA YAML document can consist of the following elements.\n\n(rr-renv-yaml-syntax-scalars)=\n### Scalars\n\nScalars are ordinary values: numbers, strings, booleans.\n\n```\nnumber-value: 42\nfloating-point-value: 3.141592\nboolean-value: true\n\n# strings can be both 'single-quoted` and \"double-quoted\"\nstring-value: 'Bonjour'\n```\n\nYAML syntax also allows unquoted string values for convenience reasons:\n\n```\nunquoted-string: Hello World\n```\n(rr-renv-yaml-syntax-lists)=\n### Lists and Dictionaries\n\nLists are collections of elements:\n\n```\njedis:\n  - Yoda\n  - Qui-Gon Jinn\n  - Obi-Wan Kenobi\n  - Luke Skywalker\n```\n\nEvery element of the list is indented and starts with a dash and a space.\n\nDictionaries are collections of `key: value` mappings.\nAll keys are case-sensitive.\n\n```\njedi:\n  name: Obi-Wan Kenobi\n  home-planet: Stewjon\n  species: human\n  master: Qui-Gon Jinn\n  height: 1.82m\n```\n\nNote that a space after the colon is mandatory.\n\n(rr-renv-yaml-syntax-gotchas)=\n### YAML Gotchas\n\nDue to the format aiming to be easy to write and read, there are some ambiguities in YAML.\n\n- **Special characters in unquoted strings:** YAML has several special characters you cannot use in unquoted strings.\nFor example, parsing the following sample will fail:\n  ```\n  unquoted-string: let me put a colon here: oops\n  ```\n  Quote the string value makes this value unambiguous:\n  ```\n  unquoted-string: \"let me put a colon here: oops\"\n  ```\n  Generally, you should quote all strings that contain any of the following characters: `[] {} : > |`.\n- **Tabs versus spaces for indentation:** do _not_ use tabs for indentation.\nWhile the resulting YAML can still be valid, this can be a source of many subtle parsing errors.\nJust use spaces.\n\n(rr-renv-yaml-environments)=\n## How To Use Yaml To Define Computational Environments\n\nBecause of their simplicity, YAML files can be handwritten.\nAlternatively, they can be automatically generated as discussed in the {ref}`rr-renv-package` subchapter.\nFrom a YAML file, a computational environment can be replicated in a few ways.\n\n- **Manually.** It can be done manually by carefully installing the specified packages.\nBecause YAML files can also specify operating systems and versions that may or may not match that of the person trying to replicate the environment, this may require the use of {ref}`rr-renv-vm`.\n\n- **Via Package Management Systems such as Conda.** As {ref}`discussed <rr-renv-package>`, as well as being able to generate YAML files from computational environments, Conda can also generate computational environments from YAML files.\n\n(rr-renv-yaml-security)=\n## Security Issues\n\nThere is an inherent risk in downloading/using files you have not written to your computer, and it is possible to include malicious code in YAML files.\nDo not load YAML files or generate computational environments from them unless you trust their source.\n"
  },
  {
    "path": "book/website/reproducible-research/renv.md",
    "content": "(rr-renv)=\n# Reproducible Environments\n\n(rr-renv-prerequisites)=\n## Prerequisites\n\n| Prerequisite | Importance | Notes  |\n| ------------ | ---------- | ------ |\n| {ref}`Experience with the command line<rr-overview-resources-commandline>` | Necessary  | Experience with downloading software via the command line is particularly useful |\n| {ref}`Version Control<rr-vcs>` | Helpful | Experience using git and GitHub are helpful |\n\n**Recommended Skill Level**: _Intermediate-Advanced_\n\n(rr-renv-summary)=\n## Summary\n\nEvery computer has its unique computational environment [{term}`def<Computational Environment>`] consisting of its operating system, installed software, versions of installed software packages, and other features that we will describe later.\nSuppose a research project is carried out on one computer but transferred to a different computer.\nThere is no guarantee that the analysis will be able to run or generate the same results if the analysis is dependent on any of the considerations listed above.\n\nIn order for research to be reproducible, the computational environment that it was conducted in must be captured in such a way that others can replicate it.\nThis chapter describes a variety of methods for capturing computational environments and gives guidance on their strengths and weaknesses.\n\n### What is a Computational Environment?\n\nIn broad terms, a computational environment is the system where a program is run.\nThis includes features of hardware (such as the numbers of cores in any CPUs) and features of software (such as the operating system, programming languages, supporting packages, other pieces of installed software, along with their versions and configurations).\n\nSoftware versions are often defined via [semantic versioning](https://semver.org).\nIn this system, three numbers - for example, 2.12.4 - are used to define each version of a piece of software.\nWhen a change is made to the software, its version is incremented.\nThese three numbers follow the pattern _MAJOR.MINOR.PATCH_, and are incremented as follows:\n\n- *MAJOR*: significant changes\n- *MINOR*: to add functionality\n- *PATCH*: for bug fixes\n\n(rr-renv-useful)=\n## Motivation and Background\n\nLet us go through an example of why computational environments are important.\nSay I have a very simple Python script:\n\n```\na = 1\nb = 5\nprint(a/b)\n```\n\nOne divided by five is `0.2`, and this is what is printed if the script is run using Python 3.\nHowever, if a slightly older version of Python, such as Python 2, is used, the result printed is `0`.\nThis is because integer division is applied to\nintegers in Python 2, but (normal) division is applied to all types, including integers, in Python 3.\n\nTherefore this simple script returns _different_ answers depending on the computational environment in which it is run.\nUsing the wrong version of Python is easy to do, and demonstrates how a perfectly valid piece of code can\ngive different results depending on its environment.\nIf such issues can impact a simple script like this, imagine how many could appear in a complex analysis procedure which may involve thousands of lines of code and dozens of dependent packages.\n\nResearchers need to understand and capture the computational environments in which they are conducting their work, as it has the potential to impact three parties:\n\n### Researchers\n\nResearchers' working environments evolve as they update software, install new software, and move to different computers.\nIf the project environment is not captured and the researchers need to return to their project after months or years (as is common in research), they will be unable to do so confidently.\nThey will have no way of knowing what changes to a specific research environment have occurred and what impact those changes might have on their ability to run the code, and on the results.\n\n### Collaborators\n\nMuch research is now collaborative, and researching multiple different computational environments opens up a minefield of potential bugs.\nTrying to fix these kinds of issues is often time-consuming and frustrating as researchers have to figure out what the differences between computational environments are, and their effects.\nWorse, some bugs may remain undetected, potentially impacting the results.\n\n### Science\n\nScholarly research has evolved significantly over the past decade, but the same cannot be said for the methods by which research processes are captured and disseminated.\nThe primary method for dissemination - the scholarly publication - is largely unchanged since the advent of the scientific journal in the 1660s.\nThis is no longer sufficient to verify, reproduce, and extend scientific results.\nDespite the increasing recognition of the need to share all aspects of the research process, scholarly publications today are often disconnected from the underlying analysis and, crucially, the computational environment that produced the findings.\nFor research to be reproducible, researchers must publish and distribute the entire contained analysis, not just its results.\nThe analysis should be _mobile_.\nMobility of Compute is defined as the ability to define, create, and maintain a workflow locally while remaining confident that the workflow can be executed elsewhere.\nIn essence, mobility of compute means being able to contain the entire software stack, from data files up through the library stack, and reliably move it from system to system.\nAny research that is limited to where it can be deployed is instantly limited in the extent that it can be reproduced.\n\nThis chapter will describe how to capture, preserve and share computational environments and code to ensure research is reproducible.\n"
  },
  {
    "path": "book/website/reproducible-research/reproducible-research.md",
    "content": "(rr)=\n# Guide for Reproducible Research\n\n***This guide covers topics related to skills, tools and best practices for research reproducibility.***\n\n_The Turing Way_ defines reproducibility in data research as data and code being available to fully rerun the analysis.\n\nThere are several definitions of reproducibility in use, and we discuss these in more detail in the {ref}`rr-overview-definitions` section of this chapter.\nWhile it is absolutely fine for us each to use different words, it will be useful for you to know how _The Turing Way_ defines *reproducibility* to avoid misunderstandings when reading the rest of the handbook.\n\n\n```{figure} ../../figures/reproducibility.*\n---\nheight: 500px\nname: reproducible\nalt: A person showing another person what steps to take to make their data research reproducible. There is a path with several steps- Here are my data - Here are my tools - Here is my code - Here are my results\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n_The Turing Way_ started by defining reproducibility in the context of this handbook, laying out its importance for science and scientists, and providing an overview of the common concepts, tools and resources.\nThe first few chapters were on {ref}`version control<rr-vcs>`, {ref}`testing<rr-testing>`, and {ref}`reproducible computational environments<rr-renv>`.\nSince the start of this project in 2019, many additional chapters have been written, edited, reviewed, read and promoted by over 300 contributors.\n\nWe welcome your contributions to improve these chapters, add other important concepts in reproducibility, and empower researchers to work reproducibly from the start.\nCheck out our [contributing guidelines](#ch-contributing) to get involved.\n"
  },
  {
    "path": "book/website/reproducible-research/reviewing/reviewing-checklist.md",
    "content": "(rr-checklist-for-code-review)=\n# Checklist for code review process\n\nThis section presents some checklists for both the coder and the reviewer, as part of a formal review process.\nThe reviewer checklists are split into two categories: one for the whole program, and one for individual files or proposed changes.\n\nThe lists are created with a focus on good software engineering practice and are intended to be a source of inspiration.\nWhen assessing the checklists, it is recommended to consider to what extent the item mentioned is implemented.\nSome items on the lists may not apply to your project or programming language, in which case they should be disregarded.\n\nIn all cases, the goal is to use your programming experience to figure out how to make the code better.\n\n## For the coder\n\n- Does the new code meet the required standards of the project?\n  The standards are typically written under `contributing guidelines` by the project you are contributing to.\n- Is there [documentation](#rr-checklist-for-code-review:documentation) that meets the required standards of the project?\n- Are you following any declared {ref}`style guide<rr-code-quality>` for the project?\n- Are there new [tests](#rr-checklist-for-code-review:tests) for the new material, based on the required standards of the project?\n  - Do these tests pass locally?\n  - Are the tests in the rest of the code base still passing locally?\n- Create the pull request.\n- Many {ref}`continuous integration (CI)<rr-ci>` systems will check if the tests in the main project pass automatically once you create a pull request.\n  If the repository is using a CI, make sure all builds and tests complete.\n  Consult the CI reports to see if your code is causing the tests in the main project to fail.\n- If necessary, now formally request a review.\n\n## For the reviewer\n\n- Check the required standards of the project. The standards are typically written under\n`contributing guidelines` by the project you are contributing to.\n- Check the code meets basic project {ref}`style guide<rr-code-quality>`, if this is not automatically checked by {ref}`continuous integration (CI)<rr-ci>`.\n- Do the [tests](#rr-checklist-for-code-review:tests) and [documentation](#rr-checklist-for-code-review:documentation) conform to the standards?\n- Is all the code easily understood? Depending on the language, files may contain interfaces, classes or other type definitions, and functions (see [Architecture](#rr-checklist-for-code-review:architecture)).\n    The essential architectural concepts can be reviewed as follows:\n  - Check the [interfaces](#rr-checklist-for-code-review:interfaces) lists.\n  - Check the [classes and types](#rr-checklist-for-code-review:classes-and-types) lists.\n  - Check the [function/method declarations](#functionmethod-declarations) lists.\n  - Check the [function/method definitions](#functionmethod-definitions) lists.\n- Do the [tests](#rr-checklist-for-code-review:tests) actually ensure the code is robust in its intended use?\n  - Are there any bugs or other defects?\n- Are [security](#rr-checklist-for-code-review:security) issues handled correctly?\n  - Check the [security of new code](#rr-checklist-for-code-review:security-new-code).\n- Does the new code meet the [legal requirements](#rr-checklist-for-code-review:legal)?\n\n## Program level checklist\n\nHere is a list of things to consider when looking at the program as a whole,\nrather than when looking at an individual file or change.\n\n(rr-checklist-for-code-review:documentation)=\n### Documentation\n\nDocumentation is a prerequisite for using, developing, and reviewing the program.\nSomeone who isn’t involved with your project should understand what your code does,\nand what approach you’re taking. Here are some things to check for.\n\n- Is there a description of the purpose of the program or library?\n- Are detailed requirements listed?\n- Are requirements ranked according to [MoSCoW](https://en.wikipedia.org/wiki/MoSCoW_method)?\n- Is the use and function of third-party libraries documented?\n- Is the structure/architecture of the program documented? (see below)\n- Is there an installation manual?\n- Is there a user manual?\n- Is there documentation on how to contribute?\n  - Including how to submit changes\n  - Including how to document your changes\n\n(rr-checklist-for-code-review:architecture)=\n### Architecture\n\nThese items are mainly important for larger programs, but may still be good\nto consider for small ones as well.\n\n- Is the program split up into clearly separated modules?\n- Are these modules as small as they can be?\n- Is there a clear, hierarchical or layered, dependency structure between\n  these modules?\n  - If not, the functionality should be rearranged, or perhaps heavily\n    interdependent modules should be combined.\n- Can the design be simplified?\n\n(rr-checklist-for-code-review:security)=\n### Security\n\nIf you're making software that is accessible to the outside world (for example a web\napplication), then security becomes important. Security issues are defects,\nbut not all defects are security issues. A security-conscious design can help\nmitigate the security impact of defects.\n\n- Which modules deal with user input?\n- Which modules generate output?\n- Are input and output compartmentalized?\n  - If not, consider making separate modules that manage all input\n    and output, so validation can happen in one place.\n- In which modules is untrusted data present?\n  - The fewer the better.\n- Is untrusted data compartmentalized?\n  - Ideally, validate in the input module and pass only\n    validated data to other parts.\n\n(rr-checklist-for-code-review:legal)=\n### Legal\n\nAs a developer, you should pay attention to the legal rights of the\ncreators of the code you're using. Here are some things to check. When in\ndoubt, ask someone experienced in licensing for advice.\n\n- Are the licenses of all modules/libraries that are used documented?\n- Are the requirements set by those licenses fulfilled?\n  - Are the licenses included where needed?\n  - Are copyright statements included in the code where needed?\n  - Are copyright statements included in the documentation where needed?\n- Are the licenses of all the parts compatible with each other?\n- Is the project license compatible with all libraries?\n\n## File/Change level checklist\n\nWhen you're checking individual changes or files in a pull request, the\ncode itself becomes the subject of scrutiny. Depending on the language, files\nmay contain interfaces, classes or other type definitions, and functions. All\nthese should be checked.\n\n(rr-checklist-for-code-review:interfaces)=\n### Interfaces\n\n- Is the interface documented?\n- Does the concept it models make sense?\n- Can it be split up further? (Interfaces should be as small as possible)\n\nNote that most of the following items assume an object-oriented programming\nstyle, which may not be relevant to the code you're looking at.\n\n(rr-checklist-for-code-review:classes-and-types)=\n### Classes and types\n\n- Is the class documented?\n  - Are external programs needed by the class documented?\n- Does it have a single responsibility? Can it be split?\n- If it's designed to be extended, can it be?\n- If it's not designed to be extended, is it protected against that?\n- If it's derived from another class, can you substitute an object of this class for one of its parent class(es)?\n- Is the class testable?\n  - Are the dependencies clear and explicit?\n  - Does it have a small number of dependencies?\n  - Does it depend on interfaces, rather than on classes?\n\n(functionmethod-declarations)=\n### Function/Method declarations\n\n- Are there comments that describe the intent of the function or method?\n- Are input and output documented? Including units?\n- Are pre- and postconditions documented?\n- Are edge cases and unusual things commented?\n\n(functionmethod-definitions)=\n### Function/Method definitions\n\n- Are edge cases and unusual things commented?\n- Is there any incomplete code?\n- Could this function be split up (is it not too long)?\n- Does it work? Perform intended function, logic correct, ...\n- Is it easy to understand?\n- Is there redundant or duplicate code? (DRY)\n- Do loops have a set length and do they terminate correctly?\n- Can debugging or logging code be removed?\n- Can any of the code be replaced by library functions?\n\n(rr-checklist-for-code-review:security-new-code)=\n### Security of new codes\n\n- If you're using a library, do you check errors it returns?\n- Are all data inputs checked?\n- Are output values checked and encoded properly?\n- Are invalid parameters handled correctly?\n\n(rr-checklist-for-code-review:tests)=\n### Tests\n\n- Do unit tests actually test what they are supposed to?\n- Is bounds checking being done?\n- Is a test framework and/or library used?\n"
  },
  {
    "path": "book/website/reproducible-research/reviewing/reviewing-motivation.md",
    "content": "(rr-reviewing-motivation)=\n# Importance and Personal Benefits\n\n*How this will help you / why this is useful*\n\nAs with {ref}`testing<rr-testing>`, a key objective of code review is to remove mistakes and bad practice from changes made to a software project before those changes enter the main code base.\nHowever, it also has a number of other direct and indirect benefits to projects. These are discussed below.\n\nCode reviews are an effective method for improving software quality. McConnell\n(2004) suggests that unit testing finds approximately 25% of defects, function\ntesting 35%, integration testing 45%, and code review 55-60%. While that\nmeans that none of these methods are good enough on their own, and that they\nshould be combined, clearly code review is an essential tool here.\n\n(rr-reviewing-motivation-bugs)=\n## Catching Bugs and Elementary Errors\n\nA simple objective of the review process is to catch bugs and elementary errors in proposed changes before they make it into the trunk code.\nIn this way, code review shares aspects with testing.\nHowever, a robust testing programme should reduce the importance of code review for identifying these kinds of straightforward errors, as the tests should catch them before the code makes it to review stage.\nSo in principle, this function of code review should be restricted to trivial changes like documentation typos. In practice, however, code review does act as an important second line of defence against all kinds of bugs and errors.\n\n(rr-reviewing-motivation-improvements)=\n## Improvements to Testing\n\nAs noted above, a review should, and often does, catch actual bugs in proposed code changes. This, of course, is a sign that the proposed changes were not well-tested enough in the first place.\nA major aim of code review is to highlight places in the code where existing or newly developed testing processes are inadequate.\nIn this way, code review helps to ensure the future health of the code base by providing a second perspective on what kinds of tests are needed - not only now, but also under hypothetical scenarios that could arise in the future as the code evolves.\n\n(rr-reviewing-motivation-documentation)=\n## Documentation\n\n<!--SiccarPoint notes a whole section on documentation is justified in the book!-->\nThorough documentation<!--reference goes here once section exists--> is a key component of reproducibility and of sustainable software more generally.\nCode review provides another pair of eyes to consider whether the documentation provided along with the proposed code changes is fit-for-purpose.\nThis is doubly valuable, as the reviewer looking in from outside the development process may have a clearer perspective than the coder on whether new documentation offers enough information for a user coming to the code for the first time.\n\nThis kind of feedback on documentation applies equally to user-facing documentation and to inline comments.\n\n(rr-reviewing-motivation-readability)=\n## Readability\n\nRelated to documentation, code review can also help to ensure that code is readable and easy to understand. Having a second pair of eyes can help spot areas where the code might be difficult to follow.\nThe more readable your code is, the easier it will be for other developers to reproduce your code for their own purposes.\n\n(rr-reviewing-motivation-enforcement)=\n## Style Enforcement\n\nMany projects enforce certain {ref}`code style guidelines<rr-code-quality>`, be they widely-adopted standards (for example, [PEP8](https://www.python.org/dev/peps/pep-0008/), the [Google C++ style guide](https://google.github.io/styleguide/cppguide.html)) or more project-specific conventions. \n{ref}`Automated services<rr-code-style-and-formatting>` provide a convenient way to enforce a coding style and start the discussion about code quality.\n\nCode review provides an opportunity to ensure all proposed changes meet the minimum required standards for the project.\n\n(rr-reviewing-motivation-knowledge)=\n## Group Knowledge and Cohesion\n\nCode review practices provide significant advantages beyond simply defending the health of the trunk code of a project when changes are proposed.\nPeer-to-peer review creates two-way exchange of information across a web strung between all contributing members of a team. This provides effective, organic transfer of best practice.\n\nReviews conducted in the right spirit (see especially {ref}`here<rr-reviewing-recommendation-be-nice>`) also serve an important purpose in bringing team members together and creating group cohesion.\nIn particular, good reviews by core team members of the work of newcomers to a project can help make those newcomers feel welcomed and valued, and encourage their continued participation.\n"
  },
  {
    "path": "book/website/reproducible-research/reviewing/reviewing-recommend.md",
    "content": "(rr-reviewing-recommendation)=\n# Recommendations and Best Practices\n\n## Who Reviews?\n\nWithin small-scale projects where the developers all typically already know each other,\ncommon practice is for the coder to tag someone in the group as the reviewer.\nWhen you are tagged as a reviewer, first check if you have enough knowledge about\nthe new changes in the code to do a good job in a reasonable amount of time.\n\nIn contrast, large-scale development projects will likely have existing, concrete rules for\nhow reviewers are allocated to individual pull requests.\nThese rules serve to balance the group workload and to maximise the various benefits of the process to the project and its participants.\nThe very largest projects may even have dedicated staff - or teams of staff - to act as reviewers.\nTypically, code reviews can only be performed by an authorised subset of contributors within larger projects.\n\nFor projects where multiple rounds of review on similar material are likely and long development cycles are anticipated, a degree of strategic thinking on who completes reviews is sensible.\nA single reviewer is likely to be able to make comments on code they have reviewed before much more efficiently.\nHowever, letting reviewer-coder pairs like this persist is generally a bad idea, as it can lead to the same kinds of groupthink that the review process is designed to avoid in the first place.\n\n(rr-reviewing-recommendation-be-nice)=\n## Be Nice!\n\nAs with all open-source and collaborative enterprises, good internet etiquette makes the whole process go more smoothly.\nPerhaps most importantly, always assume good faith on both sides of the review interaction, and always be constructive.\nThese principles are true for the review process beyond almost any other project aspect, since it necessarily involves criticism, potentially between two complete strangers.\n\n## Keep It Collaborative\n\nUnlike traditional, \"academic-style\" peer review, most code review systems have a number of advantages: they're rarely anonymous, they're public-facing, and without the middleman of an editor, contact between reviewer and reviewee can be direct and rapid.\nThis means code review is typically a fast, flexible, and interactive process.\nGood peer review will be fully collaborative, where once a potential query has been flagged by a reviewer, the two involved parties can work forward together to find a solution.\nIt's also not atypical for third parties to chime in during the discussion threads that can grow under more gnarly review comments, either voluntarily or by request.\nThis is all to the good.\n\n## Avoid Being Subjective\n\nCode reviews should strive to be as objective as possible.\nOf course, subjective coding preferences may come up in any project.\nHowever, such preferences wherever possible should be decided at the project level beforehand.\nThus, one can avoid the situation where an opinion might be passed off as fact.\nInstead suggestions can be supported by pointing to documented preferences that have been set up in advance.\nIf you do come across undocumented preferences, discuss them with the team again and agree if you would like to add the preference to the checklist of your code review process.\n\n## Specify Crucial Versus Optional Changes\n\nYou might want to differentiate between changes that are crucial and changes that are nice to have.\nFor example, comments that begin \"You might...\" could be used to express suggestions the reviewers want the coder to consider but are not essential.\nThese can be particularly useful to guide inexperienced coders to write better code while not being too picky.\nThe coder can then decide to ignore these non-crucial comments if they don't agree.\nReviewers could use comments that begin \"You must...\" to specify those that are not optional.\n\n## Review Code in Small Chunks\n\nReviewing code in small chunks incrementally as the project is developing can help make the code review process a lot more efficient.\nIt is a lot more difficult to review an enormous codebase once significant mistakes have been introduced.\nIf mistakes can be spotted early in the process, they are much easier to fix and this will help with the overall code development process.\n\nHere is some general advice on how to integrate code reviews into our working process:\n\n- Take the time, read carefully. Review everything, nothing is too short or simple.\n- Try to have something else to do, and spread the load throughout your\nworking day. Don't review for more than an hour at a time, after that the success rate drops quite quickly.\n- Don't review more than 400 lines of code (LOC) at a time, less than 200 LOC is better. Don't review more than 500 LOC/hour.\n\n## Be Okay With Taking the Discussion Offline\n\nSometimes, with more complex code reviews, online communication can lead to unproductive conversations.\nSetting up an in-person meeting can help to resolve some of the trickier issues in a more collaborative and friendly manner.\nAs an alternative, the development/research team can set regular meetings for doing code reviews with all of the team members.\nFor example, see the approach taken by a professor organizing [lab meetings for code](http://web.archive.org/web/20210512053038/http://fperez.org/py4science/code_reviews.html).\n"
  },
  {
    "path": "book/website/reproducible-research/reviewing/reviewing-resources.md",
    "content": "(rr-reviewing-resources)=\n# Resources\n\n## Further reading\n\n- Atwood, Jeff (2006) [Code Reviews: Just Do It](http://blog.codinghorror.com/code-reviews-just-do-it/)\n- Burke, Kevin (2011) [Why code review beats testing: evidence from decades of programming research.](https://kev.inburke.com/kevin/the-best-ways-to-find-bugs-in-your-code/)\n- McConnell, Steve (2004) Code Complete: A Practical Handbook of Software Construction, Second Edition. Microsoft Press. ISBN-13: 978-0735619678\n- [How to do a code review](https://google.github.io/eng-practices/review/reviewer/)\n"
  },
  {
    "path": "book/website/reproducible-research/reviewing/reviewing-workflow.md",
    "content": "(rr-reviewing-workflow)=\n# Typical Workflows\n\n*This chapter has particular reference to Github*\n\n```{figure} ../../../figures/readable-code.*\n---\nheight: 500px\nname: readable-code\nalt: This image highlights the importance of code readability.\n---\n_The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n## Formal vs Informal Reviews\n\nFor a formal review process to work effectively, it's imperative that the project is using good {ref}`version control<rr-vcs>`.\nHowever, it bears stating that **all review of code is very valuable**, including informal or ad-hoc approaches. Indeed, this kind of informal \"over the shoulder\" peer review can form a key preliminary component even in highly formalised review pipelines, saving a lot of stress and arguing once the formal stage begins.\n\nThis section focuses on the typical workflows behind a formal review process, as commonly implemented within [Github](https://github.com/).\nOther coding environments like [BitBucket](https://bitbucket.org/) or [GitLab](https://about.gitlab.com/) could have conceptually similar mechanisms but they are not explained here.\n\n## Prepare The Code\n\nBefore requesting a review, make sure you've met all the obvious quality benchmarks for the project you are contributing to.\nThis means making sure you have checked the review list (see {ref}`checklist for the coder<rr-checklist-for-code-review>`).\n\nA reviewer should check these things (see {ref}`checklist for the coder<rr-checklist-for-code-review>`), but defects on these fronts should be by occasional oversight, rather than systematic.\n\n## Propose Changes\n\nIn the GitHub system, the review is begun directly from and often accessed through the [pull request page](https://docs.github.com/en/free-pro-team@latest/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request).\nThe review step occurs between the points where the coder believes their contribution is complete and where that contribution is merged into the trunk code for the project, and so it is intimately associated with a single pull request.\n\nWithin the Github environment, projects can be configured to *require* a review before a given pull request can be merged.\nEven if this option hasn't been selected, it's still possible (and indeed best practice) to manually request a review on a pending pull request.\n\n## Create and Discuss The Review\n\nAt this point, the review process can begin. In Github, the reviewer can provide both general comments as well as line-by-line comments, see [GitHub code review](https://github.com/features/code-review).\nEach comment becomes its own comment thread, permitting back-and-forth discussion about each issue as required.\nThis interaction should allow consensus to be reached on every comment.\n\nOnce the review is complete, you can discuss any comments necessary. Then you make the changes, and record the changes made against appropriate comments.\nAlso, you check that the reviewer knows you believe you have fully addressed the review.\n\nOnce you believe changes are complete, the reviewer checks that they do indeed address all of the initial comments. As needed, the reviewer engages constructively with you if they disagree on certain points in order to come to a consensus. In most cases, the reviewer has a final say if a consensus cannot be found.\n\nOnce post-review changes have been made to the code, make final updates the comments as needed to complete a history of what has been done and the reasoning behind it.\n\n## Communicating Results Through GitHub\n\nIn Github, comments should be added in the `Files changed` section, so they can be attached to a particular line of code, see [GitHub reviewing changes in pullrequests](https://docs.github.com/en/free-pro-team@latest/github/collaborating-with-issues-and-pull-requests/reviewing-changes-in-pull-requests). Make many small comments this way, rather than a big ball of text with everything in it, so that different issues can be kept separate. Where relevant, refer to existing Issues and documentation.\n\nIf you're reviewing existing code rather than changes, it is still handy to use pull requests.\nIf you find an issue that has an obvious fix, you can submit a pull request with a patch in the usual way.\n\nIf you don't have a fix, you can add an empty comment to the relevant line, and create a pull request from that as a patch. The relevant line(s) will then light up in the pull request's `Files changed` overview, and you can add your comments there.\nIn this case, either the pull request is never merged (but the comments processed some other way, or not at all), or the extra comments are reverted and replaced by an agreed-upon fix.\n\nIn all cases, file many small pull requests, not one big one, as GitHub's support for code reviews is rather limited. Putting too many issues into a single pull request quickly becomes unwieldy.\n\n## Merge The Changes\n\nOnce the review process is complete, the reviewer approves the changes, and the merge can occur.\nIndividual projects typically have rules and/or guidelines for whether the coder or the reviewer actually presses the merge button, so check.\nIn many cases, project workflows make completion of a review and its sign-off by the reviewer a formal precondition of performing the merge.\nFor the avoidance of doubt, adopting this principle even for small or informal projects is probably sensible.\n"
  },
  {
    "path": "book/website/reproducible-research/reviewing.md",
    "content": "(rr-reviewing)=\n# Code Reviewing Process\n\n(rr-reviewing-prerequisites)=\n## Prerequisites\n\n| Prerequisite | Importance | Notes |\n| -------------|------------|-------|\n| {ref}`Version Control<rr-vcs>` | Necessary | Understanding the way that [GitHub](https://github.com) arranges its branches, forks, and pull requests within repositories is needed. |\n\n```{figure} ../../figures/bug-catching.*\n---\nheight: 500px\nname: bug-catching\nalt: People catching different insects in different ways - representing bugs in our code or project.\n---\nCatching bugs. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n(rr-reviewing-summary)=\n## Summary\n\nCode review provides an additional way of testing code quality.\nInstead of relying simply on {ref}`tests<rr-testing>` which the original author puts together themselves, code review gets another programmer to look over the new code and assess it. The goal is to point out strengths and also potential areas of improvement.\n\nCode review is often done in pairs, with each reviewer also having some of their code reviewed by their partner.\nDoing this can help programmers to see and discuss issues and alternative approaches to tasks, and to learn new tips and tricks.\nThis also means code review practices are particularly well-suited to projects with more than one contributor making changes, where each is working on different parts of the code.\nNonetheless, even the smallest scale projects can harness these approaches with some creative project management.\n\nBecause of their nature, code reviews act as qualitative - rather than quantitative - tests but are no less valuable for that.\n\nThis section will provide an overview of rationales, best practices, and some possible workflows for code review.\nSome details refer specifically to GitHub's code review functionality as a powerful and widely-used example of a formal code review system; however, equivalent and very similar systems are available elsewhere (for example, [GitLab](https://about.gitlab.com)), and even informal code review practices can also be very beneficial to a project.\n"
  },
  {
    "path": "book/website/reproducible-research/risk-assess/risk-assess-impact.md",
    "content": "# Risk assessment: complexity and impact\n\nWe all use risk assessments all the time. Sometimes they’re formal procedures to ensure an activity is safe, but most of the time they’re the thought of a moment- Is this coffee too hot?\nIs there a bus coming? Software is no different, and using a risk assessment approach like the one described below can really help make your work successful and sustainable.\n\n## The risk matrix\n\nA risk matrix is a very popular way of quantifying what’s going on with the thing you’re interested in. One axis measures exposure in some way, and the other the impact of a mishap.\nThe further from the origin, the more safeguards are needed to make the risk acceptable.\n\n```{figure} ../../../figures/risk-matrix.*\n---\nname: risk-matrix\nalt: Impact vs complexity risk matrix\n---\nImpact vs complexity risk matrix\n```\n\nIn our case, we will use ‘complexity’ and ‘impact’ as the two axes. Some case studies illustrate how it works…\n\nCase 1\n\n> Richard needs to submit 100 small jobs to the department cluster, with the names of the jobs varying according to a simple pattern. This is tedious and he wants to go outside and play. Therefore, Richard decides to write a short shell script to submit all the jobs. He pauses for a few seconds and asks:\n\n> How complicated is this? It’ll only be about 1 screen of text.\n\n> What’s if it goes wrong? The jobs won’t submit or run and I’ll get some failure emails.\n\n> Here, Richard decides that both the complexity and impact of this tiny piece of software are low. Therefore, using version control and writing documentation is disproportionate right now. He decides to do a dry run by echoing the submit line to the terminal so he can give it a quick check.\n\n>A few weeks later, someone else in the lab wants to do the same thing. Richard offers his script as it worked quite well for him. The goalposts have moved. Richard pauses for a few more seconds to and reassesses the risk…\n\n>…5 years later, Richard’s script has evolved into a large workflow control system allowing several universities to manage complex workflows  consisting of 1000’s of jobs being submitted to a range of different compute resources. The software now has a formal project board that sets the governance and direction of the software, ensuring that it is sustainable and meets the needs of the 100s of users worldwide.\n\nCase 2...\n\n> Jemma has a problem with visualising some data. The usual library can’t cope with the format her data. She’s heard about Seth’s Friday afternoon project where he’s written a wrapper around this library to solve what seems to be the same problem. They have a coffee and decide to work together. During this coffee, they make some decisions about how they’re going to work successfully together- this is their risk assessment. Seth agrees to go away and improve the inline documentation and add some use case examples before sharing. Jemma agrees to set up a repository into which Seth will put the code.\n\n> Over time, more people start to make use of this software, with feature requests adding complexity and changes in the underlying library causing breakages. Jemma and Seth agree that things are getting a bit risky because the impact of wrong results might cause problems with publishing results. They therefore introduce continuous integration tests and a review process to ensure things remain sustainable.\n\nThe key point of these case studies is that every piece of software has different needs to be sustainable, and these requirements can change over time. The use of version control, testing, documentation and other sustainability concepts are useful for managing risk. Using none of these tools leaves your software exposed to things going wrong, but using all of them from the outset can get in the way of innovation.\nThe risk assessment approach helps you find the right balance for now. Revisit the topic once in a while, or when something circumstances change.\n\n## More about measuring complexity\n\nOne measure of complexity is line count.\nThe more lines you have the more places there are to make a mistake. However, there are other things one might care about.\nHow many libraries do you depend on? How many functions are there? All of these measure the complexity of the codebase.\nComplexity can take other forms too.\nHow many use cases are there?\nDoes your blob counting software only get used for counting blobs in the biosciences?\nAre there people using it to count blobs in CCTV images?\nWhat types of computer are people using it on?\nCPU? GPU? Raspberry Pi?\nTake a broad view of your software.\n\n## More about measuring impact\n\nWhat happens when (not if) your software doesn’t work?\nSometimes, it just annoys you for a few minutes.\nHowever, other software going wrong can have huge consequences- the retraction of your seminal paper or even lives being lost.\nMeasuring the impact requires good knowledge of what your software is being used for.\nIt can sometimes be difficult to keep track of this until things go wrong.\n However, one can try to head this off at the pass by asking questions like ‘is this piece of software I use for the analysis in my paper any good?’.\nAgain, take a broad view of your software.\n"
  },
  {
    "path": "book/website/reproducible-research/risk-assess/risk-assess-resources.md",
    "content": "# Overview of Risk assessment\n\nUnderstand your software and what it is used for.\nKnowing this helps you decide what sustainability concepts are appropriate for your needs.\nThere are many tools and ecosystems that are commonly used to help you practice these concepts- GitHub, Docker and many more.\nRead on to learn about these concepts and tools…\n"
  },
  {
    "path": "book/website/reproducible-research/risk-assess.md",
    "content": "(rr-risk-assess)=\n# Risk Assessment - deciding how to manage your software\n\n## TL;DR\nUse a risk assessment to help choose the appropriate sustainable software concepts for your project. Too little and your software is unsustainable; too much and you won’t be able to Get On With It. It can take just a few seconds, but gets you off on the right foot.\n\n## Longer read…\nWe all use risk assessments all the time. Sometimes they’re formal procedures to ensure an activity is safe, but most of the time they’re the thought of a moment: \"Is this coffee too hot?\", \"Is there a bus coming?\". Software is no different, and using a risk assessment approach like the one described below can really help make your work successful and sustainable.\n\n### The risk matrix\nA risk matrix is a very popular way of quantifying what’s going on with the thing you’re interested in. One axis measures exposure in some way, and the other the impact of a mishap. The further from the origin, the more safeguards are needed to make the risk acceptable.\n\nIn our case, we will use ‘complexity’ and ‘impact’ as the two axes. Some case studies illustrate how it works…\n\nCase 1\n\n> Richard needs to submit 100 small jobs to the department cluster, with the names of the jobs varying according to a simple pattern. This is tedious and he wants to go outside and play. Therefore, Richard decides to write a short shell script to submit all the jobs. He pauses for a few seconds and asks:\n  \"How complicated is this? It’ll only be about 1 screen of text.\"\n  \"What if it goes wrong? The jobs won’t submit or run and I’ll get some failure emails.\"\n\n## Prerequisites/recommended skill level\n> This needs writing\n\n## Summary\nUse a risk assessment to help choose the appropriate sustainable software concepts for your project.\nToo little and your software is unsustainable; too much and you won’t be able to Get On With It.\nIt can take just a few seconds, but gets you off on the right foot.\n\n## How this will help you/why this is useful\n> This needs writing\n"
  },
  {
    "path": "book/website/reproducible-research/testing/testing-acceptance-regression.md",
    "content": "(rr-testing-acceptance-regression)=\n# Acceptance and Regression Testing\n\n(rr-testing-acceptance)=\n## Acceptance testing\n\nAcceptance tests are one of the last tests types that are performed on software prior to delivery.\nAcceptance testing is used to determine whether a piece of software satisfies all of the requirements from the business or user's perspective.\nDoes this piece of software do what it needs to do?\nThese tests are sometimes built against the original specification.\n\nBecause research software is typically written by the researcher that will use it (or at least with significant input from them) acceptance tests may not be necessary.\n\n(rr-testing-regression)=\n## Regression testing\n\nRegression testing is a style of testing that focuses on retesting after changes are made.\nThe results of tests after the changes are compared to the results before, and errors are raised if these are different.\nRegression testing is intended to ensure that changes (enhancements or defect fixes) to the software have not adversely affected it.\nThe likelihood of any code change impacting functionalities that are not directly associated with the code is always there and it is essential that regression testing is conducted to make sure that fixing one thing has not broken another.\nRegression testing can be performed during any level of testing (unit, integration, system, or acceptance) but it is mostly relevant during system testing.\nAny test can be reused, and so any test can become a regression test.\n\nRegression testing is obviously especially important in team working, but it is surprisingly easy to break your own code without noticing it, even if you are working on your own.\nAnd because regression testing is next to impossible to do satisfactorily by hand (it's simply too tedious), it's an obvious case for automation.\n\nRegression tests are written by first running the (or part of the) code for given inputs and recording the outputs.\nThis could be done by writing input files and saving the corresponding output files.\nThese outputs serve as the expected outputs from the program given the corresponding inputs.\nRegression tests are then written.\nEach regression test runs the code for the set of inputs.\nIt then compares the output from the code to the expected outputs, and raises an error if these do not match.\n\nRegression testing approaches differ in their focus.\n\nCommon examples include:\n- Bug regression: We retest a specific bug that has been allegedly fixed.\n- Old fix regression testing: We retest several old bugs that were fixed, to see if they are back. (This is the classical notion of regression: the program has regressed to a bad state.)\n- General functional regression: We retest the project broadly, including areas that worked before, to see whether more recent changes have destabilized working code.\n- Conversion or port testing: The program is ported to a new platform and a regression test suite is run to determine whether the port was successful.\n- Configuration testing: The program is run with a new device or on a new version of the operating system or in conjunction with a new application.\nThis is like port testing except that the underlying code hasn't been changed--only the external components that the software under test must interact with.\n\n### Limitations of Regression Testing\n\nRegression tests are not guaranteed to test all parts of the code.\nMost importantly, regression tests do not test if the result outputted by a piece of code is *correct*, only that it has not changed.\nThis the remit of other kinds of tests, though regression tests can serve as the starting point for introducing tests for correctness, by both the use of analytical solutions, and through test functions which read output files and check the data for correctness, as defined by a researcher.\n"
  },
  {
    "path": "book/website/reproducible-research/testing/testing-checklist.md",
    "content": "(testing-checklist)=\n# Checklist for Code Testing\n\nThis checklist contains a lot of items.\nAs [mentioned before](#rr-testing-write-tests), it is far better to do some of the items than none of them.\nDo not be discouraged if this list of tasks seems insurmountable.\n\n(testing-checklist:writing-tests)=\n## Writing tests\n\n- Write a few smoke tests.\n- Write unit tests for all your code units.\n- Write integration tests to check the integration between units.\n- Write a few system tests. Prioritise common and important paths through the program.\n- Write regression tests. Regression tests can exist at any level of testing.\n- If appropriate for your project write acceptance tests.\n- Add runtime tests into your project.\n\n(testing-checklist:good-practice-checks)=\n## Good practice checks\n\n- Document the tests and how to run them.\n  - Write scripts to set up and configure any resources that are needed to run the tests.\n- Pick and make use of a testing framework.\n- Run the tests regularly.\n  - Automate the process of running tests. Consider making use of continuous integration (see continuous integration chapter) to do this.\n- Check the code coverage of your tests and try to improve it.\n- Engage in code review with a partner.\n"
  },
  {
    "path": "book/website/reproducible-research/testing/testing-driven-development.md",
    "content": "(rr-testing-driven-development)=\n# Test Driven Development\n\nOne way of ensuring tests are not neglected in a project is to adopt test-driven development.\nThis is an approach in which unit tests are written before the code.\nThe tests thus describe a \"contract\" that the code is expected to comply with.\nThis ensures that the code will be correct (as far as can be enforced by the testing contract) as written, and it provides a useful framework for thinking about how the code should be designed, what interfaces it should provide, and how its algorithms might work.\nThis can be a very satisfying mental aid in developing tricky algorithms.\n\nOnce the tests are written, the code is developed so that it passes all the associated tests.\nTesting the code from the outset ensures that your code is always in a releasable state (as long as it passes the tests!).\nTest driven development forces you to break up your code into small discrete units, to make them easier to test; the code must be modular.\nThe benefits of this were discussed in the section on {ref}`unit testing<rr-testing-unittest>`.\n\nAn alternative development approach is behaviour driven development.\nSimply put, under the test driven development paradigm, we check \"has the thing been done correctly?\", whereas under behaviour driven development we test \"has the correct thing been done?\".\nIt is more often used in commercial software development to focus development on making the software as simple and effective as possible for users.\nUser experience is very rarely at the heart of code written for the purposes of research, but there are cases where such software is written with a large user-base in mind.\nIn such cases behaviour-driven development is a path worth considering.\n"
  },
  {
    "path": "book/website/reproducible-research/testing/testing-exceptions.md",
    "content": "(rr-testing-challenges)=\n# Challenges and exceptional cases in testing\n\n(rr-testing-challenges-stochastic-code)=\n## Testing stochastic code\n\nSometimes code contains an element of randomness, a common example being code that makes use of [Monte Carlo methods](https://en.wikipedia.org/wiki/Monte_Carlo_method).\nTesting this kind of code can be very difficult because if it is run multiple times it will generate different answers, all of which may be \"right\", even is it contains no bugs. There are two main ways to tackle testing stochastic code:\n\n### Use random number seeds\n\nRandom number seeds are a little difficult to explain so here's an example.\nHere's a little Python script that prints three random numbers.\n\n```python\nimport random\n\n# Print three random numbers\nprint(random.random())\nprint(random.random())\nprint(random.random())\n```\n\nThis script has no bugs but if you run it repeatedly you will get different answers each time.\nNow let's set a random number seed.\n\n```python\nimport random\n\n# Set a random number seed\nrandom.seed(1)\n\n# Print three random numbers\nprint(random.random())\nprint(random.random())\nprint(random.random())\n```\n\nNow if you run this script it outputs\n\n```python\n0.134364244112\n0.847433736937\n0.763774618977\n```\n\nand every time you run this script you will get the *same* output, it will print the *same* three random numbers.\nIf the random number seed is changed you will get a different three random numbers:\n\n```python\n0.956034271889\n0.947827487059\n0.0565513677268\n```\nbut again you will get those same numbers every time the script is run in the future.\n\nRandom number seeds are a way of making things reliably random. However a risk with tests that depend on random number seeds is they can be brittle.\nSay you have a function structured something like this:\n\n```python\ndef my_function():\n  a = calculation_that_uses_two_random_numbers()\n  b = calculation_that_uses_five_random_numbers()\n  c = a + b\n```\n\nIf you set the random number seed you will always get the same value of `c`, so it can be tested.\nBut, say the model is changed and the function that calculates `a` uses a different number of random numbers that it did previously.\nNow not only will `a` be different but `b` will be too, because as shown above the random numbers outputted given a random number seed are in a fixed order.\nAs a result the random numbers produced to calculate `b` will have changed.\nThis can lead to tests failing when there is in fact no bug.\n\n#### Measure the distribution of results\n\nAnother way to test code with a random output is to run it many times and test the distribution of the results.\nPerhaps the result may fluctuate a little, but is always expected around 10 within some tolerance. That can be tested.\nThe more times the code is run the more reliable the average and so the result.\nHowever the more times you run a piece of code the longer it will take your tests to run, which may make tests prohibitively time-consuming to conduct if a reliable result is to be obtained.\nFurthermore, there will always be an element of uncertainty and if the random numbers happen to fall in a certain way you may get result outside of the expected tolerance even if the code is correct.\n\nBoth of these approaches to testing stochastic code can still be very useful, but it is important to also be aware of their potential pitfalls.\n\n(rr-testing-challenges-difficult-quatify)=\n## Tests that are difficult to quantify\n\nSometimes (particularly in research) the outputs of code are tested according to whether they \"look\" right.\nFor example say we have a code modelling the water levels in a reservoir over time.\n\nThe result may look like this:\n\n```{figure} ../../../figures/eyeball-test1.*\n---\nname: eyeball-test1\nalt: Scatter plot of water level in a reservoir measured at regular intervals over 24 hours, where level remains fairly constant.\n---\n```\n\nOn a day with rain it might look like this:\n\n```{figure} ../../../figures/eyeball-test2.*\n---\nname: eyeball-test2\nalt: Scatter plot of water level in a reservoir measured at regular intervals over 24 hours, where level increases steadily between 6am and 9pm before dropping slightly in the last 3-hour period.\n---\n```\n\nand on a dry day it might look like this:\n\n```{figure} ../../../figures/eyeball-test3.*\n---\nname: eyeball-test3\nalt: Scatter plot of water level in a reservoir measured at regular intervals over 24 hours, where level decreases steadily.\n---\n```\n\nAll of these outputs look very different but are valid. However, if a researcher sees a result like this:\n\n```{figure} ../../../figures/eyeball-test-error.*\n---\nname: eyeball-test-error\nalt: Scatter plot of water level in a reservoir measured at regular intervals over 24 hours, where fairly constant levels flank one very high measurement taken at midday.\n---\n```\n\nthey could easily conclude there is a bug as a lake is unlikely to triple its volume and then lose it again in the space of a few hours. \"Eyeballing\" tests like these are time-consuming as they must be done by a human. However, the process can be partially or fully automated by creating basic \"sanity checks\". For example, the water level at one time should be within, say, 10% of the water level at the previous time step. Another check could be that there are no negative values, as a lake can't be -30% full. These sort of tests can't cover every way something can be visibly wrong, but they are much easier to automate and will suffice for most cases.\n\n(rr-testing-challenges-non-integer)=\n## Testing if non-integer numbers are equal\n\n### When 0.1 + 0.2 does not equal 0.3\n\nThere is a complication with testing if the answer a piece of code outputs is equal to the expected answer when the numbers are not integers. Let's look at this Python example, but note that this problem is not unique to Python.\n\nIf we assign 0.1 to `a` and 0.2 to `b` and print their sum, we get 0.3, as expected.\n\n```python\n>>> a = 0.1\n>>> b = 0.2\n>>> print(a + b)\n0.3\n```\n\nIf, however, we compare the result of `a` plus `b` to 0.3 we get False.\n\n```python\n>>> print(a + b == 0.3)\nFalse\n```\n\nIf we show the value of `a` plus `b` directly, we can see there is a subtle margin of error.\n\n```python\n>>> a + b\n0.30000000000000004\n```\n\nThis is because floating-point numbers are approximations of real numbers. The result of floating-point calculations can depend upon the compiler or interpreter, processor or system architecture and number of CPUs or processes being used. This can present a major obstacle for writing tests.\n\n### Equality in a floating point world\n\nWhen comparing floating-point numbers for equality, we have to compare to within a given tolerance, alternatively termed a threshold or delta. For example, we might consider the calculated and expected values of some number to be equal if the absolute value of their difference is within the absolute value of our tolerance.\n\nMany testing frameworks provide functions for comparing equality of floating-point numbers to within a given tolerance. For example for the framework pytest:\n\n```python\nimport pytest\n\na = 0.1\nb = 0.2\nc = a + b\nassert c == pytest.approx(0.3)\n```\n\nthis passes, but if the 0.3 was changed to 0.4 it would fail.\n\nUnit test frameworks for other languages also often provide similar functions:\n\n- Cunit for C: CU_ASSERT_DOUBLE_EQUAL(actual, expected, granularity)\n- CPPUnit for C++: CPPUNIT_ASSERT_DOUBLES_EQUAL(expected, actual, delta)\n- googletest for C++: ASSERT_NEAR(val1, val2, abs_error)\n- FRUIT for Fortran: subroutine assert_eq_double_in_range_(var1, var2, delta, message)\n- JUnit for Java: org.junit.Assert.assertEquals(double expected, double actual, double delta)\n- testthat for R:\n  - expect_equal(actual, expected, tolerance=DELTA) - absolute error within DELTA\n  - expect_equal(actual, expected, scale=expected, tolerance=DELTA) - relative error within DELTA\n- julia: \n  - `val1 ≈ val2`\n  - `isapprox(val1, val2, atol=abs_delta, rtol=rel_delta)`\n  - `Test.jl` with `≈`: `@test val1 ≈ val2 atol=abs_delta rtol=rel_delta`\n"
  },
  {
    "path": "book/website/reproducible-research/testing/testing-guidance.md",
    "content": "(rr-testing-guidance)=\n# General guidance and good practice for testing\n\nThere are several different kinds of testing which each have best practice specific to them (see {ref}`rr-testing-types-of-testing`). \nNevertheless, there is some general guidance that applies to all of them, which will be outlined here.\n\n(rr-testing-write-tests)=\n## Write Tests - Any Tests!\n\nStarting the process of writing tests can be overwhelming, especially if you have a large code base. Further to that, as mentioned, there are many kinds of tests, and implementing all of them can seem like an impossible mountain to climb.\nThat is why the single most important piece of guidance in this chapter is as follows: **write some tests**.\nTesting one tiny thing in a code that's thousands of lines long is infinitely better than testing nothing in a code that's thousands of lines long.\nYou may not be able to do everything, but doing *something* is valuable.\n\nMake improvements where you can, and do your best to include tests with new code you write even if it's not feasible to write tests for all the code that's already written.\n\n## Run the tests\n\nThe second most important piece of advice in this chapter: run the tests.\nHaving a beautiful, perfect test suite is no use if you rarely run it.\nLeaving long gaps between test runs makes it more difficult to track down what has gone wrong when a test fails because, a lot of the code will have changed.\nAlso, if it has been weeks or months since tests have been run and they fail, it is difficult or impossible to know which results that have been obtained in the mean time are still valid, and which have to be thrown away as they could have been impacted by the bug.\n\nIt is best to automate your testing as far as possible.\nIf each test needs to be run individually then that boring painstaking process is likely to get neglected.\nThis can be done by making use of a testing framework ([discussed later](#rr-testing-use-a-testing-framework)).\n[Jenkins](https://jenkins.io) is another good tool for this. Ideally set your tests up to run at regular intervals, possibly every night.\n\nConsider setting up continuous integration (discussed in the continuous integration chapter) on your project. This will automatically run your tests each time you make a change to your code and, depending on the continuous integration software you use, will notify you if any of the tests fail.\n\n## Consider how long it takes your tests to run\n\nSome tests, like {ref}`rr-testing-unittest` only test a small piece of code and so typically are very fast.\nHowever other kinds of tests, such as {ref}`rr-testing-systemtest` which test the entire code from end to end, may take a long time to run depending on the code.\nAs such it can be obstructive to run the entire test suite after each little bit of work.\nIn that case it is better to run lighter weight tests such as unit tests frequently, and longer tests only once per day overnight. It is also good to scale the number of each kind of tests you have in relation to how long they take to run.\nYou should have a lot of unit tests (or other types of tests that are fast) but much fewer tests which take a long time to run.\n\n## Document the tests and how to run them\n\nIt is important to provide documentation that describes how to run the tests, both for yourself in case you come back to a project in the future, and for anyone else that may wish to build upon or reproduce your work.\nThis documentation should also cover subjects such as\n\n- Any resources, such as test dataset files that are required\n- Any configuration/settings adjustments needed to run the tests\n- What software (such as [testing frameworks](#rr-testing-use-a-testing-framework)) need to be installed\n\nIdeally, you would provide scripts to set up and configure any resources that are needed.\n\n## Test Realistic Cases\n\nMake the cases you test as realistic as possible.\nIf for example, you have dummy data to run tests on you should make sure that data is as similar as possible to the actual data.\nIf your actual data is messy with a lot of null values, so should your test dataset be.\n\n(rr-testing-use-a-testing-framework)=\n## Use a Testing Framework\n\nThere are tools available to make writing and running tests easier, these are known as testing frameworks.\nFind one you like, learn about the features it offers, and make use of them. Common testing frameworks (and the languages they apply to) include:\n\n- Language agnostic\n  - CTest, test runner for executables, bash scripts, and more. Great for legacy code hardening\n- C++\n  - Catch\n  - CppTest\n  - Boost::Test\n  - google-test\n- C\n  - all C++ frameworks\n  - Check\n  - CUnit\n```{note}\nWhile modern C++ and C are still mostly compatible, they're not completely and using test framework interchangeably may not always work.\n```\n- Python\n  - pytest (recommended)\n  - unittest comes with standard Python library\n- R unit-tests\n  - testthat\n  - tinytest\n  - svUnit (works with SciViews GUI)\n- Fortran unit-tests:\n  - funit\n  - pfunit (works with MPI)\n- julia\n  - Test.jl (stdlib)\n  - ReTest.jl  \n\n## Aim to have a good code coverage\n\nCode coverage is a measure of how much of your code is \"covered\" by tests.\nMore precisely it a measure of how much of your code is run when tests are conducted.\nSo for example, if you have an `if` statement but only test things where that if statement evaluates to \"False\" then none of the code in the if block will be run.\nAs a result your code coverage would be < 100%.\nCode coverage doesn't include documentation like comments, so adding more documentation doesn't affect your percentages.\n\nAs discussed any tests are an improvement over no tests.\nNevertheless it is good to at least aspire to having your code coverage as high as feasible.\n\nMost programming languages have tools either built into them, or that can be imported, or as part of testing frameworks, which automatically measure code coverage.\nThere's a nice little [bot](https://codecov.io/) for measuring code coverage available too.\n\n**Pitfall: The illusion of good coverage.** In some instances, the same code can and probably should be tested in multiple ways.\nFor example, coverage can quickly increase on code that applies \"sanity check\" tests to its output (see also {ref}<rr-testing-challenges-difficult-quatify>), but this doesn't preclude the risk that the code is producing the broadly right answer for the wrong reasons.\nIn general, the best tests are those that isolate the smaller rather than larger chunks of coherent code, and so pick out individual steps of logic.\nTry to be guided by thinking about the possible things that might happen to a particular chunk of code in the execution of the whole, and test these individual cases.\nOften, this will result in the same code being tested multiple times - this is a good thing!\n\n(rr-testing-guidance-mocking)=\n## Use test doubles/stubs/mocking where appropriate\n\nIf a test fails it should be constructed such that it is as easy to trace the source of the failure as possible.\nThis becomes problematic if a piece of code you want to test unavoidably depends on other things.\nFor example if a test for a piece of code that interacts with the web fails, that could be because the code has a bug *or* because there is a problem with the internet connection.\nSimilarly if a test for a piece of code that uses an object fails it could be because there is a bug in the code being tested, or a problem with the object (which should be tested by its own, separate tests).\nThese dependencies should be eliminated from tests, if possible.\nThis can be done by using test replacements (test doubles) in the place of the real dependencies.\nTest doubles can be classified as follows:\n\n- A dummy object is passed around but never used, meaning its methods are never called.\nSuch an object can for example be used to fill the parameter list of a method.\n- Fake objects have working implementations, but are usually simplified.\nFor example, they use an in memory database and not a real database.\n- A stub is a partial implementation for an interface or class with the purpose of using an instance of this stub during testing.\nStubs usually don’t respond to anything outside what’s programmed in for the test.\nStubs may also record information about calls.\n- A mock object is a dummy implementation for an interface or a class in which you define the output of certain method calls.\nMock objects are configured to perform a certain behaviour during a test.\nThey typically record the interaction with the system and tests can validate that.\n\nTest doubles can be passed to other objects which are tested.\n\nYou can create mock objects manually (via code) or use a mock framework to simulate these classes. Mock frameworks allow you to create mock objects at runtime and define their behaviour. The classical example for a mock object is a data provider.\nIn production an implementation to connect to the real data source is used.\nBut for testing a mock object simulates the data source and ensures that the test conditions are always the same.\n"
  },
  {
    "path": "book/website/reproducible-research/testing/testing-integrationtest.md",
    "content": "(rr-testing-types-integrationtest)=\n# Integration Testing\n\nIntegration testing is a level of software testing where individual units are combined and tested as a group.\nWhile unit tests validate the functionality of code in isolation, integration tests ensure that components cooperate when interfacing with one another.\nThe purpose of this level of testing is to expose faults in the interaction between integrated units.\n\nFor example, maybe a unit that reads in some data is working and passes its unit tests, and the following unit that cleans up the data once it's been read in is also working and passes its tests.\nHowever say the first unit outputs the data as (time_data, temperature_data) but the function that cleans the data expects input of the form (temperature_data, time_data).\nThis can obviously lead to bugs.\nWhile the units are correct there in an error in their integration.\n\nAn example of an integration test for this case could be to supply a test data file, use these functions to read it in and clean it, and check the resulting cleaned data against what would be expected.\nIf a bug like this is present then the cleaned data outputted would be very unlikely to match the expected result, and an error would be raised.\n\nIntegration testing is particularly important in collaborative projects where different people work on different parts of the code.\nIf two different people complete separate units and then need to integrate them integration issues are more likely as neither may understand the other's code.\nA famous example of this is a multi-million dollar satellite which [crashed](https://en.wikipedia.org/wiki/Mars_Climate_Orbiter) because one piece of code outputted distance data in feet, while another assumed data in meters.\nThis is another example of an integration issue.\n\nA sub-type of integration testing is system integration testing.\nThis tests the integration of systems, packages and any interfaces to external organizations (such as Electronic Data Interchange, Internet).\nDepending on the nature of a project system integration testing may or may not be applicable.\n\n## Integration Testing Approaches\n\nThere are several different approaches to integration testing.\nBig Bang is an approach to integration testing where all or most of the units are combined together and tested at one go.\nThis approach is taken when the testing team receives the entire software in a bundle.\nSo what is the difference between Big Bang integration testing and system testing? Well, the former tests only the interactions between the units while the latter tests the entire system.\n\nTop Down is an approach to integration testing where top-level sections of the code (that themselves contain many smaller units) are tested first and lower level units are tested step by step after that.\nSo is a code can be split into the main steps A, B, and C, and each of those contain steps to complete them, and these steps may have substeps like:\n\n- A\n- A.1\n  - A.1.1\n  - A.1.2\n- A.2\n- B\n- B.1\n- B.2\n  - B.2.1\n  - B.2.2\n  - B.2.3\n- B.3\n\n- C\n- C.1\n  - C.1.1\n  - C.1.2\n- C.2\n  - C.2.1\n  - C.2.2\n\nSo in the top down approach the integration between sections at the top level (A, B and C) are tested, then integration between sections at the next level (for example, A.1 -> A.2) and so on.\nTesting upper level units by running all the code they contain including running lower level ones can lead to upper level tests breaking due to bugs in low level units.\nThis is undesirable, so to prevent this the lower level sections should not be run, but [test stubs][rr-testing-guidance-mocking] should be used to simulate the outputs from them.\n\nBottom Up is an approach to integration testing where integration between bottom level sections are tested first and upper-level sections step by step after that.\nAgain test stubs should be used, in this case to simulate inputs from higher level sections.\n\nSandwich/Hybrid is an approach to integration testing which is a combination of Top Down and Bottom Up approaches.\n\nWhich approach you should use will depend on which best suits the nature/structure of your project.\n\n## Integration Testing Tips\n\n- Ensure that you have a proper Detail Design document where interactions between each unit are clearly defined. It is difficult or impossible to perform integration testing without this information.\n- Make sure that each unit is unit tested and fix any bugs before you start integration testing. If there is a bug in the individual units then the integration tests will almost certainly fail even if there is no error in how they are integrated.\n- Use mocking/stubs where appropriate.\n"
  },
  {
    "path": "book/website/reproducible-research/testing/testing-overview.md",
    "content": "(rr-testing-overview)=\n# Overview of Testing Types\n\nThere are a number of different kinds of tests, which will be discussed here.\n\nFirstly there are positive tests and negative tests.\nPositive tests check that something works, for example testing that a function that multiplies some numbers together outputs the correct answer.\nNegative tests check that something generates an error when it should.\nFor example nothing can go quicker than the speed of light, so a plasma physics simulation code may contain a test that an error is outputted if there are any particles faster than this, as it indicates there is a deeper problem in the code.\n\nIn addition to these two kinds of tests, there are also different levels of tests which test different aspects of a project.\nThese levels are outlined below and both positive and negative tests can be present at any of these levels.\nA thorough test suite will contain tests at all of these levels (though some levels will need very few).\n\n(rr-testing-types-of-testing)=\n## Types of Testing\n\n[](#rr-testing-smoketest): Very brief initial checks that ensures the basic requirements required to run the project hold.\nIf these fail there is no point proceeding to additional levels of testing until they are fixed.\n\n[](#rr-testing-unittest): A level of the software testing process where individual units of a software are tested. The purpose is to validate that each unit of the software performs as designed.\n\n[](#rr-testing-types-integrationtest): A level of software testing where individual units are combined and tested as a group.\nThe purpose of this level of testing is to expose faults in the interaction between integrated units.\n\n[](#rr-testing-systemtest): A level of the software testing process where a complete, integrated system is tested.\nThe purpose of this test is to evaluate whether the system as a whole gives the correct outputs for given inputs.\n\n[](#rr-testing-acceptance-regression): A level of the software testing process where a system is tested for acceptability.\nThe purpose of this test is to evaluate the system's compliance with the project requirements and assess whether it is acceptable for the purpose.\n\nHere's an analogy: during the process of manufacturing a ballpoint pen, the cap, the body, the tail, the ink cartridge and the ballpoint are produced separately and unit tested separately.\nWhen two or more units are ready, they are assembled and integration testing is performed, for example a test to check the cap fits on the body.\nWhen the complete pen is integrated, system testing is performed to check it can be used to write like any pen should.\nAcceptance testing could be a check to ensure the pen is the colour the customer ordered.\n\nThere is also another kind of testing called regression testing.\nRegression testing is a type of testing that can be performed at any of the four main levels and compares the results of tests before and after a change is made to the code, and gives an error if these are different.\n\nThese different types of tests are discussed in more detail in the next subchapters.\n"
  },
  {
    "path": "book/website/reproducible-research/testing/testing-resources.md",
    "content": "# Further Recommendations\n\nTry reading the chapter on reproducible computational environments and then the chapter on continuous integration. The chapter on reviewing outlines how you can further strengthen your code base by adding a formal reviewing stage to your development workflow.\n\n[TutorialsPoint](https://www.tutorialspoint.com/software_testing/) has a number of useful tutorials related to testing, as does the [Turing Institute](https://alan-turing-institute.github.io/rsd-engineeringcourse/ch03tests/01testingbasics.html). It is also worth looking at [softwaretestingfundamentals.com](http://softwaretestingfundamentals.com).\n\n## Materials used: Motivation and Background\n\n- [Talk by Chrys Woods](https://drive.google.com/file/d/1CBTAhCVixccui1DjeUT13qh6ga5SDXjl/view) [**Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License**](https://chryswoods.com/main/copyright.html)\n- [Turing testing course basics](https://alan-turing-institute.github.io/rsd-engineeringcourse/ch03tests/01testingbasics.html) **Creative Commons share and remix**\n- [SSI blog](https://www.software.ac.uk/resources/guides/testing-your-software?_ga=2.39233514.830272891.1552653652-1336468516.1531506806) **Creative Commons Attribution Non-Commercial 2.5 License.**\n\n## Materials used: General guidance and good practice for testing\n\n- [SSI blog on testing software](https://www.software.ac.uk/resources/guides/testing-your-software?_ga=2.39233514.830272891.1552653652-1336468516.1531506806) **Creative Commons Attribution Non-Commercial 2.5 License.**\n- [Turing testing course](https://alan-turing-institute.github.io/rsd-engineeringcourse/ch03tests/03pytest.html) **Creative Commons share and remix**\n- [Mocking](https://www.vogella.com/tutorials/Mockito/article.html) **Attribution-NonCommercial-ShareAlike 3.0 Germany (CC BY-NC-SA 3.0 DE)**\n- [Testing with floating points](https://github.com/softwaresaved/automated_testing/blob/master/README.md) **Apache License 2.0**\n\n## Materials used: Types of tests\n\n- [Software testing fundamentals: levels of tests](http://softwaretestingfundamentals.com/software-testing-levels/) **Copyleft - 2019 STF**\n\n## Materials used: Smoke testing\n\n- [Digitalocean](https://www.digitalocean.com/community/tutorials/an-introduction-to-continuous-integration-delivery-and-deployment) **Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.**\n\n## Materials used: Unit testing\n\n- [An introduction to continuous integration](https://www.digitalocean.com/community/tutorials/an-introduction-to-continuous-integration-delivery-and-deployment) **Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.**\n- [Software testing fundamentals: unit tests](http://softwaretestingfundamentals.com/unit-testing/) **Copyleft - 2019 STF**\n\n## Materials used: Integration testing\n\n- [An introduction to continuous integration](https://www.digitalocean.com/community/tutorials/an-introduction-to-continuous-integration-delivery-and-deployment) **Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.**\n- [Software testing fundamentals: integration testing](http://softwaretestingfundamentals.com/integration-testing/) **Copyleft - 2019 STF**\n\n## Materials used: System testing\n\n- [Software testing fundamentals: system testing](http://softwaretestingfundamentals.com/system-testing/) **Copyleft - 2019 STF**\n- [An introduction to continuous integration](https://www.digitalocean.com/community/tutorials/an-introduction-to-continuous-integration-delivery-and-deployment) **Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.**\n\n## Materials used: Acceptance testing\n- [An introduction to continuous integration](https://www.digitalocean.com/community/tutorials/an-introduction-to-continuous-integration-delivery-and-deployment) **Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.**\n\n## Materials used: Regression testing\n\n- [Sound software](http://soundsoftware.ac.uk/unit-testing-why-bother/) **Creative Commons Attribution-NonCommercial 3.0 License**\n- [Software testing fundamentals regression testing](http://softwaretestingfundamentals.com/regression-testing/) **Copyleft**\n- [Examples of Regression Testing by Cem Karner](http://www.testingeducation.org/k04/RegressionExamples.htm) **Creative Commons Attribution-ShareAlike License 2.0**\n- [Adopting automated testing](https://github.com/softwaresaved/automated_testing/blob/master/README.md) **Apache License 2.0**\n\n## Materials used: Runtime testing\n\n- [Talk by Chrys Woods](https://drive.google.com/file/d/1CBTAhCVixccui1DjeUT13qh6ga5SDXjl/view) [**Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License**](https://chryswoods.com/main/copyright.html)\n\n## Materials used: Test driven development\n\n- [Testing your software](https://software.ac.uk/resources/guides/testing-your-software) **Creative Commons Attribution-NonCommercial 3.0 License.**\n- [Why bother](http://soundsoftware.ac.uk/unit-testing-why-bother/) **Creative Commons Attribution-NonCommercial 3.0 License.**\n\n## Materials used: glossary\n\n- [Netherlands eScience centre](https://guide.esciencecenter.nl/#/best_practices/testing) **Creative Commons Attribution 4.0 International License**\n\n### Definitions/glossary\n\n- **Acceptance test:** A test that the program meets the project's fundamental requirements.\n\n- **Code coverage:** A measure which describes how much of the source code is exercised by the test suite.\n\n- **End to end test:** A test that runs the program from beginning to end and verifies that the output is correct.\n\n- **Integration test:** A test where units of code are combined and run, and the output is verified to check the units have been correctly integrated.\n\n- **Mocking:** Replace a real object with a pretend one to use when running tests.\n\n- **Regression test:** Comparing the result of a test before and after the code has been altered. If the output has changed a problem has been introduced somewhere in the program, and an error is thrown.\n\n- **Runtime test:** Tests embedded within the program which are run as part of it.\n\n- **Smoke test:** Very brief initial checks that ensure the basic requirements needed to run the project hold.\n\n- **Stochastic code:** Code which, while correct, does not always output the same result. For example a program that outputs ten random numbers will generate a different result each time, despite being correct.\n\n- **System test:** See \"end to end test\".\n\n- **Test driven development:** A process of code development where unit tests are written before the units themselves.\n\n- **Test stub:** Fake implementations of parts of code which are used in testing to remove dependences.\n\n- **Test suite:** The tests that have been written for a project.\n\n- **Testing framework:** Tools that make writing and running tests less labour intensive.\n\n- **Unit:** A small piece of code that does one simple thing. It usually has one or a few inputs and usually a single output.\n\n- **Unit test:** A test that checks the behaviour of a unit.\n"
  },
  {
    "path": "book/website/reproducible-research/testing/testing-runtime.md",
    "content": "(rr-testing-runtime)=\n# Runtime testing\n\nRuntime tests are tests that run as part of the program itself.\nThey may take the form of checks within the code, as shown below:\n```\npopulation = population + people_born - people_died\n\n// test that the population is positive\nif (population < 0):\n  error( 'The number of people can never be negative' )\n```\n\nAnother example of a use of runtime tests is internal checks within functions that verify that their inputs and outputs are valid, as shown below:\n```\nfunction add_arrays( array1, array2 ):\n\n// test that the arrays have the same size\nif (array1.size() != array2.size()):\n  error( 'The arrays have different sizes!' )\n\noutput = array1 + array2\n\nif (output.size() != array1.size()):\n  error( 'The output array has the wrong size!'' )\n\nreturn output\n```\n\nAdvantages of runtime testing:\n- Run within the program, so can catch problems caused by logic errors or edge cases.\n- Makes it easier to find the cause of the bug by catching problems early.\n- Catching problems early also helps prevent them escalating into catastrophic failures. It minimises the blast radius.\n\nDisadvantages of runtime testing:\n\n- Tests can slow down the program.\n- What is the right thing to do if an error is detected? How should this error be reported? Exceptions are a recommended route to go with this.\n"
  },
  {
    "path": "book/website/reproducible-research/testing/testing-smoketest.md",
    "content": "(rr-testing-smoketest)=\n# Smoke Testing\n\nSmoke tests (also known as build verification tests) are a special kind of initial checks designed to ensure very basic functionality as well as some basic implementation and environmental assumptions.\nSmoke tests are generally run at the very start of each testing cycle as a sanity check before running a more complete test suite.\n\nThe idea behind this type of test is to help to catch big red flags in an implementation and to bring attention to problems that might indicate that further testing is either not possible or not worthwhile.\nNormally, the tester is asking whether any components are so obviously or badly broken that the build is not worth testing or some components are broken in obvious ways that suggest a corrupt build or some critical fixes that are the primary intent of the new build didn't work.\nSmoke tests are not very extensive, but should be extremely quick.\nIf a change to a project causes it to fail a smoke test, its an early signal that core assertions were broken and that you should not devote any more time to testing until the problem is resolved.\nFor example if a function that reads in the data a project requires to run is broken there's no point testing any further before that's fixed.\nThe typical result of a failed smoke test is rejection of the build (testing of the build stops) not just a new set of bug reports.\n"
  },
  {
    "path": "book/website/reproducible-research/testing/testing-systemtest.md",
    "content": "(rr-testing-systemtest)=\n# System Testing\n\nOnce integration tests are performed, another level of testing called system testing can begin.\nSystem testing is a level of software testing where a complete and integrated software is tested.\nThe tester supplies the program with input and verifies if the program's output is correct.\nIf it is not then there is a problem somewhere in the system.\nNote that this does not have to be done manually, it can be automated.\nThe purpose of these tests is to evaluate the system's compliance with the specified requirements.\nIn many ways, system testing acts as an extension to integration testing.\nThe focus of system tests are to make sure that groups of components function correctly as a cohesive whole.\n\nHowever, instead of focusing on the interfaces between components, system tests typically evaluate the outward functionality of a full piece of software.\nThis set of tests ignores the constituent parts in order to gauge the composed software as a unified entity.\nBecause of this distinction, system tests usually focus on user- or externally-accessible outputs.\n\nSystem testing can also test features of the system other than correctness.\nExamples include:\n\n- Performance testing: does the program performance meet the minimum requirements? A performance test may measure how long the system takes to run in a given case.\n- Migration testing: does the program work when transferred to another computational environment?\n- Stress/scale/load testing: testing how the program behaves when under stress, for example, when required to process very large volumes of data.\n- Usability testing: how user-friendly the program is (more common in commercial software, tests typically conducted by humans rather than automated).\n- Recovery testing: whether the program can continue if errors occur (again, more common in commercial software).\n\n## System Testing Tips\n\nSystem tests, also called end-to-end tests, run the program, well, from end to end.\nAs such these are the most time consuming tests to run.\nTherefore you should only run these if all the lower-level tests (smoke, unit, integration) have already passed.\nIf they haven't, fix the issues they have detected first before wasting time running system tests.\n\nBecause of their time-consuming nature it will also often be impractical to have enough system tests to trace every possible route through a program, especially if there are a significant number of conditional statements.\nTherefore you should consider the system test cases you run carefully and prioritise:\n\n- The most common routes through a program.\n- The most important routes for a program.\nFor example, the LIGO detector aims to find gravitational wave events, which are extremely rare.\nIf there's a bug in that path through the program which monitors the detector then it's a *huge* problem.\n- Cases that are prone to breakage due to structural problems within the program.\nThough ideally it's better to just fix those problems, but cases exist where this may not be feasible.\n\nBecause system tests can be time consuming it may be impractical to run them very regularly (such as multiple times a day after small changes in the code).\nTherefore it can be a good idea to run them each night (and to automate this process) so that if errors are introduced that only system testing can detect the programmer will be made aware of them relatively quickly.\n"
  },
  {
    "path": "book/website/reproducible-research/testing/testing-unittest.md",
    "content": "(rr-testing-unittest)=\n# Unit Testing\n\nUnit tests are responsible for testing individual elements of code in an isolated and highly targeted way.\nThe functionality of individual functions and classes are tested on their own.\nThe purpose is to validate that each unit of the software performs as designed.\nA unit is the smallest testable part of any software.\nIn procedural programming, a unit may be an individual program, function or procedure.\nIn object-oriented programming the smallest unit is typically a method.\nIt usually has one or a few inputs and usually a single output.\nAny external dependencies should be replaced with stub or mock implementations to focus the test completely on the code in question.\n\nUnit tests are essential to test the correctness of individual code components for internal consistency and correctness before they are placed in more complex contexts.\nThe limited extent of the tests and the removal of dependencies makes it easier to hunt down the cause of any defects.\nIt also is the best time to test a variety of inputs and code branches that might be difficult to hit later on.\nFor example system tests are often time consuming to run and it will likely be impractical to have system tests for every possible path through a code that has more than a few conditional statements.\nUnit tests are smaller, faster, and so it is more practical to cover all possible cases with them.\n\nOften, after any smoke tests, unit tests are the first tests that are run when any changes are made.\n\n## Benefits of Unit Testing\n\nIf a researcher makes a change to a piece of code or how it is run then how can they be sure that doing so has not broken something?\nThey may run a few tests, but without testing every small piece of code individually how can they be certain?\nUnit testing gives researchers that certainty, and allows them to be confident when changing and maintaining their code.\n\nHere's a little example.\nSay a researcher has a small function that does one simple thing (here only a single line for brevity).\nIn this example this will be raising a number to the 5th power:\n\n```\ndef take_fifth_power(x):\n  result = x * x * x * x * x\n  return result\n```\n\nThe unit test for this function could look like this:\n```\ndef test_take_fifth_power():\n  assert take_fifth_power(1.5) == 7.59375\n```\n\nSo it checks that the correct result is outputted for a given input.\nIf not the test will fail.\nThe researcher carries on with their work.\nIn the middle of it they decide to tidy up this function, multiplying the number five times like this is a bit crude.\nThey change the `result = x * x * x * x * x` line to `result = x * 5`.\nNext time they run their unit tests, this test will fail, because they just made a mistake.\nMaybe they needed a coffee, maybe their finger slipped, maybe their coworker shot them in the ear with a nerf dart and distracted them, but when they were tidying up this function they should have written `result = x ** 5` *not* `result = x * 5`.\nThe failed test will flag up the mistake and it can quickly be corrected.\nIf a mistake like this went unobserved it could lead to serious errors in the researcher's work.\n\nSo unit testing leads to more reliable code, but there are other benefits too.\nFirstly, it makes development faster by making bugs easier to find.\nLarger-scale tests which test large chunks of code (while still useful) have the disadvantage that if they fail it is difficult to pinpoint the source of the bug.\nBecause unit tests by their very definition test small pieces of code, they help developers find the cause of a bug much more quickly than higher-level tests or code with no tests at all.\nUnit tests also make fixing bugs faster and easier because they catch bugs early while the impact is limited to small individual units.\nIf bugs are not detected early via unit tests then it may be a long time before they are discovered, impacting later work that built on the faulty code.\nThis means that much more code is at risk and that fixing the bug is more time consuming.\n\nThe other major benefit of unit testing is that it strongly incentivises researchers to write modular code because modular code is far easier to write unit tests for.\nModular code is code that is broken up into manageable chunks which each accomplish simple tasks.\nThis is typically achieved by dividing the code into functions and groups of functions.\nIn contrast a script which is just one long continuous series of lines which produces a result is highly non-modular.\n\nModular code is much easier to reuse, too.\nFor example, if a researcher has an individual function that does some Useful Thing and in a future project they need to do that thing again, it is trivial to copy or import the function.\nIn contrast, if the code that does this Useful Thing is entwined with a great deal of other code in a long script it is much harder to separate it out for reuse.\n\n## Unit Testing Tips\n\n- Many testing frameworks have tools specifically geared towards writing and running unit tests.\n- Isolate the development environment from the test environment.\n- Write test cases that are independent of each other. For example, if a unit A utilises the result supplied by another unit B, you should test unit A with a [test double][rr-testing-guidance-mocking], rather than actually calling the unit B. If you don't do this your test failing may be due to a fault in either unit A *or* unit B, making the bug harder to trace.\n- Aim at covering all paths through a unit. Pay particular attention to loop conditions.\n- In addition to writing cases to verify the behaviour, write cases to ensure the performance of the code. For example, if a function that is supposed to add two numbers takes several minutes to run there is likely a problem.\n- If you find a defect in your code write a test that exposes it. Why? First, you will later be able to catch the defect if you do not fix it properly. Second, your test suite is now more comprehensive. Third, you will most probably be too lazy to write the test after you have already fixed the defect. Say a code has a simple function to classify people as either adults or children:\n\n```\ndef adult_or_child(age):\n\n  # If the age is greater or equal to 18 classify them as an adult\n  if age >= 18:\n    person_status = 'Adult'\n\n  # If the person is not an adult classify them as a child\n  else:\n    person_status = 'Child'\n\n  return person_status\n```\n\nAnd say this code has a unit test like this:\n\n```\ndef test_adult_or_child():\n\n  # Test that an adult is correctly classified as an adult\n  assert adult_or_child(22) == 'Adult'\n\n  # Test that an child is correctly classified as a child\n  assert adult_or_child(5) == 'Child'\n\n  return\n```\n\nThere's a problem with this code that isn't being tested: if a negative age is supplied it will happily classify the person as a child despite negative ages not being possible.\nThe code should throw an error in this case.\n\nSo once the bug is fixed:\n```\ndef adult_or_child(age):\n\n  # Check age is valid\n  if age < 0:\n    raise ValueError, 'Not possible to have a negative age'\n\n  # If the age is greater or equal to 18 classify them as an adult\n  if age >= 18:\n    person_status = 'Adult'\n\n  # If the person is not an adult classify them as a child\n  else:\n    person_status = 'Child'\n\n  return person_status\n```\n\nGo ahead and write a test to ensure that future changes in the code can't cause it to happen again:\n```\ndef test_adult_or_child():\n\n  # Test that an adult is correctly classified as an adult\n  assert adult_or_child(22) == 'Adult'\n\n  # Test that an child is correctly classified as a child\n  assert adult_or_child(5) == 'Child'\n\n  # Test that supplying an invalid age results in an error\n  with pytest.raises(ValueError):\n    adult_or_child(-10)\n```\n"
  },
  {
    "path": "book/website/reproducible-research/testing.md",
    "content": "(rr-testing)=\n# Code Testing\n\n| Prerequisite | Importance |\n| -------------|------------|\n| {ref}`Experience with the command line<rr-overview-resources-commandline>` | Necessary |\n\n## Summary\n\nResearcher-written code now forms a part of a huge portion of research, and if there are mistakes in the code the results may be partly or entirely unreliable.\nTesting code thoroughly and frequently is vital to ensure reliable, reproducible research.\nThis chapter will provide general guidance for writing tests and describe a number of different kinds of testing, their uses and how to go about implementing them.\n\n## Motivation and Background\n\nIt is very, very easy to make mistakes when coding.\nA single misplaced character can cause a program's output to be entirely wrong.\nOne of the examples above was caused by a plus sign which should have been a minus.\nAnother was caused by one piece of code working in meters while a piece of code written by another researcher worked in feet.\n*Everyone* makes mistakes, and in research the results can be catastrophic.\nCareers can be damaged/ended, vast sums of research funds can be wasted, and valuable time may be lost to exploring incorrect avenues. This is why tests are vital.\n\nHere's a couple of illustrations exemplifying of why should write tests:\n\n```{figure}  ../../figures/testing-motivation1.*\n---\nname: testing-motivation1\nalt: \"Headline of a December 2006 news article by Greg Miller, published in Science, titled A Scientist's Nightmare: Software Problem Leads to Five Retractions\"\n---\n```\n\n```{figure}  ../../figures/testing-motivation2.*\n---\nname: testing-motivation2\nalt: \"News article by Lisa Grossman, published on Wired.com in November 2010, describing an inconsistency between the units of force expected as output and input of two pieces of software that resulted in the loss of a weather satellite when it reached its destination at Mars. The piece is titled November 10, 1999: Metric Math Mistake Muffed Mars Meteorology Mission\"\n---\n```\n\nEven if problems in a program are caught before research is published it can be difficult to figure out what results are contaminated and must be re-done.\nThis represents a huge loss of time and effort.\nCatching these problems as early as possible minimises the amount of work it takes to fix them, and for most researchers time is by far their most scarce resource.\nYou should not skip writing tests because you are short on time, you should write tests *because* you are short on time.\nResearchers cannot afford to have months or years of work go down the drain, and they can't afford to repeatedly manually check every little detail of a program that might be hundreds or hundreds of thousands of lines long.\nWriting tests to do it for you is the time-saving option, and it's the safe option.\n\nAs researchers write code they generally do some tests as they go along, often by adding in print statements and checking the output.\nHowever, these tests are often thrown away as soon as they pass and are no longer present to check what they were intended to check.\nIt is comparatively very little work to place these tests in functions and keep them so they can be run at any time in the future.\nThe additional labour is minimal, the time saved and safeguards provided are invaluable.\nFurther, by formalising the testing process into a suite of tests that can be run independently and automatically, you provide a much greater degree of confidence that the software behaves correctly and increase the likelihood that defects will be found.\n\nTesting also affords researchers much more peace of mind when working on/improving a project.\nAfter changing their code a researcher will want to check that their changes or fixes have not broken anything.\nProviding researchers with a fail-fast environment allows the rapid identification of failures introduced by changes to the code.\nThe alternative, of the researcher writing and running whatever small tests they have time for is far inferior to a good testing suite which can thoroughly check the code.\n\nAnother benefit of writing tests is that it typically forces a researcher to write cleaner, more modular code as such code is far easier to write tests for, leading to an improvement in code quality.\n{ref}`Good quality code<rr-code-quality>` is far easier (and altogether more pleasant) to work with than tangled rat's nests of code I'm sure we've all come across (and, let's be honest, written). This point is expanded upon in the section {ref}`rr-testing-unittest`.\n\n## The advantages of testing for research\n\nAs well as advantaging individual researchers testing also benefits research as a whole.\nIt makes research more reproducible by answering the question \"how do we even know this code works\".\nIf tests are never saved, just done and deleted the proof cannot be reproduced easily.\n\nTesting also helps prevent valuable grant money being spent on projects that may be partly or wholly flawed due to mistakes in the code.\nWorse, if mistakes are not at found and the work is published, any subsequent work that builds upon the project will be similarly flawed.\n\nPerhaps the cleanest expression of why testing is important for research as a whole can be found in the [Software Sustainability Institute](https://www.software.ac.uk/) slogan: better software, better research.\n"
  },
  {
    "path": "book/website/reproducible-research/vcs/vcs-checklist.md",
    "content": "(rr-vcs-checklist)=\n# Checklist\n\n(rr-vcs-checklist-makeuseof)=\n## Make Use of Git\n\n- Make your project version controlled by initialising a Git repository in its directory using `git init`.\n- Add and commit all your files to the repository using `git add .` then `git commit`.\n- Continue to add and commit changes as your project progresses. Stage the changes in specific files to be committed with `git add filename`, and add messages to your commits.\n  - Each commit should make one simple change.\n  - No generated files committed.\n  - Commit messages are meaningful, with a ~50 character summary at the top.\n  - Commit messages are in the present tense and imperative.\n- Develop new features on their own branches, which you can create via `git checkout -b branch_name` and switch between via `git checkout branch_name`.\n  - Make sure branches have informative names.\n  - Make sure the main branch is kept clean.\n  - Make sure each branch has a single purpose and only changes related to that purpose are made on it.\n- Once features are complete, merge their branches into the main branch by switching to the feature branch and running `git merge main`.\n  - Merge other's changes into your work frequently.\n  - When dealing with merge conflicts, make sure you fully understand both versions before trying to resolve them.\n\n(rr-vcs-checklist-contribute)=\n## Contribute to Someone Else's Project\n\n- Clone their project's repository from GitHub `git clone repository_url`.\n- Make and commit changes.\n- Push your changes to you GitHub version of the project.\n- Make use of issues to discuss possible changes to a project.\n- Make pull requests on GitHub to share your work.\n  - Clearly explain the changes you have made (and why) in your pull request.\n\n(rr-vcs-checklist-data)=\n## Make Sure That Your Data Is Version-Controlled\n\n- If your projects involve data, check whether [Git LFS](https://git-lfs.github.com/), [git-annex](https://git-annex.branchable.com/), or [DataLad](https://www.datalad.org/) fits your needs for version-controlling it.\n- Share the data along with your project to help others reproduce your results.\n"
  },
  {
    "path": "book/website/reproducible-research/vcs/vcs-data.md",
    "content": "```{figure} ../../../figures/data-provenance.jpg\n---\nname: provenance\nalt: Different people work at different stations to enable provenance.\n---\nProvenance on which data in which version was underlying which computation is crucial for reproducibility. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n(rr-vcs-data)=\n# Version Control for Data\n\nWe discussed that version controlling the components of evolving projects could help to make work more organised, efficient, collaborative, and reproducible.\nMany scientific projects, however, do not only contain code, manuscripts, or other small-sized files, but contain larger files such as large datasets, analysis results, or binary files (presentations, manuscripts, pdfs) which can change or be updated in a project just like other small sized text components.\n In this chapter, we discuss why and how to do data versioning, especially why Git is not well suited for data versioning and what we can be done about it.\n\n\n\n(rr-vcs-data-importance)=\n## Importance of Version Controlling Data\n\nWe should not hold the notion that the data used for analysis is static; once it is acquired, it does not change and serves as input for a given analysis and the backbone of our scientific results.\nThe reality is that data is only rarely invariant.\nFor example, throughout a scientific project, datasets can be extended with new data, adapted to new naming schemes, reorganised into different file hierarchies, updated with new data points or modified to fix any errors.\nSometimes you might also want to experiment off different versions of the same dataset.\n\n\nSuch dynamic processes are excellent and beneficial for science as they ensure that data is usable and up-to-date, but they can be confusing if they are not\nadequately documented.\nIf a dataset that is the basis for computing a scientific result changes without version control, reproducibility can be threatened: results may become invalid, or scripts that are based on file names that change between versions can break.\nEspecially if original data gets replaced with new data without version control in place, the original results of the analysis may not be reproduced.\nTherefore, version controlling data and other large files in a similar way to version controlling code or manuscripts can help ensure the reproducibility of a project and capture the provenance of results;\nthat is \"the precise subset and version of data a set of result originates from\".\nTogether with all other components of a research project, data identified in precise versions is part of the research outcome.\nThe reproducibility aspect of a scientific project can improve a lot if we can track the subset or version of data a certain analysis or result is based upon.\n\n\n\n\n(rr-vcs-data-challenges)=\n## Challenges in Version Controlling Data\n\nAs we described earlier, there are  {ref}`limitation to git <rr-vcs-git-limitations>`.\nAs long as the files to version control are small in size, not too numerous and can be stored in a few `csv` or character separated files, tools such as [Git](https://git-scm.com/) are appropriate.\n\nHowever, when you work, share, and collaborate on large, potentially [binary](https://en.wikipedia.org/wiki/Binary_file) files (such as many scientific data formats), you need to think about ways to version control this data with specialised tools.\nIf others try to clone your repository or fetch/pull to update it locally, it will take longer to do this if it contains larger files that have been versioned and modified.\n\nAccordingly, repository hosting services usually impose maximum file sizes on users.\nFor example, if a single file in your repository exceeds 100MB, you will not be able to push this file to a GitHub repository.\nFurthermore, if a large file was accidentally added to a repository, removing the file from the repository can be tedious, as this file needs to be [purged](https://help.github.com/en/github/authenticating-to-github/removing-sensitive-data-from-a-repository).\n\nThese shortcomings can make version controlling files tedious and slow, impede collaborations on repositories with large data, and prevent data or projects with data from being shared on platforms like GitHub.\n\n(rr-vcs-data-tools)=\n## Tools for Version Controlling Data\n\nSeveral tools are available to handle version controlling and sharing large files.\nMost of them integrate very well with Git and extend a repository's capabilities to version control large files.\nWith these tools, large data can be added to a repository, version controlled, reverted to previous states, or updated and modified collaboratively, and even shared via GitHub as small-sized files.\nSome of these tools include:\n\n(rr-vcs-data--tools-dvc)=\n### DVC\n\nDVC (open-source Version Control System for Machine Learning Projects) https://dvc.org/.\nDVC guarantees reproducibility by consistently maintaining a combination of input data, configuration, and the code that was initially used to run an experiment.\n\n(rr-vcs-data--tools-lfs)=\n### Git LFS\n\n[Git LFS](https://git-lfs.github.com/) comes with a command-line extension to Git and allows you to treat files of any size alike, using standard Git commands.\nA major shortcoming, however, is that Git LFS is a _centralised_ solution.\nLarge files are not distributed but stored on a remote server.\nThis usually requires setting up your server or paying for a service - which can make it very inaccessible.\n\n(rr-vcs-data-tools-gitannex)=\n### `git-annex`\n\nThe [`git-annex`](https://git-annex.branchable.com/) tool is a distributed system that can manage and share large files independent from a central service or server.\n`git-annex` manages all file _content_ in a separate directory in the repository (`.git/annex/objects`, the so-called _annex_) and only places file _names_ with some metadata into version control by Git.\nWhen a Git repository with an annex is pushed to a web-hosting service such as GitHub, the contents stored in the annex are not uploaded.\nInstead, they can be pushed to a storage system (such as a web server, but also third party services such as Dropbox, Google Drive, Amazon S3, box.com, and [many more](https://git-annex.branchable.com/special_remotes/)).\nIf a repository with an annex is cloned, the clone will not contain the _contents_ of all annexed files by default, but display only file names.\nThis makes the repository small, even if it tracks hundreds of gigabytes of data, and cloning fast, while file contents are stored in one or more free or commercial external storage solutions.\nOn-demand, any file content can then be obtained with a `git-annex get` command from the external file storage.\n\n(rr-vcs-data-tools-submodules)=\n### git submodules\n\nSubmodules allows to split the data in different repositories, while keeping everything under a single \"parent\" repository.\nIt is very powerful, but difficult to use. \nEspecially, using  {ref}`Git Branches<rr-vcs-workflow-branches>` in  submodules make it complex to handle.\nHowever, this is the only tool listed here allowing to work with many files in a Git repository.\n\n(rr-vcs-data-tools-datalad)=\n### DataLad\n\n[DataLad](https://www.datalad.org/), builds upon git and git-annex.\nLike `git-annex`, it allows you to version control data and share it via third-party providers but simplifies and extends this functionality.\nIn addition to sharing and version controlling large files; it allows recording, sharing, and using software environments, recording and re-executing commands or data analyses, and operating seamlessly across a hierarchy of repositories.\n\n(rr-vcs-data-inclusivity)=\n## Data versioning and inclusivity\n\nData versioning in Git require the use of more complex tools, and this means that accessibility to the data will be more difficult.\nFor instance, if you use datalad with Github, newcomers trying to see one of the large file will have difficulties:\nthey will be able to see that the file exists, but will not be able to download or see it without cloning the repository and running git-annex or datalad commands. \n\nSo while using these tools will make Git commands to run faster, one may want to disable them for critical binary files, like presentations or pdfs.\nA solution can be to pack them in submodules, so that the repositories are keeping a small size.\n\nAs an example, we can take the repository creating the turing book. \nThe repository is slow to work with, because a lot of binary files were used over the time.\nHowever, it makes the onboarding of new users easier.\n"
  },
  {
    "path": "book/website/reproducible-research/vcs/vcs-git-branches.md",
    "content": "(rr-vcs-git-branches)=\n# Git Branches\n\nWhen working on a project, individually or collaboratively, you may encounter the following scenarios:\n\n- If you add a new feature to your project, you run the risk of accidentally breaking your working code as you test the feature.\nThis would cause unexpected issues for active users of your project, even if the only active user is you.\n- When you collaborate with others, and everyone works on the main branch simultaneously, there could be a lot of confusion and conflicting changes.\n- Some code/feature might not be interesting for everyone. There may need to be a way to allow new work to be done on a project whilst protecting work that has already been done.\n\nGit branches are extremely valuable when addressing any of these issues.\nFor every Git project, by default, you have one branch called 'main' where all commits are recorded.\nThe branching feature of Git allows us to create a copy of a project that we can work on and continue to make commits to without integrating them into the main branch right away.\nMeanwhile, one can continue to make commits on the main branch, which is untouched by the changes made on other branches.\nOnce you are happy with whatever you were working on on a branch, you can merge it into your main branch (or indeed any other branch).\nMerging will be covered in the {ref}`rr-vcs-git-merge` subchapter.\n\nIf you test a feature on a branch that does not work out, you can delete or abandon it (for example, Feature B in the diagram below) rather than spending time unpicking your changes if you were doing all your work on the main branch.\nYou can have as many branches off of branches as you desire (for example, Feature A-1).\n\nUsing branches keeps working code safe, particularly in collaborations.\nEach contributor can have their own branch or branches which are only merged into the main project when they are ready.\n\n```{figure} ../../../figures/sub-branch.*\n---\nname: sub-branch\nalt: An illustration of branching in Git. There are four branches shown named main, Feature A, Feature B, and Feature A-1. Feature A and B are branches of the main branch, while Feature A-1 is a branch made from Feature A.\n---\nAn illustration of branching in Git\n```\n\nYou can create a branch and switch to it using:\n```\ngit checkout -b name_of_your_new_branch\n```\n\nTo change between branches, use the following command:\n```\ngit checkout name_of_the_branch\n```\n\nYou must commit any work you have in progress before you can to switch to another branch.\n\nYou can see all branches of your project using:\n\n```\ngit branch\n```\nThis gives the output as a list with an asterisk next to the branch you are on.\nYou can also use `git status` if you have forgotten which branch you are on.\n\nIf you decide to get rid of a branch you can delete it with:\n\n```\ngit branch -D name_of_the_branch\n```\n(rr-vcs-branches-practice)=\n## Good practice\n\nBranches should be used to **keep the main branch clean**.\nThat is, the main should only contain work which is complete, tested, and rightfully belongs in the main version of the project.\nSimilarly, you should try to keep individual branches as clean as possible by **only adding one new feature per branch**. This is because if you are working on several features, some may be finished and ready to merge into main while others are still under development.\nKeeping your branches clean means only making changes related to the feature on the feature's branch.\nGive your branches **sensible names**, \"new_feature\" is all well and good until you start developing a newer feature on another branch.\n\n## Interactive tutorial\n\n[Learn Git Branching](https://learngitbranching.js.org/) is a project to provide an interactive way to learn Git. Going\nthrough their tutorials will provide substantial experience with the most commonly used git commands and branch manipulation techniques.\n"
  },
  {
    "path": "book/website/reproducible-research/vcs/vcs-git-commit.md",
    "content": "(rr-vcs-git-commit)=\n# The `git commit` Command\n\nEvery time you 'add' changes (new files or existing files with some changes) and 'commit' those in your Git repository, you create a version of your project that is stored in your project history and can be accessed any time.\n\nTo commit changes with a meaning statement about changes made in a version, use `git commit` with a `-m` (m for message) flag:\n\n```\ngit commit -m 'helpful statement about the change here'\n```\n\nYou can see a log of your previous commits using\n\n```\ngit log\n```\n\nIn the log report on your terminal, you will see that each version is automatically tagged with a unique string of numbers and letters, called an SHA.\nYou can identify, access and compare different versions by using their corresponding SHA.\nHere is an example of a commit in the Git log:\nThe SHA is in the very first line, and apart from this SHA, the log also contains information on the date, time, and author of the change as well as the commit message (\"minor typo fix\").\n\n```\ncommit 0346c937d0c451f6c622c5800a46f9e9e1c2b035\nAuthor: Malvika Sharan <some@email.com>\nDate:   Wed May 6 18:22:40 2020 +0100\n\n    minor typo fix\n\n```\n\n(rr-vcs-commit-messages)=\n## More on the Commit Messages\n\nAs you work on your project, you will make more and more commits.\nWithout any other information, it can be hard to remember which version of your project is in which.\nStoring past versions is useless if you can not understand them, and figuring out what they contain by inspecting the code is frustrating and takes valuable time.\n\nWhen you commit, you have the chance to write a commit message describing what the commit is and what it does, and you should always, *always,* **_always_** do so.\nA commit message gets attached to the commit, so if you look back at it (for example, via `git log`), it will show up.\nCreating insightful and descriptive commit messages is one of the best things you can do to get the most out of version control.\nIt lets people (and your future self when you have long since forgotten what you were doing and why) quickly understand what updates a commit contains without having to carefully read code and waste time figuring it out.\nGood commit messages improve your code quality by drastically reducing wrong assumptions by people on why certain changes were made.\n\nWhen you commit via `git commit` without the `-m` or `--message` option, a field appears (either within the terminal or in a text editor) where a commit message can be written.\nYou can write a meaningful statement and save (and close if writing the message via text editor).\nYou can set your preferred editor as the default by running a statement like this:\n\n```\ngit config --global core.editor \"your_preferred_editor\"\n```\n\nTo avoid writing this commit message in an editor, you can use the command `git commit -m \"your message here\"`, as discussed earlier.\n\n(rr-vcs-commit-messages-practice)=\n### Good practice\n\nThe number one rule is: **make it meaningful**.\nA commit message like \"Fixed a bug\" leaves it entirely up to the person to understand what that means (again, this person may very well be you a few months in the future when you have forgotten what you were doing).\nThis can end up wasting your or others time figuring out what the bug was, what changes were actually made, and how a bug was fixed.\nAs such, a good commit message should *explain what you did, why you did it, and what is impacted by the changes*.\nAs with comments, you should describe what the code is \"doing\" rather than the code itself. For example, it is not obvious what \"Change N_sim to 10\" actually does, but \"Change number of simulations run by the program to 10\" is clear.\n\n**Summarise the changes your commit contains**.\nThis should be written in the first line (in 50 characters maximum), then leave a blank line before you continue with the description or body of the message.\nThe first line is the shortened version that appears as a summary when you use the command:\n\n```\ngit log\n```\n\nThis makes it much easier to quickly search through a large number of commits.\nIt is also a good practice to **use the imperative present tense** in these messages.\nFor example, instead of \"I added tests for\" or \"Adding tests for\", use \"Add tests for\".\n\nHere is a good example of a commit message structure:\n\n```\nShort (50 chars. or less) summary of changes\n\nMore detailed explanatory text, if necessary. Wrap it to\nabout 72 characters or so. In some contexts, the first\nline is treated as the subject of an email and the rest of\nthe text as the body. The blank line separating the\nsummary from the body is critical (unless you omit the body\nentirely); tools like rebase can get confused if you run\nthe two together.\n\nFurther paragraphs come after blank lines.\n\n  - Bullet points are okay, too\n\n  - Typically, a hyphen or asterisk is used for the bullet,\n    preceded by a single space, with blank lines in\n    between, but conventions vary here\n```\n(rr-vcs-commit-summary)=\n## Git commit: Summary\n\nBy committing your changes throughout the development of your project in meaningful units with descriptive and clear commit messages, you can create an easily understandable history.\nThis will help you and others to understand the progress of your work.\nFurthermore, as the next section will demonstrate, it will also make it easy to view past versions of your history or revert changes you have made.\n"
  },
  {
    "path": "book/website/reproducible-research/vcs/vcs-git-compare.md",
    "content": "(rr-vcs-git-compare)=\n# Retrieving and Comparing Versions\n\n(rr-vcs-versions-retrieving)=\n## Retrieving Past Versions\n\nTo cancel your latest commit (revert to the previous version), run the following command:\n```\ngit revert HEAD\n```\n\nThis command creates a new commit that reverts the changes made in the last version.\nIf you want to retrieve a version from weeks or months ago, start by using `git log` to find the SHA of the version you want to retrieve.\nTo reset your entire project to this version run the following commands:\n\n```\ngit checkout SHA_of_the_version\n```\n\nIf you want the old version of a single file and not the previous version of the entire project, you can do so by using the following command:\n\n ```\n git checkout SHA_of_the_version -- your_file_name\n ```\n\n(rr-vcs-versions-retrieving-practice)=\n### Good Practice\n\nCommits should be 'atomic', meaning that **they should do one simple thing and they should do it completely**.\nFor example, an 'atomic' commit could be adding a new function or renaming a variable.\nIf a lot of different changes to your project are all committed together, it can be hard to troubleshoot if any error appears in that version.\nFurthermore, undoing the whole commit may throw away valid and useful work.\n\nIt is good practice to **specify the files to be committed**, that is, adding files to the staging area by name (`git add your_file_name`) rather than adding everything (`git add .`).\nThis prevents you from unintentionally bundling different changes together.\nFor example, if you have made a change to file A while primarily working on file B, you may have forgotten this when you go to commit.\nWith `git add .`, file A would be brought along for the ride.\nIf there are several *unrelated* changes that should not be added together in a *single* file, `git add -p your_file_name` will let you interactively choose which changes to add.\nThat said, **you do not necessarily need to do per-file commits** when working on multiple files, but for one single problem.\nFor example, if we add a figure to this chapter here, choosing one to catch the attention of someone skimming through:\n\n```{figure} ../../../figures/flipped-taj-mahal.*\n---\nname: flipped-taj-mahal\nalt: A flipped photograph of the Taj Mahal to grab the reader's attention.\n---\nFlipped Taj Mahal\n```\n\ntwo files are changed:\n\n1. First, the figure file is added in the project repository.\n2. Then, a line is added in this file that references the figure, so it is displayed.\n\nSo two files are affected, but \"Add figure to version control chapter\" is a single, *atomic* unit of work, so only one commit is necessary.\n\nFinally, do not commit anything that is regenerated from other files committed in a version (unless it is something that would take hours to regenerate).\nGenerated files, such as scripts, clutter up your repository and may contain features such as timestamps that can cause annoying file conflicts (see {ref}`rr-vcs-git-merge`).\nYou can instruct Git to ignore certain files by creating a file called `.gitignore` and including names of the file that you do not need to store in your Git repository.\nFor example, configuration files that might change from environment to environment should be ignored.\n\n(rr-vcs-versions-comparing)=\n## Comparing Versions\n\nAt some point, you will likely need/want to compare versions of a project, for example, to see what version was used to generate a particular result.\n\nTo address this issue, use the `git diff` function, that takes two input data sets and outputs the changes between them.\n\n`git diff` is a multi-use function that runs on Git data sources such as commits, branches, files and more.\nBy default, `git diff` will show you any uncommitted changes since the last commit.\nIf you want to compare two specific things the syntax is:\n\n```\ngit diff thing_a thing_b\n```\n\nFor example, if you want to compare how a file has changed between two commits, use `git log` to get the SHAs of those commits and run:\n\n```\ngit diff SHA_a:your_file_name SHA_b:your_file_name\n```\n\nOr if you wanted to compare two branches, it would be:\n\n```\ngit diff branch_name other_branch_name\n```\n\n(rr-vcs-versions-comparing-practice)=\n### Good practice\n\nWith a little familiarity, `git diff` becomes an extremely powerful tool you can use to track what files have changed and exactly what those changes are.\nThis is extremely valuable for unpicking bugs and comparing work done by different people.\nBe careful to **understand what exactly is being compared** and, where possible, **only compare the relevant files** for what you are interested in to avoid large amounts of extraneous information.\n"
  },
  {
    "path": "book/website/reproducible-research/vcs/vcs-git-general.md",
    "content": "(rr-vcs-git-general)=\n# General information about git\n\nGit is a successful version control software (see [Wikipedia](https://en.wikipedia.org/wiki/Git) for detailed information).\nIt was created in 2005 and got rapidly adopted by software developers, especially because it is very fast and scalable. \nIts functions allow for parallel development and maintenance of large projects, like linux development.\n\n(rr-vcs-gitpros)=\n## Why everyone is using git\n\nWhile developed for software, Git has been used for many different kind of projects and platforms such as GitHub, GitLab, Gogs, GitLea and others. \nThese platforms brought project management tools into the Git workflow, facilitating community building around projects like the Turing Way book. \nSometimes, users of these platform do not even know about Git. \n\n(rr-vcs-git-limitations)=\n## Git Limitations\n\nGit is not magic and it is good to know about its limitations.\nEspecially, Git works best with small text files.\nGit starts to be impracticable when too many files are present, or when the repository becomes too big (1 TB is about the limit).\nAs a Git repository stores every version of every file that is added to it, large files that undergo regular modifications can inflate the size of a·project significantly.\nIn research projects, datasets often contains thousands of files and/or contain (very) large files.\nWhile one can use Git for non-software application, one needs to plan to use specific workflows and/or additional tools to be able to use Git tools.\nIt is particularly problematic because everything will work fine in the beginning and it is very difficult to solve issues when the project is ongoing.\nIt is therefore important to plan ahead, and try to avoid big repositories.\nFor instance, one can split the files into different repositories and save binary files outside of Git.\nThere are tools allowing that while keeping git at the core of the version control (git-annex and submodules are possible technologies, see section {ref}`data version control<rr-vcs-data>` and {ref}`research projects<rr-vcs-git4research>`).\n\n\n\n(rr-vcs-git-usecases)=\n## How one uses Git\n\nIf you ever made modification of files in GitHub, you have probably used Git without even realising it.\nWhen you push the `commit changes` button on a Git platform, Git was acting in the background to `add` the changes to the index,\n`commit` them with a message, and push it to the repository.\n\nSeveral software allows to use Git without using the command line, locally.\nHere is a non-exhaustive list of software one can also use, please refer to their own documentation:\n\n- [RStudio](https://posit.co/products/open-source/rstudio/)\n- Sourcetree\n- Gitkracken\n- [Visual Studio Code](https://en.wikipedia.org/wiki/Visual_Studio_Code)\n\n\nIn many cases, one still needs to use the command lines for complex matters, and we present the main Git functions usage in this book (see {ref}`Getting Started with Git<rr-vcs-git>`). "
  },
  {
    "path": "book/website/reproducible-research/vcs/vcs-git-in-research.md",
    "content": "(rr-vcs-git4research)=\n# Git for research projects\n\n```{figure} ../../../figures/healthy-research-tree.jpg\n---\nname: ds4research\nalt: Researchers are pouring water on a tree. The water represents data science principles and tooling, the tree represents the research. The tree is big and beautiful, on its branches are specific outcome written, that is workflow efficiency, powerful statistics, better collaboration, informative visualisations, more outputs, reproducible analysis, and team and community building.\n---\nData science practices can leverage the potential of the research workflow, in order to produce better research in less time. _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n\n\nBecause each research project has a data science component, there are clear advantages to use data science practices for the management of all the data produced during research.\nIn particular, the use of Git and GitHub is very appealing.\nHowever, GitHub is not enough to handle all research projects:\n- Data versioning needs special care, see the {ref}`section on data version control<rr-vcs-data>`.\n- Specific {ref}`folder structure<rr-rdm-storage-organisation>` help in the workflow.\n- They may be some legal issue to use an american tool for your data.\n\nYou may refer to a [carpentry workshop related to this topic](https://github.com/carpentries-incubator/managing-computational-projects).\n\n(rr-vcs-research-plus)=\n## Potential\n\n\nHere is a non-exhaustive list of features that a Git/GitHub workflow bring to data science projects, and that would be useful for research projects:\n\n- Backup data by pushing the data to a Git platform, toward a public or private repository.\n- Easily use different computers to work on the same project (with yourself of with collaborators).\n- Keep track of contributions.\n- Facilitate the use of folder templates to help with files organisation, see {ref}`rr-rdm-storage-organisation`.\n- Use Git platforms tools for project management.\n- Use Git platforms for outreach, even when the repository is private (using the Wiki).\n- Create an associated website under the same organisation on the Git platform.\n\n\n(rr-vcs-research-minus)=\n## Issues\n\nAs described in the {ref}`general section about Git<rr-vcs-git-limitations>`, Git does not work well when there are a lot of data, or when the data are large.\nWhen you expect the project to get large, one needs to set a different tooling to avoid creating unpractical repositories.\nSome of these tools makes it more difficult to access or see you files, so it is important to plan in advance what tool will best suits your need.\nSee the {ref}`section on Data Version Control<rr-vcs-data>` for more detailed explanations. \n\n**Briefly, in order to use Git when there are lots or large files, one needs to split the data in different repositories, and have these repositories use the git-annex technology.**\n\n(rr-vcs-research-tools)=\n## Tools\n\nWe encourage you to use a Git platform that is provided as an open infrastructure.\nIn many university, you will have access to a GitLab platform (which works very similarly to GitHub).\nAlternatively, you may want to install your own instance of one of the more lightweight open source Git platform (gogs, GitLea, GIN).\n\nIf you have many or large files, you will need to use the Git submodules and git-annex technologies. \nIf you do, we encourage you to look into {ref}`rr-vcs-data-tools-datalad` and follow the progresses of the [GIN-Tonic project](https://gin-tonic.netlify.app).\nBe prepared to invest some time learning how to use these tools.\n\n\n(rr-vcs-research-story)=\n## Fictive example\n \nMax has created a folder following a standard structure, they uses datalad to create submodules for each experiment, where they will save their datasets.\nUsing datalad, the git-annex technology is used to save the file content outside of the Git repository at every push.\nThey got their own GIN platform where the git repository and git-annexed content is saved, and backed up.\nTheir collaborators have access to the whole data, either via the browser interface or using some command line tool.\nThe GIN repositories are linked to a GitLab issue, so that the team is using advanced project management tools offered by GitLab.\nThe data analysis code is also set in a submodule, where git-annex is not allowed. \n\nAfter working for a couple of years on the project, together with their collaborators, Max has written a paper where they could link both the data and the analysis code, which was made public by archiving the Git repositories and the git-annexed data on the university library service.\n\n\nWhile this use case is already possible, it requires to use the command line (to use datalad), and get a GIN instance installed (the public GIN instance is meant only for neuroscience data). \n\n\n\n"
  },
  {
    "path": "book/website/reproducible-research/vcs/vcs-git-interactive.md",
    "content": "(rr-vcs-git-interactive)=\n# Interactive, Visual Git\n\nOne of the biggest challenges to getting started with Git can be understanding the file and directory structure and complexity of branches, commits, and remotes and how they interact, particularly on the command line with limited visual representations.\nIt is often confusing - even for advanced users - to translate from a conceptual diagram to the correct Git commands needed achieve the desired outcomes.\n\nThe [LearnGitBranching](https://learngitbranching.js.org/) tool created by [pcottle](https://github.com/pcottle/learnGitBranching) provides an interactive, visual introduction to Git.\nThis browser-based, interactive tool includes tutorials and allows you to practice using Git through a virtual \"repository\" and sandbox.\nThrough completion of built-in challenges, becoming comfortable with Git commands is more like a game than a chore.\n\n```{figure} ../../../figures/interactive-learn-git.*\n---\nname: interactive-learn-git\nalt: An illustration of the interactive, visual Learn Git Brnaching tool interface\n---\nA challenge in the LearnGitBranching tool.\n```\n\nThe sandbox capabilities of this tool also make it a great place for testing commands before running them on your actual repository.\n"
  },
  {
    "path": "book/website/reproducible-research/vcs/vcs-git-merge.md",
    "content": "(rr-vcs-git-merge)=\n# Merging Branches in Git\n\n(rr-vcs-merge-command)=\n## The `git merge` Command\n\nOnce you have finished up some work on a branch and you are ready to integrate it to your main project (or any other branch), you can merge the branch that you worked on into the main branch or any other target branch of your interest.\nYou can also use merging to combine work that other people have done with your own and vice versa.\n\nTo merge a branch, branch_A, into another branch, branch_B, switch to branch_A via:\n```\ngit checkout branch_A\n```\nMerge it into branch_B by:\n\n```\ngit merge branch_B\n```\n\nMerging will not be possible if there are changes in either your working directory or staging area that could be written over by the files that you are merging in.\nIf this happens, there are no merge conflicts in individual files.\nYou need to commit or stash the files it lists and then try again.\nThe error messages are as follows:\n\n```\nerror: Entry 'your_file_name' not update. Cannot merge. (Changes in working directory)\n```\n\nor\n\n```\nerror: Entry 'your_file_name' would be overwritten by merge. Cannot merge. (Changes in staging area)\n```\n\n(rr-vcs-merge-command-practice)=\n### Good practice\n\nFirst and foremost, your **main branch should always be stable**.\nOnly merge work that is finished and tested (for example, on a different branch).\nIf your project is collaborative, then it is a good idea to merge changes that others make into your own work frequently or share your changes with your collaborators.\nIf you do not do it often, it is very easy for merge conflicts to arise (next section).\n\n(rr-vcs-merge-conflicts)=\n## Merge Conflicts\n\nWhen changes are made to the same file on different branches, sometimes those changes may be incompatible.\nThis most commonly occurs in collaborative projects, but it happens in solo projects too.\nSay there is a project that contains a file with this line of code:\n\n```\nprint('hello world')\n```\n\nSuppose one person, on their branch, decides to \"pep it up\" a bit and changes the line to:\n\n```\nprint('hello world!!!')\n```\n\nwhile someone else, on another branch, decides to change it to:\n\n```\nprint('Hello World')\n```\n\nThey continue doing work on their respective branches and eventually decide to merge.\nTheir version control software then goes through and combines their changes into a single version of the file; *but*, when it gets to the `hello world` statement, it does not know which version to use.\nThis is a merge conflict: incompatible changes have been made to the same file.\n\nWhen a merge conflict arises, it will be flagged during the merge process.\nWithin the files with conflicts, the incompatible changes will be marked so you can fix them:\n\n```\n<<<<<<< HEAD\nprint('hello world!!!')\n=======\nprint('Hello World')\n>>>>>>> main\n```\n`<<<<<<<`: Indicates the start of the lines that had a merge conflict.\nThe first set of lines are the lines from the file that you were trying to merge the changes into.\n\n`=======`: Indicates the breakpoint used for comparison.\nIt separates the changes the user has committed (above), from the changes coming from the merge (below), for visual comparison.\n\n`>>>>>>>`: Indicates the end of the lines that had a merge conflict.\n\nYou resolve a conflict by editing the file to manually merge the parts of the file that Git had trouble merging.\nThis may mean discarding either your changes or someone else's or doing a mix of the two.\nYou will also need to delete the `<<<<<<<`, `=======`, and `>>>>>>>` in the file.\nIn this project, the users may decide in favour of one `hello world` over another, or they may decide to replace the conflict with:\n\n```\nprint('Hello World!!!')\n```\n\nOnce you have fixed the conflicts, commit the new version.\nYou have now resolved the conflict.\nIf during the process, you need a reminder of which files the conflicts are in, you can use `git status` to find out.\n\nIf you find there are particularly nasty conflicts, and you want to abort the merge you can use:\n```\ngit merge --abort\n```\n\n(rr-vcs-merge-conflicts-practice)=\n### Good practice\n\nBefore you start trying to resolve conflicts, make sure you fully understand the changes and how they are incompatible to avoid the risk of making things more tangled.\nMerge conflicts can be intimidating to resolve, especially if you are merging branches that diverged many commits ago and now have numerous incompatibilities.\nHowever, it is worth remembering that your previous versions are safe and that you can go about fixing this issue without affecting the past versions.\nThis is why it is good practice to **merge other's changes into your work frequently**.\n\nThere are tools available to assist in resolving merge conflicts, some are free; some are not.\nFind and familiarise yourself with one that works for you.\nCommonly used merge tools include [KDiff3](http://kdiff3.sourceforge.net/), [Beyond Compare](https://www.scootersoftware.com/), [Meld](http://meldmerge.org/), and [P4Merge](https://www.perforce.com/products/helix-core-apps/merge-diff-tool-p4merge).\nTo set a tool as your default do:\n\n```\ngit config --global merge.tool name_of_the_tool\n```\n\nand launch it with:\n\n```\ngit mergetool\n```\n\nFundamentally, the best way to deal with merge conflicts is, as far as it is possible, to try to avoid them in the first place.\nYou can improve your odds on this by keeping branches clean and focused on a single issue and involving as few files as possible.\nBefore merging, make sure you know what is in both branches.\nIf you are not the only one that has worked on the branches, then keep the lines of communication open, so you are all aware of what the others are doing.\n"
  },
  {
    "path": "book/website/reproducible-research/vcs/vcs-git-summary.md",
    "content": "(rr-vcs-git-summary)\n# Summary Table of Git Commands\n\n| Command                       | Use                                                                      |\n| ----------------------------- | ------------------------------------------------------------------------ |\n| `git init`                      | Initialises a Git repository in that directory                           |\n| `git add .`                     | Adds all changes to the staging area to be committed                      |\n| `git add file_name`             | Adds changes to the specified file to the staging area to be committed    |\n| `git commit`                    | Commits staged changes and allows you to write a commit message          |\n| `git checkout SHA`              | Checks out a past commit with the given SHA                                 |\n| `git checkout SHA -- file_name` | Checks out the past version of a file from the commit with the given SHA      |\n| `git checkout -b branch_name`   | Creates and switches to a new branch                                        |\n| `git checkout branch_name`      | Switches to the specified branch                                             |\n| `git merge branch_name`         | Merges the branch you are on into the specified branch                    |\n| `git log`                       | Outputs a log of past commits with their commit messages                  |\n| `git status`                    | Outputs status, including what branch you are on and what changes are staged  |\n| `git diff`                      | Outputs the differences between the working directory and most recent commit       |\n| `git diff thing_a thing_b`      | Outputs the differences between two things, such as commits and branches       |\n| `git clone URL`                 | Makes a clone of the repository at the specified URL                     |\n| `git remote add origin URL`     | Links a local repository and an online repository at the specified URL               |\n| `git push origin branch_name`   | Pushes local changes to the specified branch of the online repository      |\n| `git pull origin branch_name`   | Pull changes from the online repository into local repository      \n"
  },
  {
    "path": "book/website/reproducible-research/vcs/vcs-git.md",
    "content": "(rr-vcs-git)=\n# Getting Started with Git\n\nTo get started, please make sure that your have Git installed on your computer.\nInstructions for installing Git on Linux, Windows and Mac machines are available [here](https://Git-scm.com/book/en/v2/Getting-Started-Installing-Git).\nOnce the installation is complete, go to your project directory via terminal or command-line interface (for example, `cd my-project-folder`).\nYour project folder contains all of your files, including subdirectories.\n\nWhen working on a project, you will make numerous changes to your files as you progress.\nSometimes you may need to undo changes, take another look at past versions, or compare versions.\nSaving each version individually (such as `version_1.py` and `version_2.py`) is messy and quickly becomes impractical.\n\nCommits serve as checkpoints where individual files or an entire project can be safely reverted to when necessary.\nBy making commits, you can save versions of your code and switch between them/compare them easily without cluttering up your directory.\n\nTo get started with your Git repository, run the following Git command in the terminal to create/initialise your Git repository:\n\n```\ngit init\n```\n\nThis only needs to be done once per project.\n\nThink of the repository as a place where the history is being stored.\nWhen you first initialise a repository with `git init`, all of the files in your project would not be added to the Git repository as they are  untracked by Git by default.\nTherefore, the next step is to add your files to the Git repository and allow Git to track them.\n\nRun the following command to add all files in the current folder:\n```\ngit add .\n```\nOR run the following command to add only a specific file (called 'your_file_name' in this example):\n```\ngit add your_file_name\n```\n\nThis command puts your newly added files or any other changes into what is called the \"staging\" area.\n\n```{figure} ../../../figures/change-stage-repo.*\n---\nname: change-stage-repo\nalt: An illustration of the `git add` and git commit Commands.\n---\nHow `git add` and `git commit` works\n```\n\nIf you are ever unsure what files have been added, what files have been changed, or what files are untracked, you can run the following to find out:\n\n```\ngit status\n```\n\nThe next step is to \"commit\" any changes stored in your staging area so that they are recorded in your repository.\n\n```\ngit commit\n```\nCongratulations, you have finished setting up your repository!\n\nYou will learn more about `git commit` in the next chapter.\n"
  },
  {
    "path": "book/website/reproducible-research/vcs/vcs-github.md",
    "content": "(rr-vcs-github)=\n# Git Commands to Work on GitHub\n\nAs research becomes increasingly collaborative and multiple people work on the same project, it becomes difficult to keep track of changes made by others if not done systematically.\nMoreover, it is time-consuming to manually incorporate the work of different participants in a project, even when all of their changes are compatible.\nHosting the project on an online repository hosting service like GitHub is beneficial to make collaborations open and effective.\nIf you are new to collaboration through [GitHub](https://github.com), please follow the comprehensive guide in the previous sections.\n\nIn this section, we will discuss how to use Git commands to work with an online Git repository.\n\nPlease note that the commands listed in this chapter (both in this and previous subchapters) are NOT specific to GitHub.\nThey are used for collaborative work on any Git repositories and to interact with any repository hosting site/servers, which can be [GitHub](https://github.com/), but also [GitLab](https://about.gitlab.com/), [Bitbucket](https://bitbucket.org/) or a [self-set-up bare Git repository on a web server](https://opensource.com/life/16/8/how-construct-your-own-git-server-part-6).\n\nFor simplicity, we will use GitHub as an example to explain commands that are used for interacting with Git repositories.\n\n(rr-vcs-github-local)=\n## Create a Local Copy of an Online Repository\n\nSo far, all Git commands introduced in this chapter are concerned with local, unconnected Git repositories.\nIn order to collaborate with others, hosting services, such as GitHub, can store a *clone* (a copy) of your local repository and expose it to others.\nUsually, you will have a local repository and a *remote*, web-hosted repository.\nYour local repository is connected to the web-based clone.\nIn technical terms, the web-based clone is a `remote` of the local repository. Usually, this remote is called \"origin\".\nHaving a web-based remote allows you to *push* changes to your project online.\nIt enables others to obtain their own clone of your repository (a copy of your repository to their local computer), make changes, and submit a *pull request* that allows you to integrate their changes.\nFor example, one can create an independent local copy of a project using the following Git command:\n\n```\ngit clone <insert GitHub link of the repository here>\n```\n\nCollaborators can update their local version of an online repository or *pull* other's work into their copy using the command:\n```\ngit pull\n```\nSimilarly, they can edit files locally and stage their updates (`git add .`), commit changes to a new version (`git commit`) and *push* changes to the remote online repository using the Git command:\n```\ngit push\n```\n(rr-vcs-github-online)=\n## Link a Local Project on Your Computer to an Online Repository\n\nTo link a project on your computer to a new GitHub repository (preferably with the same name), you need to follow the standard workflow for creating a Git repository (described in the {ref}`rr-vcs-workflow` subchapter) by issuing the following set of commands in the terminal, one by one:\n\n```\ncd <your project folder>\ngit init\ngit add .\ngit commit\n```\nAssuming that you have a GitHub repository that you want to connect with this project, run the following command:\n\n```\ngit remote add origin <GitHub repository link for your project>\n```\n\nThen, *push* all the files on your computer to the online version so they match:\n\n```\ngit push -u origin main\n```\n\nYou can then go on and make more commits on your computer.\nWhen you want to push them to your online version, similarly you do:\n\n```\ngit push origin branch_you_want_to_push_to\n```\n\nYou can also make changes directly on GitHub by editing the online repository, and *pull* those changes locally by using the `git pull` command.\n\nOthers can also clone the repository to their computer by using:\n\n```\ngit clone git@github.com:your-github-username/repository_name\n```\n\nThey can make and commit changes to the code without impacting the original, and push their changes to *their* online GitHub account using:\n\n```\ngit push -u origin main\n```\n\nThe same procedure applies to you if you want to clone someone else's repository.\n\n(rr-vcs-github-online-pull)=\n### Pull Requests\n\nIf you are working on a personal branch and some other changes were made in the main branch, you can *pull* those changes down to your branch using the Git command:\n```\ngit pull origin main\n```\n\nWhen everyone has a copy of the project on their own branch (checkout your branch with `git checkout branch-name`), they can *push* their changes to their branch using the following command:\n\n```\ngit push origin branch-name\n```\n\nHowever, if you can not directly edit the repository (when you are not an owner or admin of the project), you will be able to share your work with the help of *pull requests*.\nA pull request allows a contributor to get the proposed changes from their branch or repository integrated into the main branch of the project.\nIt is also possible to make pull requests via the command line (see the GitLab documentation [here](https://git-scm.com/docs/git-request-pull)).\n\n(rr-vcs-github-contributing)=\n## Contributing to Other Projects\n\nWhen you create a local copy of a repository, you only keep the versions of the files that are in the repository at the time of creating that copy.\nIf any changes are made in the original repository afterwards, your copy will get out of sync.\nThis can lead to problems like conflicting file contents when making a pull request or merging changes from your branch to the main repository.\nTherefore, when working on different branches or forks of a repository, it is a good practice to keep them updated with the main repository and in sync with the original repository.\n\n(rr-vcs-github-contributing-workflow)=\n### A Workflow to Contribute to Others Github Projects via `git`:\n\nUsing the fork button on the GitHub repository you wish to contribute to, create a copy of the repository in your account.\nThe main repository that you forked will be referred to as the \"upstream\" repository.\n\nYou can now work on your copy using the command line, via the following steps (make sure you replace the placeholder user and repository names):\n\n1. Clone it to your local machine:\n\n    ```\n    git clone git@github.com:your-github-username/repository_name\n    ```\n\n2. Add the 'upstream' repository to the list of remote repositories using the ``git remote`` command:\n\n    ```\n    git remote add upstream git@github.com:upstream-github-username/repository_name\n    ```\n\n3. Verify the new remote 'upstream' repository:\n\n    ```\n    git remote -v\n    ```\n\n4. Update your fork with the latest upstream changes, by first fetching the upstream repository's branches and latest commits to bring them into your repository:\n\n    ```\n    git fetch upstream\n    ```\n\n5. View all branches, including those from upstream:\n\n    ```\n    git branch -va\n    ```\n\nMake sure that you are on your main branch locally, if not, then checkout your main branch using the command `git checkout main`\n\n6. Keep your fork updated by merging those commits (fetched from the upstream) to your own local main branch.\n\n    ```\n    git merge upstream/main\n    ```\n\nNow, your local main branch is up-to-date with everything modified upstream.\nIf there are no unique commits on the local main branch, git will simply perform a fast-forward.\n\n*Note: The upstream/main is the original repository's main which you wish to contribute to, whereas origin/main refers to the repository you cloned in your local machine after it was forked on GitHub.*\n\nOnce your fork is in sync with the upstream main repository, you can always keep your local cloned repository in sync with origin (fork in this case) by using:\n\n```\ngit checkout main\ngit pull\n```\n\nThe `git pull` command combines two other commands, `git fetch` and `git merge`.\nWhen using `git fetch`, the resulting commits are stored as the remote branch allows you to review the changes before merging.\n\nSimilarly, if you have created more branches other than main, you can also keep them in sync with your main, once it is in sync with the upstream repository.\n\n```\ngit checkout my-other-branch\ngit pull origin main\n```\n\nWhen everything is up-to-date, you can work on your branch and commit changes.\n\nWhen you are ready to push your local commits to your forked repository (origin), use the following command.\n\n```\ngit push origin forked_repository\n```\n\nNow you can make a pull request!\n\n(rr-vcs-github-contributing-practice)=\n### Good Practice\n\nBefore you create a branch, make sure you have all the upstream changes from the origin/main branch.\n\n\n**A word of caution on the `rebase` command**: While trying to keep your branches in sync, you may come across the `rebase` command.\nIt tends to rewrite history and could be troublesome if not communicated with others working on the same branch. Try to avoid using the `rebase` command, and instead use `pull` or `fetch`+`merge`, as discussed in this section.\nYou can find more details about [Merging vs Rebasing](https://www.atlassian.com/git/tutorials/merging-vs-rebasing).\n\n\n## Further reading\n- An [article on syncing a fork of a repository](https://help.github.com/en/articles/syncing-a-fork) to keep it up-to-date with the upstream repository.\n- Instructions if you wish to do it all [in the browser itself](https://github.com/KirstieJane/STEMMRoleModels/wiki/Syncing-your-fork-to-the-original-repository-via-the-browser).\n"
  },
  {
    "path": "book/website/reproducible-research/vcs/vcs-personal-stories.md",
    "content": "(rr-vcs-personal-stories)=\n# Personal Stories\n\n(rr-vcs-personal-stories-interiew)=\n## An Interview with Adina on Datalad\n\nVersion controlling data can be challenging. Adina knows this because she is part of a team that develops DataLad and uses it to solve data management challenges.\nKirstie interviews her about her work and why she thinks versioning data is essential.\n\n\n**Kirstie**: Hi Adina, thank you for contributing the chapter on version control for data!\nI know you are a developer for DataLad, and I'm excited to learn more about the project.\nCan you start by telling me who you are and what you are working on?\n\n**Adina**: Hey Kirstie, thanks a lot for providing a space for the topic of version-controlling data!\nI'm a PhD student in neuroscience, and I am part of the lab that develops DataLad.\nApart from working on neuroscientific questions, I also work on data management challenges that are typical for my field, such as \"I have 300GB of data, how can I possibly version control or share this?\", or \"How can I link my analyses to the version of data I have used?\".\nAs a neuroscientist, I'm privileged to work in a field with many fantastic, open data sets, but it is also challenging to handle, share, and keep track of data that can easily be several hundred GB in size.\n\n**Kirstie**: Fab, so how does DataLad help with your work?\n\n**Adina**: DataLad lets me version control and share data of any size, and I use this to attach data in precise versions to code and manuscripts I create.\nWhen doing data analyses and the underlying data is modified, I can update my repositories and recompute my scripts.\nThis helps me to assess if my results are replicable.\nAnd just as Git, it is a great memory aid for remembering what I did to my data.\nIt has some cool functions for provenance capture, and I can just check my Git history to find out from which data a particular figure was created, for example.\n\n\n**Kirstie**: Cool, so what makes DataLad better suited for what you do than other tools that version control data?\n\n**Adina**: I personally like DataLad, because on top of the functionality that Git and `git-annex` provides, it makes linking and reusing modular parts of my research easy.\nWhen I work on an analysis, I publish the data, the code + results, and the manuscript as separate, version-controlled Git repositories to GitHub.\nBut these repositories are linked together so that someone who reads my manuscript could backtrace every step that was undertaken to create this result, back to the original data.\nI can share my analysis on GitHub and can have data, code, and even software environments altogether, to allow others to reproduce my results, and I find that to be a very powerful feature.\n\n**Kirstie**: And as a part of the DataLad team, how do you contribute to the software?\n\n**Adina**: My main motivation is to make the software accessible for users of all backgrounds.\nIf scientists receive no formal training in version control or research data management, it can be hard to work reproducibly.\nI believe if software is easy to use and well-documented, it can help scientists to do better science.\nSoftware-wise, I, therefore, work on help- and UX-features, and documentation-wise, I work on tutorials that are suitable to users independent of skill level or background.\n\n**Kirstie**: What is the journey of DataLad, and how did you get to be a part of it?\n\n**Adina**: DataLad was originally created by Michael Hanke and Yarik Halchenko in 2014.\nThey wanted to have a tool that allowed them to install data just as easily as software packages and keep track of how data changes.\n`git-annex` already existed at this point, but they wanted to build upon it to make it easier to use.\nOver the years, the tool became a joint version control and data management tool to facilitate data sharing, revision tracking, and reproducible computations.\nI joined the lab almost two years ago as a Master's student in Clinical Psychology, excited for open and reproducible science, but a complete newbie technology-wise:\nI had never heard of version control, no programming experience, and the idea that data is dynamic was insightful but completely new to me.\nNaturally, when I started using DataLad, I was completely overwhelmed.\nLuckily, there were many people to help me get started and give me the necessary background information.\nI know, however, that such a learning environment is not the default, so when I started my PhD, I actually created the resource that I would have needed to get started as a student: [The DataLad Handbook](http://handbook.datalad.org).\n\n**Kirstie**: Thanks a lot for telling us about this tool. \nSo the handbook is where people can find out more, if they want?\n\n**Adina**: Yes, I would point them to [The DataLad Handbook](http://handbook.datalad.org).\nIt is meant to be an accessible, code-along tutorial, that is suitable to researchers independent of background - I think you shouldn't have to be a\nLinux-crank or computer scientist to version control data.\n"
  },
  {
    "path": "book/website/reproducible-research/vcs/vcs-resources.md",
    "content": "(rr-vcs-resources)=\n# Resources\nFurther resources to learn more about version control systems, Git, and GitHub.\n\n(rr-vcs-resources-learn)=\n## What to Learn Next\n\nLook into best practice for writing good-quality code (for example, good naming conventions, informative comments, modular code structure).\nMany such skills are also applicable for using version control well (for example, for writing good commit messages). \nThey also ease using version control by keeping changes neat and localised.\n\n(rr-vcs-resources-reading)=\n## Further Reading\n\n- A free and very in-depth book on Git's myriad of features can be found [here](https://Git-scm.com/book/en/v2).\n- A useful Git cheat sheet can be found [here](https://education.github.com/git-cheat-sheet-education.pdf).\n- Interactive tutorials for familiarising yourself with GitHub can be found at [https://skills.github.com/](https://skills.github.com/).\n- Interactive tutorials for DataLad can be found at [handbook.datalad.org](http://handbook.datalad.org), and a walk-through of git-annex can be found at [git-annex.branchable.com/walkthrough/](https://git-annex.branchable.com/walkthrough/).\n- An article on syncing a fork of a repository to keep it up-to-date with the upstream repository can be found [here](https://help.github.com/en/articles/syncing-a-fork).\n- If you wish to do it all in the browser itself, instructions to do so can be found [here](https://github.com/KirstieJane/STEMMRoleModels/wiki/Syncing-your-fork-to-the-original-repository-via-the-browser).\n\n(rr-vcs-resources-references)=\n## References\n\n- [1.](https://git-scm.com/book/en/v2/Getting-Started-About-Version-Controls) **Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License**\n- [2.](https://link.springer.com/article/10.1186/1751-0473-8-7) **[Creative Commons Attribution License](http://creativecommons.org/licenses/by/2.0)** *Other useful stuff in this paper, could use their intro as part of the book's intro*\n- [3.](http://crlionline.net/node/198) **Permission to use given by the author (Peter Reimann) 15/12/18**\n- [4.](https://tonysyu.github.io/source-control-for-scientists-and-soloists.html#.XA6Q3mj7RPY) **Permission given by the author (Tony Yu) 15/12/18**\n- [5.](https://git-scm.com/book/en/v2/Git-Basics-Getting-a-Git-Repository#ch02-git-basics-chapter) **Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.**\n- [6.](https://githowto.com/undoing_committed_changes) **creative commons Attribution-NonCommercial-ShareAlike 4.0 International**\n- [7.](https://www.atlassian.com/git/tutorials/saving-changes/git-diff) **Creative Commons Attribution 2.5 Australia License.**\n- [8.](http://sethrobertson.github.io/GitBestPractices/) **Creative Commons Attribution-ShareAlike 3.0 Generic**\n- [9.](https://guide.esciencecenter.nl/best_practices/version_control.html) **Creative Commons Attribution 4.0 International License**\n- [10.](https://git-scm.com/book/en/v2/Distributed-Git-Contributing-to-a-Project) **Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License**\n- [11.](https://opensource.com/article/18/5/git-branching) **Creative Commons license**\n- [12.](https://github.com/Kunena/Kunena-Forum/wiki/Create-a-new-branch-with-git-and-manage-branches) **GNU GENERAL PUBLIC LICENSE Version 3**\n- [13.](http://genomewiki.ucsc.edu/index.php/Resolving_merge_conflicts_in_Git) **[\"You are granted a limited license to copy anything from this site\"](http://genomewiki.ucsc.edu/index.php/Genomewiki:General_disclaimer)**\n- [14.](https://githowto.com/resolving_conflicts) **creative commons Attribution-NonCommercial-ShareAlike 4.0 International**\n- [15.](https://opensource.com/article/18/1/step-step-guide-git) **Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)**\n- [16.](https://kbroman.org/github_tutorial/pages/init.html) **Attribution 3.0 Unported (CC BY 3.0)**\n- [17.](https://opensource.com/article/18/2/how-clone-modify-add-delete-git-files) **Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)**\n- [18.](https://thejunkland.com/blog/how-to-write-good-readme.html) **Creative Commons Attribution-NonCommercial 2.5 License**\n- [19.](https://gist.github.com/PurpleBooth/109311bb0361f32d87a2) **MIT**\n- [20.](https://commons.wikimedia.org/wiki/Taj_Mahal#/media/File:Taj_Mahal_in_March_2004.jpg) **GNU Free Documentation License**\n- [21.](https://juristr.com/blog/2013/04/git-explained/) **Creative Commons Attribution-ShareAlike 4.0 International License**\n- [22.](http://simpleprimate.com/github-for-web-designers/glossary.html) **Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)**\n- [23.](https://www.atlassian.com/git/tutorials/merging-vs-rebasing) **Creative Commons Attribution 2.5 Australia License.**\n"
  },
  {
    "path": "book/website/reproducible-research/vcs/vcs-workflow-branches.md",
    "content": "(rr-vcs-workflow-branches)=\n# Non-Linear Development of Your Project with \"Branches\"\n\n> This chapter is for more advanced users.\n> It allows you to work on the code, while allowing other users to see the stable version of your data first.\n>Branches are also a way to make changes that can be easily trashed.\n\n So you have your project and you want to add something new or try something out before reflecting the changes in the main project folder.\n To add something new, you can continue editing your files and save them with the proposed changes.\n Suppose you want to try something without reflecting the changes in the central repository.\n In that case, you can use the \"branching\" feature of more advanced version control systems such as Git.\n A branch creates a local copy of the main repository where you can work and try new changes.\n Any work you do on your branch will not be reflected on your main project (referred to as your main branch) so it remains secure and error-free.\n At the same time, you can test your ideas and troubleshoot in a local branch.\n\n When you are happy with the new changes, you can introduce them to the main project.\n The merge feature in Git allows the independent lines of development in a local branch to get integrated into the main branch.\n\n ```{figure} ../../../figures/one-branch.*\n ---\n name: one-branch\n alt: >\n  A row of nine grey dots is labelled 'Main', representing the main branch. \n  Each of these dots is connected to the two neighbouring dots with an arrow pointing to the right.\n  On top of the main branch is a line of four blue dots, that are also connected by arrows.\n  These blue dots are labelled 'Feature A' and represent the development branch. \n  The development branch is connected to the main branch through the same arrows that connect the dots within a branch:\n  An arrow points from grey dot number 3 to blue dot number 1, and in the same fashion an arrow points from blue dot number 4 to grey dot number 8.\n ---\n The development and main branch in Git.\n ```\n\n You can have more than one branch off of your main copy.\n If one of your branches ends up not working, you can either abandon it or delete it without impacting the main branch of your project.\n\n ```{figure} ../../../figures/two-branches.*\n ---\n name: two-branches\n alt: >\n  In the same way as in the previous figure, a line of nine connected grey dots represents the main branch.\n  On top of the main branch a line of four connected blue dots represents development branch one (named 'Feature A').\n  Additionally, below the main branch a line of two connected orange dots, representing development branch two (named 'Feature B'), is shown.\n  The two development branches connect to the main branch at different positions. \n ---\n Two development branches and one main branch in Git.\n ```\n\n If you want, you can create branches from branches (and branches off of those branches and so on).\n\n ```{figure} ../../../figures/sub-branch.*\n ---\n name: sub-branch1\n alt: >\n  In the same way as in the previous figure, a line of nine connected grey dots represents the main branch.\n  On top of the main branch a line of four connected blue dots, representing the 'Feature A' development branch, and below the main branch line of two connected orange dots, representing the 'Feature B' development branch, are shown.\n  Additionally, a line of two connected green dots shows another development branch (named 'Feature A-1') on top of the 'Feature A' development branch. \n  The Feature A-1 development branch only connects to the Feature A development branch, and not the main branch. \n ---\n Several development branches in Git.\n ```\n\n No matter how many branches you have, you can access the past versions you made on any of them.\n If you are curious to know how to use this feature in practice, you will find more details a few sections ahead.\n"
  },
  {
    "path": "book/website/reproducible-research/vcs/vcs-workflow.md",
    "content": "(rr-vcs-workflow)=\n# General Workflow\n\nVersion control is a systematic approach to record changes made in a file, or set of files, over time.\nThis allows you and your collaborators to track the history, see what changed, and recall specific versions later when needed.\nA typical procedure for using version control is as follows:\n\n1. Create files - these may contain text, code or both.\n2. Work on these files, by changing, deleting or adding new content.\n3. Create a snapshot of the file status (also known as version) at this time.\n4. Document what was changed in the version history of that file.\n\nThe snapshot process is often done manually for text or presentation documents (for instance by naming files with the suffixes `v01`, `v02` and so on). \nA description of the changes for each version is sometimes made via an external document like a spreadsheet.\nFinding the latest version can also be facilitated by putting old versions in a subfolder.\nThis manual process is not very practical when a lot of files are changing, like when one creates code or work with data.\nIn these cases, the use of a version control software is highly recommended.\n\n\nThis process of creating a snapshot is described differently in different version control software.\nFor example, Git describes it as \"a commit\". Some systems call it \"a time-point\" or \"a checkpoint\";\nand this is referred to as \"saving your work\" in other cases such as in [Google docs](https://docs.google.com/) or [HackMD](http://hackmd.io/).\nThe version history may be more or less informative.\n\nAs you keep saving your work by adding changes, you make more and more snapshots.\nYou can think of these as saving versions of these files.\nIf you need to go back to a previous version of a file because of a mistake, or if you changed your mind about a previous update, you can access the file in your preferred version, or return your entire project to a past state.\n\n\n```{figure} ../../../figures/main-branch.*\n---\nname: main-branch\nalt: >\n  A line of circles, with an arrow pointing from the left to the right, connecting the circles.\n  The circles represent different snapshot of a file, they are added sequentially.\n  An arrow goes from the last circle to several circles on the left, representing the possibility to return to a past state of the file.\n---\nVersion history with a single branch.\n```\n\nIn many version control systems (or in a special document if you do manual version control), you will be able to add a comment for each snapshot.\nClear and concise comments make it easier to get an fast overview of the changes that were made in each versions.\nThis ensures that it is easy to find what you are looking for when you need to go back to a past version.\nYour collaborators will thank you, but so will future versions of yourself.\n"
  },
  {
    "path": "book/website/reproducible-research/vcs.md",
    "content": "(rr-vcs)=\n# Version Control\n\n(rr-vcs-prerequisites)=\n## Prerequisites\n\n| Prerequisite | Importance | Notes |\n| -------------|----------|------|\n| {ref}`Experience with the command line<rr-overview-resources-commandline>` | Helpful |  |\n\n**Recommended Skill Level**: _Beginner-Intermediate_\n\n(rr-vcs-summary)=\n## Summary\n\nNo matter how your group is organized, the work of multiple contributors must be managed into a single set of shared working documents.\nManagement of changes or revisions to any type of information made in a file or project is called versioning.\n\nIn particular, reproducibility requires providing **the code and the data** that were used to produce a figure.\nIn practice, data and code are modified regularly and one needs to record what was changed when, in order to provide provenance information. \nAs we will see in this chapter, version control offers many other advantages, which explains why most data science projects are hosted on Git platforms.\n\n**Version control is an approach to record changes made in a file** or set of files over time so that you and your collaborators can track their history, review any changes, and revert or go back to earlier versions.\nFor example, when writing a paper with multiple collaborators, version control can help track what changed, who made the changes, and what updates were made.\n\n\n\n```{figure}  ../../figures/project-history.*\n---\nname: project-history\nalt: >\n  An illustration with two examples of project history management.\n  The left shows a stack of ambiguously named files, shown as book-like objects.\n  A hand carefully tries to pull out one of the files without making the stack crumble. \n  In contrast, the right shows a dial with options ranging from V1 to V6.\n  On top of the dial the six corresponding files are represented as ordered documents.\n  A hand moves the dial to V3, which highlights the third document on top in blue. \n---\n  Version control, in contrast to ambiguously named files, enables easy picking between successive document versions. \n  _The Turing Way_ project illustration by Scriberia. Used under a CC-BY 4.0 licence. DOI: [10.5281/zenodo.3332807](https://doi.org/10.5281/zenodo.3332807).\n```\n\n\nIn this chapter, we introduce versioning best practices regardless of tools {ref}`in the workflow chapter<rr-vcs-workflow>`, before describing in more detail the use of version control and {ref}`git for research projects<rr-vcs-git4research>` that comprise  documentation, datasets and code.\nMost instructions given in this chapter will be indeed geared towards Git, which is most commonly used by researchers, and a web-based Git repository hosting service, [GitHub](https://github.com/), which facilitates online collaborations. \nWe also provide information about {ref}`larger dataset versioning<rr-vcs-data>`, and introduce tools that allow the use of Git workflows for this purpose, although Git is not suitable for versioning binary files.\n\n### Version control systems\n\nDifferent version control systems can be used through a program with a graphical user interface, web browser-based applications, or command-line tools.\nTools such as Google Drive and Dropbox offer platforms to update files and share them with others in real-time, collaboratively.\nMore sophisticated version control system exists within tools like [Google docs](https://docs.google.com/) or [HackMD](http://hackmd.io/).\nThese allow collaborators to update files while storing each version in its version history (we will discuss this in detail).\nAdvanced version control systems (VCS) such as [Git](https://en.wikipedia.org/wiki/Git), [Mercurial](https://www.mercurial-scm.org/), and [SVN](https://subversion.apache.org/) provide much more powerful tools.\nAccessing the version history and keeping control over the main version of your files are particular feature of these advanced tools.\n\nVersioning practices mainly come from managing changes in the code repositories.\nHowever, in reality, you can use version control for nearly any type of file on a computer.\nLater in this chapter, we will discuss version control for data and other research project files, which can be applied to keep track of revisions of large amounts of data.\nIt is useful to know that data can be volatile and versioning them can improve the reproducibility of your scientific analyses.\n\n\n\n(rr-vcs-useful)=\n### Motivation\n\nIn terms of reproducibility, version control is required in order to follow **provenance information**.\nBecause data and analysis code do evolve over time, it can become very difficult or even impossible to know what version of the code and what version of the data was used to produce a particular figure.\nThis provenance information is enabled and facilitated when both the data, the code and the figure files are under versioning.\n\nIn addition, version control creates **version history** to help us understand what changes were made, or why a specific analysis was run, even weeks or months later.\nWith the help of comments and commit messages in Git, for instance, each version can explain what changes it contains compared to the previous versions.\nThis is helpful when we share our analysis (not only data), and make it auditable and **reproducible** - which is good scientific practice.\n\nA version control system **neatly hides older versions** of the data. \nSo your working directory is not cluttered by the debris of previous versions, while they remain accessible, in case you need them.\nSimilarly, with version control, there is no need to leave unused chunks of code should you ever need to come back to an old version again.\n\n\nFinally, version control is invaluable for collaborative projects where different people work on the same data or code simultaneously and build on each other's work.\nUsing a version control system, **changes made by different people can be tracked and often automatically combined**, saving a great deal of painstaking manual efforts.\nUsing version control makes your research more transparent.\nSince all your actions are recorded, your studies become easier to reproduce and build upon.\nMoreover, version control hosting services such as {ref}`GitHub<cl-github-novice-motivation>`, GitLab and others provide a way to communicate and collaborate in a more structured way, such as in pull requests, code reviews, and issues.\n"
  },
  {
    "path": "lychee.toml",
    "content": "#############################  Display  #############################\n\n# Verbose program output\n# Accepts log level: \"error\", \"warn\", \"info\", \"debug\", \"trace\"\nverbose = \"error\"\n\n# Don't show interactive progress bar while checking links.\nno_progress = false\n\n#############################  Cache  ###############################\n\n# Enable link caching. This can be helpful to avoid checking the same links on\n# multiple runs.\ncache = true\n\n# Discard all cached requests older than this duration.\nmax_cache_age = \"2w\"\n\n#############################  Runtime  #############################\n\n# Maximum number of allowed redirects.\nmax_redirects = 10\n\n# Maximum number of allowed retries before a link is declared dead.\nmax_retries = 2\n\n# Maximum number of concurrent link checks.\nmax_concurrency = 14\n\n# extension applied to files without extension\ndefault_extension = \"html\"\n\n# Resolve directories to index files\nindex_files = [\"index.html\"]\n\n#############################  Requests  ############################\n\n# User agent to send with each request.\nuser_agent = \"curl/7.83. 1\"\n\n# Website timeout from connect to response finished.\ntimeout = 20\n\n# Minimum wait time in seconds between retries of failed requests.\nretry_wait_time = 2\n\n# Comma-separated list of accepted status codes for valid links.\naccept = [200, 429]\n\n# Proceed for server connections considered insecure (invalid TLS).\ninsecure = false\n\n# Only test links with the given schemes (e.g. https).\n# Omit to check links with any scheme.\nscheme = [ \"https\" ]\n\n# When links are available using HTTPS, treat HTTP links as errors.\nrequire_https = true\n\n# Request method\nmethod = \"get\"\n\n# Fallback extensions to apply when a URL does not specify one.\n# This is common in documentation tools that cross-reference files without extensions.\nfallback_extensions = [\"md\", \"html\"]\n\n# Root path to use when checking absolute local links, must be an absolute path\nroot_dir = \"book/website/_build/html/\"\n\n#############################  Exclusions  ##########################\n\n# Skip missing input files (default is to error if they don't exist).\nskip_missing = false\n\n# Check links inside `<code>` and `<pre>` blocks as well as Markdown code\n# blocks.\ninclude_verbatim = false\n\n# Ignore case of paths when matching glob patterns.\nglob_ignore_case = false\n\n# Exclude URLs and mail addresses from checking (supports regex).\n# exclude = [ '.*\\.github.com\\.*' ]\nexclude = [\n  \"turing.ac.uk\",\n  \"doi.org\",\n  \"file://.*/undefined\"\n  ]\n\n# Exclude these filesystem paths from getting checked.\nexclude_path = [\n  \"book/website/_build/html/build/\",\n  ]\n\n# Exclude all private IPs from checking.\n# Equivalent to setting `exclude_private`, `exclude_link_local`, and\n# `exclude_loopback` to true.\nexclude_all_private = false\n\n# Exclude private IP address ranges from checking.\nexclude_private = false\n\n# Exclude link-local IP address range from checking.\nexclude_link_local = false\n\n# Exclude loopback IP address range and localhost from checking.\nexclude_loopback = false\n\n# Include all mail addresses.\ninclude_mail = true\n"
  },
  {
    "path": "netlify.toml",
    "content": "[build]\nbase = \"book/\"\ncommand = \"make ci\"\nenvironment = { PYTHON_VERSION = \"3.13\" }\npublish = \"website/_build/html\"\n\n# Do not build deploy previews for branches from all-contributors bot\nignore = \"git log -1 --pretty=%B | grep all-contributors\"\n\n# Enable other sites to access and cross-reference the-turing-way content dynamically\n[[headers]]\n  for = \"/*\"\n  [headers.values]\n    access-control-allow-origin = \"*\"\n\n# Wildcard redirect for old book url\n[[redirects]]\n  from = \"https://the-turing-way.netlify.app/*\"\n  to = \"https://book.the-turing-way.org/:splat\"\n  status = 301\n  force = true\n\n# Subdomain redirects\n# Wildcard redirect for www.book to book\n[[redirects]]\n  from = \"https://www.book.the-turing-way.org/*\"\n  to = \"https://book.the-turing-way.org/:splat\"\n  status = 301\n  force = true\n\n# Redirects for the start page\n[[redirects]]\n  from = \"https://the-turing-way.org/*\"\n  to = \"https://the-turing-way.start.page/\"\n  status = 302\n  force = true\n\n[[redirects]]\n  from = \"https://www.the-turing-way.org/*\"\n  to = \"https://the-turing-way.start.page/\"\n  status = 302\n  force = true\n\n# Other helper redirects\n[[redirects]]\n  from = \"https://git.the-turing-way.org/*\"\n  to = \"https://github.com/the-turing-way\"\n  status = 302\n  force = true\n\n[[redirects]]\n  from = \"https://news.the-turing-way.org/*\"\n  to = \"https://buttondown.email/turingway/\"\n  status = 302\n  force = true\n\n[[redirects]]\n  from = \"https://slack.the-turing-way.org/*\"\n  to = \"https://join.slack.com/t/theturingway/shared_invite/zt-25ng40psm-rcaEBwhrEzsV4hhR6dz5uA\"\n  status = 302\n  force = true\n\n[[redirects]]\n  from = \"https://calendar.the-turing-way.org/*\"\n  to = \"https://calendar.google.com/calendar/embed?src=theturingway%40gmail.com\"\n  status = 302\n  force = true\n\n[[redirects]]\n  from = \"https://ics.the-turing-way.org/*\"\n  to = \"https://calendar.google.com/calendar/ical/theturingway%40gmail.com/public/basic.ics\"\n  status = 302\n  force = true\n\n# Redirects for old welcome/home/index page urls to current\n[[redirects]]\n  # index.html no longer exists using Jupyter Book 2\n  # Previously the home page redirects pointed to index.html\n  from = \"https://book.the-turing-way.org/index.html\"\n  to = \"https://book.the-turing-way.org/\"\n  # The default HTTP status code is 301, but you can define a different one.\n  status = 301\n  force = true\n\n[[redirects]]\n  from = \"https://the-turing-way.netlify.app/welcome\"\n  to = \"https://book.the-turing-way.org/\"\n  # The default HTTP status code is 301, but you can define a different one.\n  status = 301\n  force = true\n\n[[redirects]]\n  from = \"https://the-turing-way.netlify.app/welcome.html\"\n  to = \"https://book.the-turing-way.org/\"\n  # The default HTTP status code is 301, but you can define a different one.\n  status = 301\n  force = true\n\n[[redirects]]\n  from = \"https://the-turing-way.netlify.app/introduction/*\"\n  to = \"https://book.the-turing-way.org/\"\n  # The default HTTP status code is 301, but you can define a different one.\n  status = 301\n  force = true\n\n# Redirects for old chapter top level pages\n[[redirects]]\n  from = \"/reproducible-research\"\n  to = \"/reproducible-research/reproducible-research\"\n  # The default HTTP status code is 301, but you can define a different one.\n  status = 301\n  force = true\n\n[[redirects]]\n  from = \"/communication\"\n  to = \"/communication/communication\"\n  # The default HTTP status code is 301, but you can define a different one.\n  status = 301\n  force = true\n\n[[redirects]]\n  from = \"/collaboration\"\n  to = \"/collaboration/collaboration\"\n  # The default HTTP status code is 301, but you can define a different one.\n  status = 301\n  force = true\n\n[[redirects]]\n  from = \"/project-design\"\n  to = \"/project-design/project-design\"\n  # The default HTTP status code is 301, but you can define a different one.\n  status = 301\n  force = true\n\n[[redirects]]\n  from = \"/ethical-research\"\n  to = \"/ethical-research/ethical-research\"\n  # The default HTTP status code is 301, but you can define a different one.\n  status = 301\n  force = true\n\n[[redirects]]\n  from = \"/community-handbook\"\n  to = \"/community-handbook/community-handbook\"\n  # The default HTTP status code is 301, but you can define a different one.\n  status = 301\n  force = true\n\n# Redirects for moved chapters\n[[redirects]]\n  from = \"/version_control/*\"\n  to = \"/reproducible-research/vcs/:splat\"\n  # The default HTTP status code is 301, but you can define a different one.\n  status = 301\n  force = true\n\n[[redirects]]\n  from = \"/binderhub/*\"\n  to = \"/reproducible-research/binderhub/:splat\"\n  # The default HTTP status code is 301, but you can define a different one.\n  status = 301\n  force = true\n"
  },
  {
    "path": "release-workflow.md",
    "content": "# Workflow for Releasing Different Versions\n\nWe release the latest versions of the main repository including the content from _The Turing Way_ book on Zenodo (DOI for all versions: [10.5281/zenodo.3233853](https://doi.org/10.5281/zenodo.3233853)).\nIn this document, we describe the process for making a release on Zenodo through GitHub.\n\nWe don't describe how to connect a GitHub account/repository to a Zenodo account.\nTo learn more about that, please read the details in [the GitHub documentation](https://docs.github.com/en/repositories/archiving-a-github-repository/referencing-and-citing-content).\n\n## Updating release information\n\n- Update [`CITATION.cff`](https://github.com/the-turing-way/the-turing-way/blob/main/CITATION.cff) file:\n  - Update `version: 1.0.1` (currently in line 6), `date-released: \"2021-11-10\"` (currently in line 12)\n- Validate the file locally on your computer using `cffconvert` (here we assume that the user knows how to use their terminal)\n  - Step 1: Please install cffconvert using the following command: `python3 -m pip install --user cffconvert` (details here: https://pypi.org/project/cffconvert/)\n  - Step 2: Run the following command: `cffconvert --validate`\n  - Step 3: Once validated, create `.zenodo.json` file using the following command: `cffconvert --format zenodo > .zenodo.json`\n  - Step 4: Create the pull request with the change -> review and merge it in the repository\n  \nPlease note that we have currently left out individual names from the CITATION file, however, this is open for discussion if we will add all the authors manually or have some other automated ways to do that.\n\n## Drafting release on GitHub\n\n- Click on [the release option](https://github.com/the-turing-way/the-turing-way/releases) on GitHub main repository\n- Draft a [new release](https://github.com/the-turing-way/the-turing-way/releases/new)\n- Click 'Choose a tag', provide a new version name (such as v1.0.1, v1.02, ...) and click the 'create a new tag on release' option\n- A note on when we consider a version to be [major, minor or patch](https://semver.org/):\n  - patch: Small additions to chapters are patch such as bug fixing, editing or minor contributions between the Book Dashes\n  - minor: Significant number of the new content & new chapters such as during a Book Dash\n  - major: Major changes such as major re-arranging of chapters into different guides or addition of a new guide\n- Create a release title such as 'v1.0.1 The Turing Way: 2021 release'\n- Add details similar to what we have provided below that summarises what changes are in this version and provide a short sentence under the release log:\n\n```\nThe Turing Way is an open source community-driven guide to reproducible, ethical, inclusive and collaborative data science. The Turing Way book is collaboratively developed by its diverse community of researchers, learners, educators, and other stakeholders.\n\nThe Turing Way project is openly developed and any questions, comments and recommendations are welcome at our GitHub repository: https://github.com/the-turing-way/the-turing-way. In 2020, the project underwent a major overhaul categorising chapters into 5 guides on reproducible research, project design, collaboration, communication and ethical research. Additionally, we added a community handbook to document all the practices designed and implemented towards the development of the project and community.\n\nThis release in 2021 includes additional chapters developed by our contributors across five guides and the community handbook. In addition, all the project documents from the project are provided as they appear on The Turing Way GitHub repository including the Zenodo metadata: https://github.com/the-turing-way/the-turing-way.\n\nRelease log:\n\n    v1.0.1: Zenodo metadata information and additional chapters.\n    v1.0.0: Five guide expansion of The Turing Way with a community handbook.\n    v0.0.4: Continuous integration chapter merged to master.\n    v0.0.3: Reproducible environments chapter merged to master.\n    v0.0.2: Version control chapter merged to master.\n    v0.0.1: Reproducibility chapter merged to master.\n\nFull Changelog: v1.0.0...v1.0.1 (Previous release: v0.0.3...v1.0.0)\n```\n- Save draft\n\n## Ready to Release\n\n- When you are ready (and have double-checked the details), click 'Publish release'\n- After a few seconds, you can see a new version appear at [https://doi.org/10.5281/zenodo.3233853](https://doi.org/10.5281/zenodo.3233853)\n\nThis is the workflow we have recently used and would work towards automating this process.\nMeanwhile, to suggest any improvements, please contact _The Turing Way_ team by emailing [theturingway@gmail.com](mailto:theturingway@gmail.com).\n"
  },
  {
    "path": "tests/lorem-ipsums.py",
    "content": "import os\nimport re\nimport argparse\nfrom pull_files import filter_files\n\nHERE = os.getcwd()\nABSOLUTE_HERE = os.path.dirname(HERE)\nBAD_PHRASE = \"lorem ipsum\"\n\n\ndef parse_args():\n    \"\"\"Construct the command line interface for the script\"\"\"\n    DESCRIPTION = \"Script to check for occurrences of 'Lorem Ipsum' in Markdown files\"\n    parser = argparse.ArgumentParser(description=DESCRIPTION)\n\n    parser.add_argument(\n        \"--pull-request\",\n        type=str,\n        default=None,\n        help=\"If the script is be run on files changed by a pull request, parse the PR number\",\n    )\n    parser.add_argument(\n        \"--github-token\",\n        type=str,\n        default=None,\n        help=\"A Personal Access Token to authenticate calls to the GitHub API\",\n    )\n\n    return parser.parse_args()\n\n\ndef remove_comments(text_string):\n    \"\"\"Function to omit  html comment identifiers in a text string using\n\tregular expression matches\n\n\tArguments:\n\t\ttext_string {string} -- The text to be matched\n\n\tReturns:\n\t\t{string} -- The input text string with html comments removed\n\t\"\"\"\n    p = re.sub(\"(?s)<!--(.*?)-->\", \"\", text_string)\n    return p\n\n\ndef check_changed_files(pr_num, github_token=None, bad_phrase=BAD_PHRASE):\n    \"\"\"Check the files in a Pull Request for an undesirable phrase\n\n    Arguments:\n        pr_num {str} -- Number of the Pull Request with modified files\n\n    Keyword Arguments:\n        bad_phrase {str} -- The undesirable phrase to check for \n            (default: {BAD_PHRASE})\n        github_token {str} -- A Personal Access Token to authenticate calls to\n            the GitHub API (default: None)\n\n    Returns:\n        {list} -- List of filenames that contain the undesirable phrase\n    \"\"\"\n    filenames = filter_files(pr_num, github_token=github_token)\n    failed = []\n\n    for filename in filenames:\n        try:\n            with open(\n            os.path.join(ABSOLUTE_HERE, filename), encoding=\"utf8\", errors=\"ignore\"\n            ) as f:\n                text = f.read()\n                text = remove_comments(text)\n                if bad_phrase in text.lower():\n                    failed.append(filename)\n        except FileNotFoundError:\n            pass\n\n    return failed\n\n\ndef check_all_files(\n    bad_phrase=BAD_PHRASE,\n    directory_to_check=os.path.join(ABSOLUTE_HERE, \"book\", \"website\"),\n):\n    \"\"\"Check all files in a given directory for an undesirable phrase\n\n    Keyword Arguments:\n        bad_phrase {str} -- Phrase to check and warn for (default: {\"lorem ipsum\"})\n        directory_to_check {str} -- Parent directory of files to be checked (default: {os.path.join(ABSOLUTE_HERE, \"book\", \"website\")})\n\n    Returns:\n        {list} -- List of filenames that contain the undesirable phrase\n    \"\"\"\n    failed = []\n\n    for root_dir, _, filenames in os.walk(directory_to_check):\n        for filename in filenames:\n            f = open(os.path.join(root_dir, filename), encoding=\"utf8\", errors=\"ignore\")\n            text = f.read()\n            text = remove_comments(text)\n            if bad_phrase in text.lower():\n                failed.append(filename.name)\n\n    return failed\n\n\ndef main():\n    \"\"\"Main function\"\"\"\n    args = parse_args()\n\n    if args.pull_request is not None:\n        failed = check_changed_files(args.pull_request, github_token=args.github_token)\n    else:\n        failed = check_all_files()\n\n    if len(failed) != 0:\n        error_message = '\"Lorem ipsum\"s found in the following files:\\n' + \"\\n\".join(\n            failed\n        )\n        raise Exception(error_message)\n\n\nif __name__ == \"__main__\":\n    main()\n"
  },
  {
    "path": "tests/no-bad-latin.py",
    "content": "import os\nimport re\nimport argparse\nfrom pull_files import filter_files\n\nHERE = os.getcwd()\nABSOLUTE_HERE = os.path.dirname(HERE)\nIGNORE_LIST = [\"config.yml\", \"style.md\", \"all-contributors.md\", \"references.bib\"]\n\n\ndef parse_args():\n    \"\"\"Construct command line interface for parsing Pull Request number\"\"\"\n    DESCRIPTION = \"Script to check for latin phrases in Markdown files\"\n    parser = argparse.ArgumentParser(description=DESCRIPTION)\n\n    parser.add_argument(\n        \"--pull-request\",\n        type=str,\n        default=None,\n        help=\"If the script is being run on a Pull Request, parse the PR number\",\n    )\n\n    return parser.parse_args()\n\n\ndef remove_comments(text_string):\n    \"\"\"\n    Function to omit  html comment identifiers in a text string using\n    regular expression matches.\n\n    Arguments:\n        text_string {string} -- The text to be matched\n\n    Returns:\n        {string} -- The input text string with html comments removed\n    \"\"\"\n    p = re.sub(\"(?s)<!--(.*?)-->\", \"\", text_string)\n    return p\n\n\ndef get_lines(text_string, sub_string):\n    \"\"\"\n    Get individual lines in a text file.\n\n    Arguments:\n        text_string {string} -- The text string to test\n        sub_string {string} -- The conditional string to perform splitting on\n\n    Returns:\n        {list} -- A list of split strings\n    \"\"\"\n    lines = [line for line in text_string.split(\"\\n\") if sub_string in line]\n    return lines\n\n\ndef construct_error_message(files_dict):\n    \"\"\"\n    Function to construct an error message pointing out where bad latin\n    phrases appear in lines of text.\n\n    Arguments:\n        files_dict {dictionary} -- Dictionary of failing files containing\n                                   bad latin phrases and offending lines\n\n    Returns:\n{string} -- The error message to be raised\n    \"\"\"\n    error_message = [\"Bad latin found in the following files:\\n\"]\n\n    for file in files_dict.keys():\n        error_message.append(\n            f\"{file}:\\t{files_dict[file]['latin_type']}\\tfound in line\\t[{files_dict[file]['line']}]\\n\"\n        )\n\n    return \"\\n\".join(error_message)\n\n\ndef read_and_check_files(files):\n    \"\"\"\n    Function to read in files, remove html comments and check for bad latin phrases.\n\n    Arguments:\n        files {list} -- List of filenames to be checked\n\n    Returns:\n        {dict} -- Dictionary: Top level keys are absolute filepaths to files\n                  that failed the check. Each of these has two keys:\n                  'latin_type' containing the unwanted latin phrase, and 'line'\n                  containing the offending line.\n    \"\"\"\n    failing_files = {}\n    bad_latin = [\"i.e.\", \"e.g.\", \"e.t.c.\", \" etc\", \" ie \", \"et cetera\"]\n\n    for filename in files:\n        if os.path.basename(filename) in IGNORE_LIST:\n            pass\n        else:\n            try:\n                with open(\n                os.path.join(ABSOLUTE_HERE, filename), encoding=\"utf8\",\n                errors=\"ignore\") as f:\n                    text = f.read()\n                    text = remove_comments(text)\n\n                    for latin_type in bad_latin:\n                        if latin_type in text.lower():\n                            lines = get_lines(text.lower(), latin_type)\n                            for line in lines:\n                                failing_files[os.path.abspath(filename)] = {\n                                    \"latin_type\": latin_type,\n                                    \"line\": line,\n                                }\n            except FileNotFoundError:\n                pass\n\n    return failing_files\n\n\ndef get_all_files(directory=os.path.join(ABSOLUTE_HERE, \"book\", \"website\")):\n    \"\"\"\n    Get a list of files to be checked. Ignores image files.\n\n    Keyword Arguments:\n        directory {string} -- The directory containing the files to check\n\n    Returns:\n        {list} -- List of files to check\n    \"\"\"\n    files = []\n    filetypes_to_ignore = (\".png\", \".jpg\")\n\n    for rootdir, _, filenames in os.walk(directory):\n        for filename in filenames:\n            if not filename.endswith(filetypes_to_ignore):\n                files.append(os.path.join(rootdir, filename))\n\n    return files\n\n\ndef main():\n    \"\"\"Main function\"\"\"\n    args = parse_args()\n\n    if args.pull_request is not None:\n        files = filter_files(args.pull_request, ignore_suffix=('.jpg', '.png'))\n    else:\n        files = get_all_files()\n\n    failing_files = read_and_check_files(files)\n\n    if bool(failing_files):\n        error_message = construct_error_message(failing_files)\n        raise Exception(error_message)\n\n\nif __name__ == \"__main__\":\n    main()\n"
  },
  {
    "path": "tests/pull_files.py",
    "content": "\"\"\"\nScript to pull changed files in a Pull Request using a GET request to the\nGitHub API.\n\"\"\"\nimport requests\nimport argparse\n\n\ndef parse_args():\n    \"\"\"Construct the command line interface for the script\"\"\"\n    DESCRIPTION = \"Script to check for occurrences of 'Lorem Ipsum' in Markdown files\"\n    parser = argparse.ArgumentParser(description=DESCRIPTION)\n\n    parser.add_argument(\n        \"--pull-request\",\n        type=str,\n        default=None,\n        help=\"If the script is be run on files changed by a pull request, parse the PR number\",\n    )\n    parser.add_argument(\n        \"--github-token\",\n        type=str,\n        default=None,\n        help=\"A Personal Access Token to authenticate calls to the GitHub API\",\n    )\n\n    return parser.parse_args()\n\n\ndef get_files_from_pr(pr_num, github_token=None):\n    \"\"\"Return a list of changed files from a GitHub Pull Request\n\n    Arguments:\n        pr_num {str} -- Pull Request number to get modified files from\n\n    Keyword Arguments:\n        github_token {str} -- A Personal Access Token to authenticate calls to\n            the GitHub API (default: None)\n\n    Returns:\n        {list} -- List of modified filenames\n    \"\"\"\n    files = []\n    headers = {\"Accept\": \"application/vnd.github.v3+json\"}\n    pr_url = f\"https://api.github.com/repos/the-turing-way/the-turing-way/pulls/{pr_num}/files\"\n\n    if github_token is not None:\n        headers[\"Authorization\"] = f\"token {github_token}\"\n\n    resp = requests.get(pr_url, headers=headers)\n\n    # Raising for status to avoid ending up with red-herring tracebacks later\n    resp.raise_for_status()\n\n    for item in resp.json():\n        files.append(item[\"filename\"])\n\n    return files\n\n\ndef filter_files(pr_num, github_token=None, start_phrase=\"book/website\", ignore_suffix=None):\n    \"\"\"Filter modified files from a Pull Request by a start phrase\n\n    Arguments:\n        pr_num {str} -- Number of the Pull Request to get modified files from\n\n    Keyword Arguments:\n        github_token {str} -- A Personal Access Token to authenticate calls to\n            the GitHub API (default: None)\n        start_phrase {str} -- Start phrase to filter changed files by\n                              (default: {\"book/website\"})\n\n        ignore_suffix {str} -- File suffix or tuple of suffixes to ignore.\n\n\n    Returns:\n        {list} -- List of filenames that begin with the desired start phrase\n    \"\"\"\n    files = get_files_from_pr(pr_num, github_token=github_token)\n    filtered_files = []\n\n    if ignore_suffix is None:\n        ignore_suffix = ()\n\n    for filename in files:\n        if filename.startswith(start_phrase) and not filename.endswith(ignore_suffix):\n            filtered_files.append(filename)\n\n    return filtered_files\n\n\nif __name__ == \"__main__\":\n    args = parse_args()\n    changed_files = filter_files(args.pull_request, args.github_token)\n    print(changed_files)\n"
  },
  {
    "path": "tests/release_workflow.py",
    "content": "\"\"\"\nScript to update citation.cff file and validate it then draft a release note.\n\"\"\"\nfrom datetime import datetime\n\nfrom ruamel.yaml import YAML\n\n# Configure the YAML parser\nyaml = YAML()\nyaml.indent(mapping=2, sequence=4, offset=2)\nyaml.allow_duplicate_keys = True\nyaml.explicit_start = False\nyaml.preserve_quotes = True\n\n\ndef update_citation_file(citation_file_path):\n    with open(citation_file_path) as stream:\n        file_content = yaml.load(stream)\n\n    major, minor, tiny = file_content[\"version\"].split(\".\")\n    major, minor, tiny = int(major), int(minor), int(tiny)\n\n    # Maybe we want to provide an input to determine what the release version\n    # should be? Here we are restricting the patch and minor versions to be less\n    # than or equal to 10, but there's nothing in semver practices that enforces this.\n    tiny += 1\n    if (tiny > 10) and (minor < 10):\n        tiny = 0\n        minor += 1\n    elif (tiny > 10) and (minor > 10):\n        minor = 0\n        major += 1\n\n    file_content[\"version\"] = f\"{major}.{minor}.{tiny}\"\n\n    file_content[\"date-released\"] = datetime.today().strftime(\"%Y-%m-%d\")\n\n    with open(citation_file_path, \"w\") as fp:\n        yaml.dump(file_content, fp)\n\n\nif __name__ == \"__main__\":\n    citation_file_path = \"../CITATION.cff\"\n    update_citation_file(citation_file_path)\n"
  },
  {
    "path": "tests/requirements.txt",
    "content": "jsonschema\nrequests\nruamel.yaml\n"
  },
  {
    "path": "tests/test-file-size.sh",
    "content": "#! /bin/bash\n# Add file paths to any files test should ignore between the two ENDOFLIST placeholders.\n# Specify file paths relative to the root of the repository, one file path per line.\n# To test locally, ensure script is run from the root repository.\nread -r -d '' IGNORE_LIST <<'ENDOFLIST'\n./conferences/presentations/MRCBSU_20190320/Whitaker_MRCBSU_TheTuringWay_March2019.pdf\nENDOFLIST\n\necho \"Performing file size checks...\"\necho\necho \"Ignoring known large files:\"\necho \"$IGNORE_LIST\"\necho\nFIND_IGNORES=$(printf \"! -path %s \" \"${IGNORE_LIST}\")\nBIG_FILES=$(find .  -size +5M  -name \"${FIND_IGNORES}\" ! -path \"./.git/*\" -print)\nif [ -n \"$BIG_FILES\" ]; then\n    echo \"Error, unexpected large (data?) files found:\" 1>&2\n    echo \"$BIG_FILES\" 1>&2\n    exit 1\nelse\n    echo \"No large files found.\"\nfi\n"
  },
  {
    "path": "tests/validate-all-contributorsrc.py",
    "content": "import argparse\nimport json\nimport sys\nfrom pathlib import Path\nfrom typing import Any\n\nimport requests\nfrom jsonschema.validators import Draft202012Validator\n\n\ndef get_schema() -> dict[Any, Any]:\n    # Get all-contributorsrc schema from Schema Store\n    schema = requests.get(\"https://www.schemastore.org/all-contributors.json\").json()\n\n    # Add _comment item to the schema, as we have added a comment explaining the file\n    schema[\"properties\"][\"_comment\"] = {\n        'title': \"Comment\",\n        'type': \"string\",\n    }\n    # Undocumented field added by the bot\n    schema[\"properties\"][\"commitType\"] = {\n        'title': \"Commit type (undocumented)\",\n        'type': \"string\",\n    }\n\n    return schema\n\n\ndef main() -> None:\n    parser = argparse.ArgumentParser(\n        description=\"Validate all-contributorsrc file.\"\n    )\n\n    # Optionally allow the path to the all-contributors file to be specified upon execution\n    parser.add_argument(\n        \"file\",\n        type=Path,\n        nargs=\"?\",\n        default=Path(Path(__file__).parent.absolute() / \"../.all-contributorsrc\").resolve(),\n        help=\"Path of the JSON file containing the contributor metadata.\",\n    )\n\n    args = parser.parse_args()\n    if not args.file.is_file():\n        msg = f\"Could not find 'all-contributorsrc' file at path {args.file}.\"\n        raise FileExistsError(msg)\n\n    # Create validator\n    schema = get_schema()\n    v = Draft202012Validator(schema)\n\n    # Parse the all-contributorsrc file\n    with open(args.file) as f:\n        all_contributorsrc = json.load(f)\n\n    # Collect validation errors\n    errors = list(v.iter_errors(all_contributorsrc))\n\n    if errors:\n        print(f\"{len(errors)} validation errors found in {args.file}.\\n\")\n\n        # List errors\n        for error in errors:\n            print(error.message)\n            print(f\"At JSON path {error.json_path}\\n\")\n\n        sys.exit(1)\n\n\nif __name__ == \"__main__\":\n    main()\n"
  },
  {
    "path": "tests/validate-dependabot.py",
    "content": "import argparse\nimport json\nimport sys\nfrom pathlib import Path\nfrom typing import Any\n\nimport requests\nfrom jsonschema.validators import Draft202012Validator\nfrom ruamel.yaml import YAML\n\ndef main() -> None:\n    parser = argparse.ArgumentParser(\n        description=\"Validate Dependabot configuration.\"\n    )\n\n    # Optionally allow the path to the all-contributors file to be specified upon execution\n    parser.add_argument(\n        \"file\",\n        type=Path,\n        nargs=\"?\",\n        default=Path(Path(__file__).parent.absolute() / \"../.github/dependabot.yaml\").resolve(),\n        help=\"Path to the Dependabot configuration\",\n    )\n\n    args = parser.parse_args()\n    if not args.file.is_file():\n        msg = f\"Could not find file at path {args.file}.\"\n        raise FileExistsError(msg)\n\n    # Create validator\n    schema = requests.get(\"https://www.schemastore.org/dependabot-2.0.json\").json()\n    v = Draft202012Validator(schema)\n\n    # Parse the Dependabot config\n    yaml = YAML()\n    with open(args.file) as f:\n        all_contributorsrc = yaml.load(f)\n\n    # Collect validation errors\n    errors = list(v.iter_errors(all_contributorsrc))\n\n    if errors:\n        print(f\"{len(errors)} validation errors found in {args.file}.\\n\")\n\n        # List errors\n        for error in errors:\n            print(error.message)\n            print(f\"At JSON path {error.json_path}\\n\")\n\n        sys.exit(1)\n\n\nif __name__ == \"__main__\":\n    main()\n"
  },
  {
    "path": "ways_of_working.md",
    "content": "# Ways of Working\n\nThe \"Ways of Working\" document provides an overview of how members of *The Turing Way* community collaborate across the [three levels of governance](https://book.the-turing-way.org/foreword/governance).\n\nFor information about the members involved in the governance, including the Project Delivery Team, please refer to the documentation on [governance roles](https://github.com/the-turing-way/the-turing-way/blob/main/GOVERNANCE_ROLES.md).\n\nThis document offers high-level information on communication, community structures, and project management processes.\nFor details, please refer to the Foreword, Afterword, and Community Handbook within *The Turing Way* book: [book.the-turing-way.org/](https://book.the-turing-way.org/).\n\n## Communication\n\nBelow we have listed all communication channels used in _The Turing Way_.\nFor details, please refer to the [Communication Platforms](https://book.the-turing-way.org/community-handbook/communication-channels) chapters in the Community Handbook.\n\nYou can reach out to all members listed in our [governance document](https://github.com/the-turing-way/the-turing-way/blob/main/GOVERNANCE.md) by tagging them on GitHub issues or Pull Requests, or directly on [Slack](https://join.slack.com/t/theturingway/shared_invite/zt-2v7euwuo7-BYstHdKuTNd1ce0puDtBxA).\n\nYou can reach the _The Turing Way_ Project Delivery Team by emailing [turingway@turing.ac.uk](mailto:turingway@turing.ac.uk).\n\nPlease join the fortnightly [Collaboration Cafes](https://book.the-turing-way.org/community-handbook/coworking/coworking-collabcafe.html), which are great places to discuss ideas for new contributions and to get started with making them.\n\nTalks, presentations and recordings from different events are posted on our [YouTube channel](https://www.youtube.com/channel/UCPDxZv5BMzAw0mPobCbMNuA) regularly.\n\n### Community Channels\n\n- Email:\n    - Institutional Email: turingway@turing.ac.uk\n    - Gmail: theturingway@gmail.com\n- GitHub Repositories:\n    - [Organisation](https://github.com/the-turing-way)\n    - [Book](https://github.com/the-turing-way/the-turing-way)\n- Newsletter\n    -  [Buttondown](https://buttondown.com/turingway/)\n- Discussions\n    - [GitHub Issues](https://github.com/the-turing-way/the-turing-way/issues)\n    - [Slack Workspace](https://join.slack.com/t/theturingway/shared_invite/zt-2vc8l4i2q-kTzSI42LthW~im94Yqm68g)\n        - [Channel details](https://book.the-turing-way.org/community-handbook/communication-channels/slack-welcome-guide)\n- Social Media\n    - [LinkedIn](https://www.linkedin.com/company/the-turing-way)\n    - [Mastodon/Fosstodon](https://fosstodon.org/@turingway)\n    - [Bluesky](https://bsky.app/profile/turingway.bsky.social)\n    - [Youtube](https://www.youtube.com/theturingway)\n    \n### Regular Community Events\n\nHosted all throughout the year, our recurring community calls are important and engaging spaces where you can participate in _The Turing Way_!\n\nSome require signing up (📝) and some don't (✅).\nAll members are welcome to join these calls! ✨\n\n- ✅ **Collaboration Café**: These are online coworking spaces for everyone, hosted fortnightly from 15:00 to 17:00 UK time. Here you can meet others from the community, do some focused co-writing, or catch up with the Working Groups ([Collaboration Café Chapter](https://book.the-turing-way.org/community-handbook/coworking/coworking-collabcafe)).\n- 📝 **Community forums**: These calls are hosted every two months by the project delivery team to share governance-related updates with the community.\n- 📝 **Onboarding calls**: These calls are hosted every two months by the community management WG to onboard new members of the community in the project ([Onboarding and Offboarding Chapter](https://book.the-turing-way.org/community-handbook/onboarding-offboarding)).\n- 📝 **Fireside Chats**: _The Turing Way_ members collaborate with different communities to co-design and co-host Fireside Chat events that are informal yet structured discussions on topics of shared interests across research/data science communities ([Fireside Chat Chapter](https://book.the-turing-way.org/community-handbook/fireside-chat)).\n\n### Working Groups and Meetings\n\n- ✅ **Translation and Localisation Meetings**: Every second Wednesday at 14:30 UK time, members of the Translation and Localisation Working Groups share this coworking space to carry out translation work across several languages, and support each other ([Translation Chapter](https://book.the-turing-way.org/community-handbook/translation)).\n- ✅ **Infrastructure Monthly Meetings**: Every second Tuesday of the month, at 16:00 UK time, members of the Infrastructure Working Groups work together on infrastructure-related maintenance and development efforts ([Infrastructure Chapter](https://book.the-turing-way.org/community-handbook/infrastructure)).\n- ✅ **Accessibility Monthly Meeting**s: Every second Monday of the month, at 17:00 UK time, members of the Accessibility Working Group work together on access-related chapters and guidance for the community ([Accessibility Chapter](https://book.the-turing-way.org/community-handbook/accessibility)).\n\n### Group-Specific Events and Meetings \n\n- **Book Dash**: These bi-yearly online or hybrid events are hosted by the Book Dash Working Group. These are less intense versions of Book Sprint, inviting members through an application-based selection process to work on specific areas of the book and/or community initiatives ([Book Dash Chapter](https://book.the-turing-way.org/community-handbook/bookdash)).\n- **Coworking Calls**: Every Monday, from 11:00 to 12:00 UK time, the project delivery team and members from across different Working Groups use these coworking calls to catch up on their task lists ([Coworking Call Chapter](https://book.the-turing-way.org/community-handbook/coworking/coworking-weekly)).\n- **Steering Committee Meetings**: These meetings will be organised on a monthly basis for the members working together at the Constitutional Level. Dates and times will be decided with the members of the Steering Committee.\n\n## Commitments\n\nAll members, especially at the maintenance and constitution levels, commit to:\n- making the implicit explicit by documenting their work\n- abiding by the Code of Conduct in all community platforms and spaces where they represent _The Turing Way_\n- following the contribution guidelines and keeping them up to date\n- recording any new updates, exceptions or useful knowledge in project management and core documents needed to facilitate collaboration\n- dedicating their time and expertise to fixing open issues either directly via GitHub or providing mentorship and support to community members and project contributors\n- feedback on issues in open source software used throughout _The Turing Way_ by opening an issue _The Turing Way_ GitHub repo or other open source projects where this issue can be fixed\n- Document and share any conversation from closed spaces (such as email, Slack, or 1:1 meeting) in a GitHub issue that could be useful for the community or community members in enabling their work in _The Turing Way_.\n\n## GitHub management\n\nAll members help triage open issues, review Pull Requests or address any questions raised on GitHub asynchronously.\nAs most members do not work full time on _The Turing Way_, it might take some time until your query or contribution is addressed - especially if expert knowledge is needed. Don't be afraid to nudge if they've not replied after a few days! :sparkling_heart:\n\n### Issues & Pull Requests\n\nAll members, especially at the maintenance and constitution levels, will:\n- monitor open issues and Pull Requests on the project's GitHub repository to identify if feedback, comments or connections can help address any concern or build on any suggested ideas/features.\n- whenever possible, post about the issues and Pull Requests in public forums (newsletter, Slack, Twitter) to facilitate participation from new members in the community.\n- review or assign a reviewer to open Pull Requests for review. This should be taken as an opportunity to connect contributors with specific interests, availability or technical skills that could be useful for the ongoing work.\n- connect issues and Pull Requests where possible (for example, by mentioning 'Fixes #[issue number]' in the Pull Request description). By adding \"closes #issue\" or [something similar](https://help.github.com/articles/closing-issues-using-keywords/) in a comment on a pull request, merging the pull request will close the issue automatically.\n- once completed, approve Pull Requests (for the contributors to merge them) and/or close issues immediately (if not linked to specific Pull Request) with a comment describing how it was addressed.\n- when reviewing a pull request or commenting on issues, be specific, describe your ideas clearly, comment to request changes or make a pull request to the file that should be merged (please do not use the \"request changes\" option when reviewing Pull Requests).\n- use your interactions on GitHub or other community spaces to provide support, mentorship and acknowledgement to our community of contributors.\n\n## Authorship and Contributorship in _The Turing Way_\n\nAnyone who contributes to the book is considered an author of _The Turing Way_.\n\nOur Community Handbook provides detailed processes and guidelines for \n[Acknowledging Contributors](https://book.the-turing-way.org/community-handbook/acknowledgement). \nThis section offers an overview and highlights the main points to ensure you have an initial understanding.\n\n**The first author is always `The Turing Way Community`.**\n\nYou don't have to have written a chapter to be listed as an author.\nSubstantial contributions to the running of the project, for example, adding in (or improving) documentation on *how* someone can contribute to *The Turing Way*, hosted an event, given a talk or onboarded new members to *The Turing Way*, all count as core contributions warranting authorship.\n\nContributing small amounts over a long time, and thinking about the strategy for the project also count for authorship.\n\n*The Turing Way* repository is archived on [Zenodo](https://zenodo.org/) at doi: [10.5281/zenodo.3233853](https://doi.org/10.5281/zenodo.3233853).\n\nEach release has its own **doi**, and there is a **concept doi** (listed above) which always renders to the latest release.\n\nFor example `v0.0.1` is available at [10.5281/zenodo.3233854](https://doi.org/10.5281/zenodo.3233854), `v0.0.2` is available at [10.5281/zenodo.3233892](https://doi.org/10.5281/zenodo.3233892) and so on.\n\nWe release a new version every 6 months or if substantial updates to existing chapters are made, such as after Book Dash events.\n\nAuthorship is cumulative.\nIf you have been added as an author on one release, you will stay as an author on all future releases.\n\n***Thank you for contributing to the Turing Way!*** We value your thoughtful participation and contributions to _The Turing Way_! \n\n## Resources\n\n- [Community Handbook](https://book.the-turing-way.org/community-handbook/community-handbook)\n- [Foreword](https://book.the-turing-way.org/foreword/foreword)\n- [Afterword](https://book.the-turing-way.org/afterword/afterword)\n- [Governance Overview](https://github.com/the-turing-way/the-turing-way/blob/main/GOVERNANCE.md)\n- [Collaborators](https://book.the-turing-way.org/afterword/collaborators)\n- [Sub-projects and Working Groups](https://book.the-turing-way.org/afterword/subprojects)\n- [Glossary](https://book.the-turing-way.org/afterword/glossary)\n"
  }
]