class: center, middle, inverse, title-slide .title[ # Open Science, Open Methods, and Open Source communities ] .subtitle[ ## Serrapilheira/ICTP-SAIFR Training Program in Quantitative Biology and Ecology ] .author[ ### Andrea Sánchez-Tapia ] .date[ ### 22 Jun 2022 ] --- ## In this Introduction to Scientific Programming module we: <svg viewBox="0 0 512 512" style="height:1em;fill:currentColor;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z"></path></svg> kept the integrity of the raw data and made a distinction between raw data and processed data -- <svg viewBox="0 0 512 512" style="height:1em;fill:currentColor;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z"></path></svg> executed data analysis using scripts, allowing us to have a record of data cleaning and processing, and a transparent methodology -- <svg viewBox="0 0 512 512" style="height:1em;fill:currentColor;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z"></path></svg> used version control for better collaboration and error tracking -- <svg viewBox="0 0 512 512" style="height:1em;fill:currentColor;position:relative;display:inline-block;top:.1em;" xmlns="http://www.w3.org/2000/svg"> <path d="M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z"></path></svg> used reproducible tools for writing --- class: center, middle # what is open science (and why we talk about it in a R for biology/ecology course)? --- ## as scientists, we + Design experiments + Take data in the field and the lab + Analyze them + Discuss, write, submit, publish manuscripts + Write grants and apply for funding, we manage these resources + Review manuscripts + Mentor, train other scientists, have collaborations + Extension and scientific communication activities --- class: middle, center ## The way we work can help us do attend all these demands or be an obstacle: __good practices__ ## Open Science can be a framework to think about these good practices --- ## what is Open Science A set of practices that aims to make all the research products available publicly __from the original data and the methods used, to their publication__ Open data and content would be __used__, __modified__, __shared__ openly/freely by any\* person, for any* purpose <!--this "any" part could be problematic--> --- ## why open science? + __transparency__, __quality__, __reproducibility__ -- + more robust results, available for review, correction from your peers and any citizen (potentially) -- + __collaboration__, reanalysis, replication of results -- + return to society of the investment in scientific activities - be ethical --- ## six open science principles 1. Open __data__ -- 1. Open source __tools__ - not only free but also with open code -- 1. Open __methods__, sharing the details, tools to guarantee the transparency and reproducibility -- 1. Open __access__ publication -- 1. Open __peer review__ -- 1. Open __education fonts__ --- class: middle, center ## __Open data__ ## Scientific data acquisition, management, and maintenance --- ## what constitutes scientific data? -- + _raw_ data (measurements, recordings, images, files) -- + __experimental protocols__ (plans, procedures, instrument calibration) -- + data __cleaning__, __processing__, and __analysis__ -- + _processed_ data --- ## data and metadata recording + in the field, the lab, the herbarium... -- + lab/field notebooks have to be a __permanent__, __well organized__, __understandable__, __complete__, that allows replication by others -> __open lab notebook__ -- + lab notebook should be kept in a safe place -- + backup! __data management plans__ --- ## maintenance and sharing + was the __digitation__ correct? -- + local _backups_, web repositories, institution repositories -- + associated to publications (e.g. Dryad, https://www.datadryad.org/) -- + long-term reference -> `DOI` <!-- Os dados devem poder ser __compartilhados__: para correção, repetição, replicação, reprodução, reanálise dos experimentos e para colaboração em novos trabalhos. --> --- ## who is responsible for data _integrity_? ____Any individual involved in the development and execution of the research and data processing____ + The principal investigator + Advisors + Students + Lab assistants + Field assistants and people who do the measurement on the field. --- ## metadata: data about data The __what__, __where__, __how__, __when__, __who__, and __why__ the data were taken + The __methods__ and the __rationale__ that lead to the data treatment methods <!--detalhes sobre o processamento dos dados brutos --> + __Materials used__ + Locality + Additional observations and notes + Adequate sample label and ID of every data collected --- background-image: url(https://www.go-fair.org/wp-content/themes/go-fair/images/logo.svg) background-position: 80% 80% ## a framework for open data: FAIR criteria + Wilkinson et al 2016 [The FAIR Guiding Principles for scientific data management and stewardship](https://www.nature.com/articles/sdata201618) + https://www.go-fair.org/fair-principles/ + FAIR data: + __F__indable + __A__ccessible + __I__nteroperative + __R__eusable --- ## Findable (F): + F1. (Meta)data are assigned a globally unique and persistent identifier + F2. Data are described with rich metadata (defined by R1 below) + F3. Metadata clearly and explicitly include the identifier of the data they describe + F4. (Meta)data are registered or indexed in a searchable resource+ __global, unique, and persistent identifier__ (DOI, ORCID) --- ## accessible (A): + A1. (Meta)data are retrievable by their identifier using a standardised communications protocol + A1.1 The protocol is open, free, and universally implementable + A1.2 The protocol allows for an authentication and authorisation procedure, where necessary + A2. Metadata are accessible, even when the data are no longer available --- ## interoperable (I) + I1. (Meta)data use a formal, accessible, shared, and broadly applicable language for knowledge representation. + I2. (Meta)data use vocabularies that follow FAIR principles + I3. (Meta)data include qualified references to other (meta)data --- ## reusable (R) + R1. (Meta)data are richly described with a plurality of accurate and relevant attributes + R1.1. (Meta)data are released with a clear and accessible data usage license + R1.2. (Meta)data are associated with detailed provenance + R1.3. (Meta)data meet domain-relevant community standards #### There are __standard protocols__ in Biology and Ecology (DarwinCore, EML - Ecological Metadata Language) --- class: middle, center background-image: url(figs/FAIR-digital-objects.jpg) background-position: 50% 50% background-size: 60% --- background-image: url(https://images.squarespace-cdn.com/content/v1/5d3799de845604000199cd24/1567592828276-IZWQDX1H6DRCD85GRSWJ/CARE+Principles.png?format=1000w) background-position: 90% 10% background-size: 30% ## Openness is not enough https://www.gida-global.org/care + __C__ollective Benefit: Data ecosystems shall be designed and function in ways that enable Indigenous Peoples to derive benefit from the data. + __A__uthority to Control: Indigenous Peoples’ rights and interests in Indigenous data must be recognised and their authority to control such data be empowered. + __R__esponsibility: Those working with Indigenous data have a responsibility to share how those data are used to support Indigenous Peoples’ self-determination and collective benefit. + __E__thics: Indigenous Peoples’ rights and wellbeing should be the primary concern at all stages of the data life cycle and across the data ecosystem. --- class: center, middle ## __Ferramentas abertas *Open source*__ --- ## software _libre_ + gratuito e de código aberto -- + deve poder ser: __usado__, __copiado__, __estudado__, __modificado__, __redistribuído__ -- + __sem restrição__ -- + __sem discriminação de qualquer tipo__ a grupos de pessoas ou campos de ação -- + mantendo a __licença__ original --- ## software _libre_ + `R`, Python + Firefox + Android + Linux: sistema operativo + QGIS para SIG + LibreOffice para processamento de texto, folhas de cálculo, desenhos, apresentações, manuscritos + __Zotero__ para gerenciar a bibliografia + __git__ para controlar as versões de seus projetos + ImageJ e GIMP para processar imagens --- class: middle, center # Dá para subtituir todos os passos de seu fluxo de trabalho por software de código aberto? --- class: center, middle # __Metodologia aberta__ --- ## metodologia aberta + registro, processamento e análise + cada passo de análise deve ser exposto + cada publicação deve conter toda a informação necessária para que + o leitor entenda exatamente o que foi feito (confiança e robusteza) + outros cientistas possam repetir o trabalho pós-publicação + isto inclui __a lista completa de referências__ usadas para realizar a pesquisa. + ligado intimamente ao registro adequado de metadados --- ## replicação e reprodutibilidade [Nature](https://www.nature.com/news/1-500-scientists-lift-the-lid-on-reproducibility-1.19970) perguntou a 1500 cientistas se eles acham que há uma crise de reprodutibilidade .pull-left[ <img src="figs/reproducibility-graphic-online1.jpeg" width="320" /> ] -- .pull-right[ <img src="figs/reproducibility-graphic-online3a.png" width="320" /> ] --- class: middle .pull-left[ <img src="figs/reproducibility-graphic-online4.jpg" width="350" /> ] -- .pull-right[ <img src="figs/reproducibility-graphic-online3b.png" width="350" /> + há más práticas e pressão por publicação de resultados novos e positivos (vieses) + falta transparência nos dados e no código ] --- ## algumas regras básicas + não usar programas para gerar gráficos de uma maneira que modifique os resultados -- + não modificar o método de análise para obter os resultados desejados -- + não omitir dados que não suportam suas conclusões -- + não fabricar dados e reportar dados falsos como reais -- + não modificar deliberadamente os dados -- + não reportar os mesmos dados em publicações diferentes (_"salami science"_) --- .pull-left[ <img src="figs/reproducibility-graphic-online5.jpg" width="350" /> ] -- .pull-right[ <img src="figs/reproducibility-graphic-online6.jpg" width="350" /> + __métodos__ e __desenho experimental__ + __orientação__ e __ensino__ + controle de qualidade de dados e código + melhores incentivos pelo "sistema" ] -- __mas nem todo mundo está tomando decisões a respeito... __ --- ## passos para uma metodologia aberta + priorizar ferramentas baseadas em _scripts_ como `R` ou python -- + usar sistemas de __controle de versões__ como `git` -- + documentar todos os passos da metodologia -- + publicar os protocolos e o código -- + fomentar a revisão da metodologia e do código entre pares --- class: middle, center # resolve todos os problemas? não (mas é um bom primeiro passo) --- ## ferramentas abertas ou metodologias abertas? + ferramenta e metodologia abertas? __ideal__ -- + ferramenta aberta e metodologia "fechada"? _não adianta!_ -- + ferramenta proprietária e metodologia aberta? __pode ser__ -- + ambas fechadas `:'(` -- ### __não adianta usar ferramentas abertas se a metodologia em si não é reproduzível__ ### __dá para criar metodologias reproduzíveis usando software proprietário__ --- class: center, middle # __A publicação em revistas de acesso aberto__ --- background-image: url(https://upload.wikimedia.org/wikipedia/commons/thumb/7/77/Open_Access_logo_PLoS_transparent.svg/142px-Open_Access_logo_PLoS_transparent.svg.png) background-size: 20% background-position: 80% 20% ## revistas de acesso aberto 1. __Diamante__ disponível gratuitamente na internet e sem cobrar dos autores -- 1. __Dourado__ disponível gratuitamente na internet, cobrando uma taxa aos autores -- 1. __Verde__ permite que os autores depositem versões próprias em repositórios. -- 1. __Híbrido__ mistura de manuscritos abertos e não abertos -- #### Atenção com __revistas predatórias__! --- ## novos modos de publicação 1. o manuscrito clássico, escrito em _word_, sem código -- 4. revistas que aceitam a submissão de _pre-prints_ <!--, versões previamente publicadas na internet porém sem revisão por pares --> -- 3. revistas que pedem que os dados estejam acessíveis em algum repositório (Dryad) -- 5. revistas que aceitam -> pedem o código utilizado para as análises -- 6. revistas que recebem __manuscritos reprodutíveis__ -- 7. revistas com revisão (_peer-review_) aberta (__O quinto princípio da ciência aberta!__) --- class: middle, center ### Os cinco primeiros princípios da ciência aberta passam pela necessidade de transparência e responsabilidade nas metodologias. ### O sexto princípio da ciência aberta diz respeito à criação e divulgação de material educativo aberto e disponível para todos independentemente da origem condição social e econômica --- class: center, middle ## Precisamos refletir sobre nosso fluxo de trabalho... e sobre nossa responsabilidade ao fazer ciência --- ### ferramentas e fluxos de trabalho + Como é seu fluxo de trabalho hoje? -- + Ele se beneficiaria de alguma mudança em termos destes princípios? -- + Quem é responsável pela integridade de seus dados? -- + Como seus dados estão sendo registrados? Como e onde estão sendo guardados? -- + Você tem colaborações a partir de seus dados? Poderia compartilhar os dados no estado em que eles estão hoje? -- + Usa formatos abertos? O software é proprietário? -- + Há contextos nos quais você não deva compartilhar os dados? --- ## ferramentas e fluxos de trabalho + Como você analisa os dados? -- + São metodologias bem documentadas? -- + Quando usa metodologias de "apontar e clicar", você documenta todos os passos? -- + Como você garante que a última versão de seus dados e código/metodologia é a correta? -- + Como você escreve sua dissertação/tese e seus manuscritos? -- + Você usa software pago ou proprietário? Usa software "pirata"? --- ## references + Gorgolewski KJ, Poldrack RA (2016) A Practical Guide for Improving Transparency and Reproducibility in Neuroimaging Research. PLoS Biol 14(7): e1002506. https://doi.org/10.1371/journal.pbio.1002506 + Kraker, P., Leony, D., Reinhardt, W., & Beham, G. (2011). The Case for an Open Science in Technology Enhanced Learning. International Journal of Technology Enhanced Learning, 6(3), 643–654 + http://opendefinition.org/od/2.1/en/ + https://nikokriegeskorte.org/2016/02/15/the-four-pillars-of-open-science/ + Open Science Framework https://osf.io/ --- ## references + Blog OpenScience.com https://openscience.com/ + NIH - Instruction in Responsible Conduct of Research https://oir.nih.gov/sourcebook/ethical-conduct/responsible-conduct-research-training/ + Zook, Matthew, et al. “Ten Simple Rules for Responsible Big Data Research”. PLOS Computational Biology, vol. 13, núm. 3, marzo de 2017, p. e1005399. PLoS Journals, doi:10.1371/journal.pcbi.1005399.