<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">

 <title>o2r</title>
 <link href="https://o2r.info/atom.xml" rel="self"/>
 <link href="https://o2r.info/"/>
 <updated>2025-04-23T11:08:38+00:00</updated>
 <id>https://o2r.info</id>
 <author>
   <name>o2r Team</name>
   <email></email>
 </author>

 
 <entry>
   <title>Two new publications and one survey in September 2023</title>
   <link href="https://o2r.info/2023/09/18/two-new-publications-in-september-2023/"/>
   <updated>2023-09-18T16:50:00+00:00</updated>
   <id>https://o2r.info/2023/09/18/two-new-publications-in-september-2023</id>
   <content type="html">&lt;p&gt;We are excited to share the latest conference presentations of past O2R team members! Even though the project now delivered, the dedication of the people who were instrumental in our now-delivered project still contributes to the field.&lt;/p&gt;

&lt;p&gt;On September 6th, Edzer Pebesma presented his work &lt;a href=&quot;https://doi.org/10.25436/E23K5H&quot;&gt;&lt;em&gt;Reproducing Spatial Data Science Publications&lt;/em&gt;&lt;/a&gt; at the &lt;a href=&quot;http://sdss2023.spatial-data-science.net/&quot;&gt;4th Spatial Data Science Symposium&lt;/a&gt;, where he discusses the challenges posed by the always evolving  software, the several dependencies and the publishing industry, reports on experiences from developer communities, and looks at the convergence in the spatial data science software ecosystems.&lt;/p&gt;

&lt;p&gt;On September 13th, I presented the exploratory study that we elaborated with Christian Kray about &lt;a href=&quot;https://drops.dagstuhl.de/opus/volltexte/2023/18901/pdf/LIPIcs-GIScience-2023-6.pdf&quot;&gt;&lt;em&gt;Map Reproducibility in Geoscientific Publications&lt;/em&gt;&lt;/a&gt; at the 12th  International Conference on Geographic Information Science (GIScience 2023), where we suggest an inceptive set of criteria to assess the success of map reproduction and a set of guidelines for improving map reproducibility in geoscientific publications.&lt;/p&gt;

&lt;p&gt;If you want to help us understand better the notion of map reproducibility by sharing your POV, take part in the survey that is already up and running: &lt;a href=&quot;https://t.ly/qquoj&quot;&gt;https://t.ly/qquoj&lt;/a&gt;.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Workshop announcement - Reproducibility of maps</title>
   <link href="https://o2r.info/2023/06/09/workshop-reproducible-maps/"/>
   <updated>2023-06-09T00:00:00+00:00</updated>
   <id>https://o2r.info/2023/06/09/workshop-reproducible-maps</id>
   <content type="html">&lt;p&gt;We are excited to announce a series of interactive workshops about the reproducibility of geographical maps!
We are looking for participants with different backgrounds and application domains who work with maps. At the workshop we will jointly analyse several example maps and discuss questions such as when can a map be considered as reproducible or which factors affect this decision.&lt;/p&gt;

&lt;p&gt;Each workshop will take about two hours and will take place online during the first half of July. Several dates will be offered during that timeframe.&lt;/p&gt;

&lt;p&gt;If you are interested in participating in one of the workshops, please get in touch with eftychia.koukouraki@uni-muenster.de.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>OJS plugin for enabling ERC journal submissions</title>
   <link href="https://o2r.info/2022/08/26/ojs-erc-plugin/"/>
   <updated>2022-08-26T00:00:00+00:00</updated>
   <id>https://o2r.info/2022/08/26/ojs-erc-plugin</id>
   <content type="html">&lt;p&gt;Our self-hosted pilot has new implemented functionalities! Developed by the o2r team, the &lt;em&gt;ojs-erc-plugin&lt;/em&gt; uses the plugin mechanism provided by the &lt;a href=&quot;https://pkp.sfu.ca/ojs/&quot;&gt;Open Journal System (OJS)&lt;/a&gt; to create a completely ERC-based 
publishing workflow including submission, review, and publication. In the OJS submission process, we created the option to upload an ERC workspace via the &lt;a href=&quot;https://o2r.uni-muenster.de/&quot;&gt;o2r service&lt;/a&gt;. After the submission, the assigned reviewer(s) 
can examine three components which are related to the (submitted) ERC: 1) the zipped ERC workspace which was uploaded by the author, 2) the html view of the ERC, and 3) the ERC Galley which shows the ERC in the usual o2r-service view. 
After the acceptance and publication of the submission, the reader of the journal can access all the abovementioned components of the (published) ERC and experience the interactive features that are enabled by ERCs.&lt;/p&gt;

&lt;p&gt;The functionality of the &lt;em&gt;ojs-erc-plugin&lt;/em&gt; is showcased in the following &lt;a href=&quot;https://uni-muenster.sciebo.de/s/6y9Y4jsFUS3WwFA&quot;&gt;video&lt;/a&gt;.&lt;/p&gt;

&lt;iframe src=&quot;https://drive.google.com/file/d/1PEAeEQihK6JPT0MqTovbFWvusX_PBgLq/preview&quot; width=&quot;640&quot; height=&quot;480&quot; allow=&quot;autoplay&quot;&gt;&lt;/iframe&gt;

&lt;p&gt;The &lt;em&gt;ojs-erc-plugin&lt;/em&gt; is an Open Source project and is welcoming contributions and active participation in our &lt;a href=&quot;https://github.com/o2r-project/ojs-erc-plugin&quot;&gt;Github page&lt;/a&gt;!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>o2r Workshop on Reproducible Remote Sensing</title>
   <link href="https://o2r.info/2022/04/08/workshop-remote-sensing/"/>
   <updated>2022-04-08T00:00:00+00:00</updated>
   <id>https://o2r.info/2022/04/08/workshop-remote-sensing</id>
   <content type="html">&lt;p&gt;Just a few days ago, on March 23rd 2022, we had the pleasure of hosting a workshop for “Reproducible Remote Sensing: Challenges and Evolution Possibilities”. It was so exciting to get together again, even in a hybrid format, to discuss such an interesting and interdisciplinary topic! As long as the o2r project has been running, we have approached the matter of reproducibility of scientific results from several perspectives, and now it was the time to frame the complexities of reproducibility in Remote Sensing. With this workshop, we wanted to explore the current and future possibilities of publishing reproducible research in Remote Sensing as a subdomain of Geoinformatics and for this purpose, a group of 17 people involved in different positions of the Academia was assembled, with everyone contributing their point of view to the discussion.&lt;/p&gt;

&lt;p&gt;The workshop consisted of 2 breakout sessions. In the first part, we talked about our thoughts, the obstacles we encounter and the wishes we have regarding scientific knowledge in Remote Sensing that works reproducibly. In the second part, the discussion was mainly focused on the idea of creating an independent Journal for publishing Reproducible Remote Sensing papers, as a means of establishing reproducibility in this scientific field. The participants shared their experiences with regards to the state of reproducibility in their own work, they commented about the usability of o2r developed platform (&lt;a href=&quot;https://o2r.uni-muenster.de&quot;&gt;https://o2r.uni-muenster.de&lt;/a&gt;) and outlined the positive aspects and the potential pitfalls of launching a fully reproducible Journal on Remote Sensing. After every session, the breakout groups presented their discussed points to the rest.&lt;/p&gt;

&lt;p&gt;There were many interesting points raised throughout the whole workshop. The data appeared to be a tricky issue, as the sensitivity, the licensing and the size are parameters that very frequently do not allow for an end-to-end reproducible pipeline. The o2r system was characterized as a nice solution for early career scientists, because of its simplicity, and as an interesting learning tool. In the o2r team, we felt that reproducibility in Remote Sensing is so engaging to a big part of the community, that we could be deliberating for quite some time! We deeply thank all the participants and we are looking forward to future collaborations!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Talks, preprints, papers, and a leave of absence</title>
   <link href="https://o2r.info/2022/04/05/talks-preprints-papers-and-a-leave-of-absence/"/>
   <updated>2022-04-05T00:00:00+00:00</updated>
   <id>https://o2r.info/2022/04/05/talks-preprints-papers-and-a-leave-of-absence</id>
   <content type="html">&lt;p&gt;This blog has been a bit quieter than usual in the year 2021, not because of the thing that messes everything else up in the world, but because o2r team member Daniel has been focussing on wrapping up his PhD thesis (&lt;a href=&quot;/2022/02/14/daniel-phd-defense/&quot;&gt;it’s done!&lt;/a&gt;) and took a leave of absence 👶.
Most of the activities below have been shared via the project’s Twitter feed, but we’d like to catch up the blog, too, and make a little announcement at the end.
So with no further ado, here are events and publications of the last 8+ months:&lt;!--more--&gt;&lt;/p&gt;

&lt;h2 id=&quot;talks&quot;&gt;Talks&lt;/h2&gt;

&lt;p&gt;o2r team members were given several opportunities to present work stemming from the project at conferenes and workshops.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;Sebastian presented the &lt;strong&gt;tool &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;geoextent&lt;/code&gt;&lt;/strong&gt; in the submission &lt;strong&gt;Exploring Research Data Repositories with geoextent&lt;/strong&gt; at &lt;em&gt;EarthCube 2021&lt;/em&gt;, see &lt;a href=&quot;https://doi.org/10.5281/zenodo.5496310&quot;&gt;archived notebook&lt;/a&gt; and the &lt;a href=&quot;https://earthcube2021.github.io/ec21_book/docs/index_dup.html&quot;&gt;workshop proceedings&lt;/a&gt;.&lt;/p&gt;

    &lt;p&gt;It was great to participate in a scientific event that invited submissions of computational notebooks as the item of publication.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;Daniel presented the CODECHECK and Reproducible AGILE initiatives as well as the o2r approach to sharing computational workflows at several events with, admittedly, similar titles:
    &lt;ul&gt;
      &lt;li&gt;&lt;strong&gt;Code execution during peer review&lt;/strong&gt; at &lt;em&gt;&lt;a href=&quot;https://software.ac.uk/cw22&quot;&gt;Collaborations Workshop 2022&lt;/a&gt;&lt;/em&gt;, see &lt;a href=&quot;https://bit.ly/cw22-keynote-daniel&quot;&gt;slides&lt;/a&gt; and &lt;a href=&quot;https://youtu.be/EHyEsZCDR1U?t=172&quot;&gt;recording&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;&lt;strong&gt;Code Execution and Code Review in the Scholarly Communication Process&lt;/strong&gt; at &lt;em&gt;&lt;a href=&quot;https://twitter.com/MAOpenScience&quot;&gt;Mannheim Open Science Meetup&lt;/a&gt;&lt;/em&gt; on 2021-07-28, see &lt;a href=&quot;https://bit.ly/code-scholcomm-ma-os&quot;&gt;slides&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;&lt;strong&gt;Executing workflows during peer review for transparency, reproducibility, and reusability&lt;/strong&gt; at _&lt;a href=&quot;https://forschungsdaten-thueringen.de/veranstaltung/FDM-Tage-2021.html&quot;&gt;Thüringer FDM-Tage 2021&lt;/a&gt;_organised by Thüringer Kompetenznetzwerk Forschungsdatenmanagement on 2021-06-23, see &lt;a href=&quot;https://doi.org/10.5281/zenodo.5006378&quot;&gt;https://doi.org/10.5281/zenodo.5006378&lt;/a&gt; and &lt;a href=&quot;https://docs.google.com/presentation/d/1k37sLw-SlLLrGPi4Rd8rajNQ2nN5a9P-kGA_D4kbKq0/edit?usp=sharing&quot;&gt;slides&lt;/a&gt;&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li&gt;Daniel gave a talk on &lt;strong&gt;Rractical reproducibility and reproducibility vs. peer review&lt;/strong&gt; at &lt;em&gt;&lt;a href=&quot;http://spatial.ucsb.edu/spatial-data-science-hangout-Spring21/&quot;&gt;Spatial Data Science Hangout&lt;/a&gt;&lt;/em&gt; organised by the Center for Spatial Studies at UCSB on 2021-05-20, see &lt;a href=&quot;https://docs.google.com/presentation/d/1x3lJx_y3GM_puG-oTkTfz0Vr6yWLgDxgcAkB8apsgjI/edit#slide=id.p&quot;&gt;slides&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id=&quot;preprints-abstracts-reports--postprints&quot;&gt;Preprints, abstracts, reports &amp;amp; postprints&lt;/h2&gt;

&lt;p&gt;A chapter of Daniel’s PhD thesis was published as a preprint:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;Nüst, Daniel. 2021. &lt;strong&gt;A Web service for executable research compendia enables reproducible publications and transparent reviews in geospatial sciences&lt;/strong&gt;. Zenodo. doi: &lt;a href=&quot;https://10.5281/zenodo.4818119&quot;&gt;10.5281/zenodo.4818119&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Daniel had the amazin opportunity to contribute to a &lt;em&gt;Knowledge Exchange&lt;/em&gt; activity on &lt;em&gt;Publishing Reproducible Research Outputs&lt;/em&gt;.
Even though he is not an author, we want to point out the excellent reports from the group:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;The Art of Publishing Reproducible Research Outputs: Supporting emerging practices through cultural and technological innovation&lt;/strong&gt;. Chiarelli A, Loffreda, Lucia, Johnson R. 2021. Zenodo. &lt;a href=&quot;https://doi.org/10.5281/zenodo.5521076&quot;&gt;https://doi.org/10.5281/zenodo.5521076&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;See also the &lt;a href=&quot;https://doi.org/10.5281/zenodo.5639383&quot;&gt;executive summary&lt;/a&gt; if you are in a hurry.&lt;/p&gt;

&lt;p&gt;As a continuation of the activities in Reproducible AGILE, Daniel contributed to a conference abstract on &lt;strong&gt;Reproducible graduate theses in GIScience&lt;/strong&gt; with Carlos Granell and Rusne Sileryte, which was presented at &lt;a href=&quot;https://pwd.aa.ufl.edu/researchre-pro/&quot;&gt;Research Reproducibility 2020&lt;/a&gt;, University of Florida, on 2020-12-02, &lt;a href=&quot;https://doi.org/10.17605/OSF.IO/WCEXY&quot;&gt;https://doi.org/10.17605/OSF.IO/WCEXY&lt;/a&gt;, see also &lt;a href=&quot;https://osf.io/ynezg/&quot;&gt;slides&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;And finally, the embargo period of a &lt;a href=&quot;/2020/10/14/new-papers-rockerverse-geography-geosciences/&quot;&gt;non-OA article&lt;/a&gt; by Daniel ended and he depsited the &lt;a href=&quot;https://casrai.org/term/author-accepted-manuscript/&quot;&gt;AAM&lt;/a&gt; as a postprint on EarthArXiv:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Practical Reproducibility in Geography and Geosciences&lt;/strong&gt;. Nüst D, Pebesma E. 2022. EarthArXiv. &lt;a href=&quot;https://doi.org/10.31223/X5XH0Z&quot;&gt;https://doi.org/10.31223/X5XH0Z&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2 id=&quot;papers&quot;&gt;Papers&lt;/h2&gt;

&lt;p&gt;The assessment of the reproducibility of GIScience conference papers was continued for the GIScience conference series, and former team member Markus was also on board again.
We are very happy that this paper won the Best Paper award at the GIScience conference 2021!&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Reproducible Research and GIScience: An Evaluation Using GIScience Conference Papers&lt;/strong&gt;. Ostermann FO, Nüst D, Granell C, Hofer B, Konkol M. 2021. &lt;a href=&quot;https://doi.org/10.4230/LIPIcs.GIScience.2021.II.2&quot;&gt;https://doi.org/10.4230/LIPIcs.GIScience.2021.II.2&lt;/a&gt;; &lt;a href=&quot;https://doi.org/10.31223/x5zk5v&quot;&gt;preprint&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Daniel presents a non-technology driven approach to reproducibility in this collaboration with Stephen Eglen:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;CODECHECK: an Open Science initiative for the independent execution of computations underlying research articles during peer review to improve reproducibility&lt;/strong&gt;. Nüst D and Eglen SJ. [version 2; peer review: 2 approved]. F1000Research 2021, 10:253. &lt;a href=&quot;https://doi.org/10.12688/f1000research.51738.2&quot;&gt;https://doi.org/10.12688/f1000research.51738.2&lt;/a&gt;; &lt;a href=&quot;https://doi.org/10.12688/f1000research.51738.1&quot;&gt;preprint&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The work was also featured on the F1000 blog &lt;a href=&quot;https://blog.f1000.com/2021/09/27/codecheck/&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Daniel contributed to the following review article on metadata - thanks Jeremy for an outstanding job and the opportunity to take part!&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;The role of metadata in reproducible computational research&lt;/strong&gt;. Leipzig J, Nüst D, Hoyt CT, Ram K, Greenberg J
Article(journal). Patterns. 2021. &lt;a href=&quot;https://doi.org/10.1016/j.patter.2021.100322&quot;&gt;https://doi.org/10.1016/j.patter.2021.100322&lt;/a&gt;; &lt;a href=&quot;https://arxiv.org/pdf/2006.08589&quot;&gt;preprint&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;What if the o2r system is not flexible enough but you want to use containers to packaeg your data science workflow?&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Ten simple rules for writing Dockerfiles for reproducible data science&lt;/strong&gt;. Nüst D, Sochat V, Marwick B, Eglen SJ, Head T, Hirst T, Evans BD. PLOS Computational Biology. 2020. &lt;a href=&quot;https://doi.org/10.1371/journal.pcbi.1008316&quot;&gt;https://doi.org/10.1371/journal.pcbi.1008316&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2 id=&quot;new-team-member&quot;&gt;New team member&lt;/h2&gt;

&lt;p&gt;The o2r project is excited to have found a new team member to continue making research more reproducible, and to take some new directions, too.
We welcome &lt;a href=&quot;https://orcid.org/0000-0003-0928-1139&quot;&gt;Eftychia&lt;/a&gt; &lt;a href=&quot;https://www.uni-muenster.de/Geoinformatics/en/institute/staff/index.php/365/Eftychia_Koukouraki&quot;&gt;Koukouraki&lt;/a&gt; to the team!
She joins us after graduating from the Erasmus Mundus Masters in Geospatial Technologies as a member of the SITCOM lab.
Before joining the exciting field of Geoinformatics, she worked in the industry as a Software Engineer and she also holds a Diploma in Electrical and Computer Engineering.&lt;/p&gt;

&lt;p&gt;Great to have you on board, Eftychia - looking forward to see where you take the project!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Daniel's Ph.D. Defense</title>
   <link href="https://o2r.info/2022/02/14/daniel-phd-defense/"/>
   <updated>2022-02-14T00:00:00+00:00</updated>
   <id>https://o2r.info/2022/02/14/daniel-phd-defense</id>
   <content type="html">&lt;p&gt;The o2r project started with quite a bold statement.
I think it was Daniel’s supervisor Edzer Pebesma who stated that “We want to change the scientific landscape”.
Well, yeah, let’s try it - I thought.
How could I know that this guy sitting next to me behind his Linux computer would indeed achieve such a change?
He became CODECHECK’s co-inventor and AGILE’s reproducibility king.
While I am not sure whether the latter is an official title, his contributions certainly have a real impact.
His backend developments are the backbone of the success of the o2r project, though just one of the many publications, which not only comprise scientific papers but also software.
Let’s not forget that he successfully included a whale that swallows R’s and poops containers in his defence!
&lt;img src=&quot;/public/images/containerit.png&quot; alt=&quot;containerit&quot; width=&quot;100&quot; /&gt;&lt;/p&gt;

&lt;p&gt;🥂 Congratulations to Dr. rer. nat. Daniel Nüst for a great Ph.D. defence &lt;em&gt;“Infrastructures and Practices for Reproducible Research in Geography, Geosciences, and GIScience”&lt;/em&gt;! 🎉&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2022-02-14_dn-phd-defense.jpg&quot; alt=&quot;Daniel and the evaluation committee&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Read Daniel’s work:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;em&gt;Nüst, Daniel. 2021&lt;/em&gt;. &lt;strong&gt;Infrastructures and Practices for Reproducible Research in Geography, Geosciences, and GIScience&lt;/strong&gt;. &lt;em&gt;Doctoral dissertation, University of Münster, Germany.&lt;/em&gt; &lt;strong&gt;&lt;a href=&quot;https://doi.org/10.5281/zenodo.4768096&quot;&gt;https://doi.org/10.5281/zenodo.4768096&lt;/a&gt;&lt;/strong&gt;.&lt;/p&gt;
&lt;/blockquote&gt;
</content>
 </entry>
 
 <entry>
   <title>geoextent presented at the 2021 EarthCube annual meeting</title>
   <link href="https://o2r.info/2021/08/03/geoextent-presented-at-the-2021-Earth-Cube-meeting/"/>
   <updated>2021-08-03T00:00:00+00:00</updated>
   <id>https://o2r.info/2021/08/03/geoextent-presented-at-the-2021-Earth-Cube-meeting</id>
   <content type="html">&lt;p&gt;The Python library &lt;a href=&quot;https://o2r.info/geoextent/&quot;&gt;geoextent&lt;/a&gt; by the o2r project team was selected for presentation at the &lt;a href=&quot;https://www.earthcube.org/2021-earthcube-annual-meeting&quot;&gt;2021 EarthCube annual meeting&lt;/a&gt; in the peer-reviewed notebooks session.
In this blog post, student assistant Sebastian reports from the event.&lt;/p&gt;

&lt;!--more--&gt;

&lt;h2 id=&quot;geoextent-presented-at-the-2021-earthcube&quot;&gt;geoextent presented at the 2021 EarthCube&lt;/h2&gt;

&lt;p&gt;Notebooks as a scholarly object, database interoperability, FAIR workflows, connecting data and code, and tools for geosciences research are some of the topics discussed at the &lt;a href=&quot;https://www.earthcube.org/2021-earthcube-annual-meeting&quot;&gt;2021 EarthCube annual meeting&lt;/a&gt;.
At the event, o2r team members &lt;a href=&quot;https://orcid.org/0000-0002-8335-9312&quot;&gt;Sebastian&lt;/a&gt; and &lt;a href=&quot;https://orcid.org/0000-0002-0024-5046&quot;&gt;Daniel&lt;/a&gt; presented &lt;a href=&quot;https://github.com/o2r-project/geoextent&quot;&gt;geoextent&lt;/a&gt;, a Python library designed to extract temporal and spatial extent from data files.&lt;/p&gt;

&lt;p&gt;We presented the librry as part of the &lt;a href=&quot;https://www.earthcube.org/2021-earthcube-annual-meeting&quot;&gt;2nd call for Notebooks&lt;/a&gt; for a digital proceedings of the EarthCube annual meeting following the increased interest of the geosciences research community on reproducible workflows.&lt;/p&gt;

&lt;h2 id=&quot;exploring-research-data-repositories-with-geoextent&quot;&gt;Exploring research data repositories with geoextent&lt;/h2&gt;

&lt;blockquote&gt;
  &lt;p&gt;Sebastian Garzón and Nüst, Daniel. 2021. &lt;strong&gt;Exploring Research Data Repositories with geoextent&lt;/strong&gt;. EarthCube annual meeting. &lt;a href=&quot;https://doi.org/10.5281/zenodo.5496311&quot;&gt;https://doi.org/10.5281/zenodo.5496311&lt;/a&gt; &lt;a href=&quot;https://mybinder.org/v2/gh/earthcube2021/ec21_garzon_etal/HEAD&quot;&gt;&lt;img src=&quot;https://mybinder.org/badge_logo.svg&quot; alt=&quot;Binder&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The &lt;a href=&quot;https://mybinder.org/v2/gh/earthcube2021/ec21_garzon_etal/HEAD&quot;&gt;notebook&lt;/a&gt;, accessible through &lt;a href=&quot;https://mybinder.org/&quot;&gt;Binder&lt;/a&gt;, includes an introduction of geoextent’s usage and a case study where we explored more than 300 &lt;a href=&quot;https://zenodo.org&quot;&gt;Zenodo&lt;/a&gt; repositories (over 25.000 files!) with geoextent.
An initial exploration of Zenodo’s API showed that spatial metadata is rarely available, difficulting data integration and discovery.
The objective of our case study was to verify if we can increase the current percentage of repositories with geospatial information on &lt;a href=&quot;https://zenodo.org&quot;&gt;Zenodo&lt;/a&gt; by using geoextent.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;/public/images/2021-08-03-geoextent-presented-at-the-2021-earth-cube-meeting/screenshot-presentation-zenodo-api.png&quot;&gt;&lt;img src=&quot;/public/images/2021-08-03-geoextent-presented-at-the-2021-earth-cube-meeting/screenshot-presentation-zenodo-api.png&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot of presentation showing the current state of spatial metadata in Zenodo&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Our results suggest that geoextent could be used to increase spatial metadata of repositories by directly extracting information from the files deposited on them.
However, we identified a series of challenges for this approach including geospatial information being stored in ambiguous formats (e.g., CSV and &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;.asc&lt;/code&gt; files) or incorrectly georeferenced files in specialized formats (e.g., missing coordinate reference system or flipped coordinates).
This case study also provide information for further development of geoextent to support more file formats and fix.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;/public/images/2021-08-03-geoextent-presented-at-the-2021-earth-cube-meeting/screenshot-presentation-results.png&quot;&gt;&lt;img src=&quot;/public/images/2021-08-03-geoextent-presented-at-the-2021-earth-cube-meeting/screenshot-presentation-results.png&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot of presentation showing the results of our case study with geoextent&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;For more information about geoextent you can follow these links:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/o2r-project/geoextent&quot;&gt;geoextent repository&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a title=&quot;Exploring Research Data Repositories with geoextent - Binder&quot; href=&quot;https://mybinder.org/v2/gh/earthcube2021/ec21_garzon_etal/HEAD&quot;&gt;&lt;img src=&quot;/public/images/my_binder.svg&quot; style=&quot;display: inline-block; margin: 0; padding: 0; position-top: 3px;&quot; /&gt;&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://doi.org/10.5281/zenodo.5496311&quot;&gt;Exploring Research Data Repositories with geoextent notebook - Zenodo record&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://doi.org/10.6084/m9.figshare.14786199&quot;&gt;Exploring Research Data Repositories with geoextent - presentation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id=&quot;earthcube-meeting-2021&quot;&gt;EarthCube meeting 2021&lt;/h2&gt;

&lt;p&gt;In addition to presenting geoextent, the participation in the event allowed us to get an insight into notebooks as research objects and scientific publications.
Some of the reflections on the evolution of the guidelines, review process, and selected notebooks with respect to the first call were discussed in a &lt;a href=&quot;https://www.youtube.com/watch?v=IV-4e3kxVas&quot;&gt;panel&lt;/a&gt;.
In the same panel, representatives of the Jupyter, R Markdown, and Matlab communities presented different tools to share research results and how they could be integrated better within the context of scientific publications.&lt;/p&gt;

&lt;p&gt;Among the other &lt;a href=&quot;https://earthcube2021.github.io/ec21_book/&quot;&gt;18 accepted notebooks&lt;/a&gt; we found interesting tools, for example &lt;em&gt;cf_xarray&lt;/em&gt;, used to simplify the usage of Climate and Forecast (CF) compliant datasets by improving the metadata of files &lt;a href=&quot;https://binder.pangeo.io/v2/gh/earthcube2021/ec21_cherian_etal/main?filepath=DC_01_cf-xarray.ipynb&quot;&gt;&lt;img src=&quot;/public/images/my_binder.svg&quot; style=&quot;display: inline-block; margin: 0; padding: 0; position-top: 3px;&quot; /&gt;&lt;/a&gt;, a methodology to access to OpenTopography’s Cloud Optimized GeoTIFF data for topography information &lt;a href=&quot;https://mybinder.org/v2/gh/earthcube2021/ec21_beckley_etal/HEAD&quot;&gt;&lt;img src=&quot;/public/images/my_binder.svg&quot; style=&quot;display: inline; margin: 0; padding: 0; position-top: 3px;&quot; /&gt;&lt;/a&gt; or an educational platform to learn about glaciers &lt;a href=&quot;https://mybinder.org/v2/gh/earthcube2021/ec21_maussion_etal/HEAD&quot;&gt;&lt;img src=&quot;/public/images/my_binder.svg&quot; style=&quot;display: inline-block; margin: 0; padding: 0; position-top: 3px;&quot; /&gt;&lt;/a&gt;.
All of these studies give us a picture of different geosciences research questions and how they are presented in fully reproducible workflows.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>New preprint on o2r architecture and implementation</title>
   <link href="https://o2r.info/2021/07/08/new-preprint-o2r-tech/"/>
   <updated>2021-07-08T00:00:00+00:00</updated>
   <id>https://o2r.info/2021/07/08/new-preprint-o2r-tech</id>
   <content type="html">&lt;p&gt;&lt;em&gt;A new preprint is out!&lt;/em&gt; 📢&lt;/p&gt;

&lt;p&gt;With the first commit on &lt;a href=&quot;https://zivgitlab.uni-muenster.de/d_nues01/architecture-paper&quot;&gt;the manuscript repository&lt;/a&gt; made on August 1st 2018, almost three years ago, this one is long overdue.
In the article, &lt;!--more--&gt;o2r team member &lt;a href=&quot;https://orcid.org/0000-0002-0024-5046&quot;&gt;Daniel&lt;/a&gt; summarises over 5 years of designing and implementing the the o2r software infrastructure for &lt;em&gt;Executable Research Compendia&lt;/em&gt; (ERCs).
The article &lt;em&gt;“A Web service for executable research compendia enables reproducible publications and transparent reviews in geospatial science”&lt;/em&gt; is now published on Zenodo:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;Nüst, Daniel. (2021, July 8). A Web service for executable research compendia enables reproducible publications and transparent reviews in geospatial sciences (Version 1). Zenodo. &lt;a href=&quot;https://doi.org/10.5281/zenodo.4818120&quot;&gt;https://doi.org/10.5281/zenodo.4818120&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The preprint covers the ERC specification, o2r API specification, the o2r system architecture, and the o2r reference implementation - the &lt;em&gt;ERC Reproducibility Service&lt;/em&gt;.
It contains an extensive discussion and provides lessons learned from implementing ambitious ideas for increasing reproducibility.
This article’s most important section though is Acknowledgements: all o2r team members, past and present, contributed to making the vision of ERCs for scholarly communication a reality. &lt;em&gt;Thanks everyone!&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The screenshot below shows the preprints first page.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2021-07_architecture-paper-screenshot.png&quot; alt=&quot;Screenshot of manuscript first page&quot; /&gt;&lt;/p&gt;

&lt;h2 id=&quot;abstract&quot;&gt;Abstract&lt;/h2&gt;

&lt;blockquote&gt;
  &lt;p&gt;The Executable Research Compendium (ERC) is a concept for packaging data, code, text, and user interface configurations in a single package to increase transparency, reproducibility, and reusability of computational research. This article introduces the ERC reproducibility service (ERS) for a publication workflow enhanced by ERCs.
The ERS connects with existing scientific infrastructures and was deployed and tested with a focus on data and visualisation methods for open geospatial sciences. We describe the architecture of a reference implementation for the reproducibility service, including the created Web API. We critically discuss both the project set-up and features of ERC and ERS, and examine them in the light of various classifications for reproducible research. The ERC and ERS are found to be a powerful tool to improve reproducibility and thereby enable better investigating and understanding of computational workflows during peer review. We derive lessons learned and challenges for future scholarly publishing of computer-based geospatial research.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2 id=&quot;discuss-and-share&quot;&gt;Discuss and share&lt;/h2&gt;

&lt;blockquote class=&quot;twitter-tweet&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;New preprint is out 📢: &amp;quot;A Web service for executable research compendia enables reproducible publications and transparent reviews in geospatial science&amp;quot; &lt;br /&gt;👉&lt;a href=&quot;https://t.co/VAnRetcztL&quot;&gt;https://t.co/VAnRetcztL&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;A sweeping blog about all specifications and implementations of 5+ years by team of &lt;a href=&quot;https://twitter.com/o2r_project?ref_src=twsrc%5Etfw&quot;&gt;@o2r_project&lt;/a&gt;. &lt;a href=&quot;https://t.co/OGm7vlzVXn&quot;&gt;pic.twitter.com/OGm7vlzVXn&lt;/a&gt;&lt;/p&gt;&amp;mdash; Daniel Nüst (@nordholmen) &lt;a href=&quot;https://twitter.com/nordholmen/status/1413120556875005958?ref_src=twsrc%5Etfw&quot;&gt;July 8, 2021&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

</content>
 </entry>
 
 <entry>
   <title>Bachelor Thesis of student assistants Tom and Nick</title>
   <link href="https://o2r.info/2020/12/22/bachelor-thesis-of-student-assistants-tom-and-nick/"/>
   <updated>2020-12-22T00:00:00+00:00</updated>
   <id>https://o2r.info/2020/12/22/bachelor-thesis-of-student-assistants-tom-and-nick</id>
   <content type="html">&lt;p&gt;Two of the o2r student assistants have just finished successful their bachelor theses. Congratulations! 🎉&lt;/p&gt;

&lt;p&gt;This blog post introduces the excellent work by&lt;!--more--&gt; Tom and Nick - thank you for your dedication to advance Opening Reproducible Research.&lt;/p&gt;

&lt;h2 id=&quot;geospatial-metadata-for-discovery-in-scholarly-publishing&quot;&gt;Geospatial Metadata for Discovery in Scholarly Publishing&lt;/h2&gt;

&lt;p&gt;&lt;a href=&quot;https://orcid.org/0000-0002-5746-8590&quot;&gt;Tom Niers&lt;/a&gt;’s thesis &lt;em&gt;“Geospatial Metadata for Discovery in Scholarly Publishing”&lt;/em&gt; presents a novel approach to integrate well-defined geospatial metadata in a scholarly publishing platform to enhance discovery of scientific articles.
For this purpose he developed the software &lt;em&gt;&lt;a href=&quot;https://github.com/tnier01/geoOJS&quot;&gt;geoOJS&lt;/a&gt;&lt;/em&gt;, which offers a novel way for authors to provide spatial properties of research works when submitting an article to a journal based on the open source software &lt;a href=&quot;https://pkp.sfu.ca/ojs/&quot;&gt;OJS&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Abstract&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;Many scientific articles are related to specific regions of the Earth.
The connection is often implicit, although geospatial metadata has been shown to have positive effects, such as detecting biases in research coverage or enhancing discovery of research.
Scholarly communication platforms lack an explicit modeling of geospatial metadata.
In this work, we report a novel approach to integrate well-defined geospatial metadata into Open Journal Systems (OJS).
Authors can create complex geometries to represent the related location(s) or region(s) for their submission and define the relevant time period.
They are assisted by an interactive map and a gazetteer to capture high quality coordinates as well as a matching textual description with high usability.
The geospatial metadata is published within the article pages using semantic tags, integrated in standardized publication metadata, and shown on maps.
Thereby, the geoOJS plugin facilitates indexing by search engines, can improve accessibility, and provides a foundation for more powerful map-based discovery of research articles across journals.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href=&quot;/public/images/2020-12-22-bachelor-thesis-of-student-assistants-tom-and-nick/GeoOJS.png&quot;&gt;&lt;img src=&quot;/public/images/2020-12-22-bachelor-thesis-of-student-assistants-tom-and-nick/ScreenshotGeoOJS.png&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screenshot of geoOJS – input of geospatial metadata, author can define temporal properties by calendar view, spatial properties by drawing or accept them by suggestions&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The bachelor thesis was published on the University of Münster’s document repository: &lt;a href=&quot;http://nbn-resolving.de/urn:nbn:de:hbz:6-69029469735&quot;&gt;http://nbn-resolving.de/urn:nbn:de:hbz:6-69029469735&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Tom presented his work at the &lt;a href=&quot;https://site.uit.no/muninconf/&quot;&gt;Munin Conference of Scholarly Publishing 2020&lt;/a&gt;, a conference on scholarly publishing and communication with focus on open access, open data and open science.
His ideas and the prototype were received very well, and the discussion yielded many ideas for further development.
The abstract, the slides and a recording of the conference are available at &lt;a href=&quot;https://doi.org/10.7557/5.5590&quot;&gt;https://doi.org/10.7557/5.5590&lt;/a&gt;.
A video of the geoOJS presentation and the Q&amp;amp;A that followed is available on &lt;a href=&quot;https://youtu.be/-Lc9AjHq_AY&quot;&gt;Youtube&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Tom’s experience in OJS is driving the development of the o2r OJS plugin for &lt;a href=&quot;https://o2r.info/2019/10/15/Opening-Reproducible-Research-with-OJS/&quot;&gt;Opening Reproducible Research in OJS&lt;/a&gt; and we are looking forward to present our first developments soon.&lt;/p&gt;

&lt;h2 id=&quot;combining-augmented-reality-and-reproducibility-to-convey-spatio-temporal-results&quot;&gt;Combining Augmented Reality and Reproducibility to convey spatio-temporal results&lt;/h2&gt;

&lt;p&gt;Nick Jakuschona researched a novel way of displaying spatio-temporal information in scientific articles and reported his findings in the thesis &lt;em&gt;“Combining Augmented Reality and Reproducibility to convey spatio-temporal results”&lt;/em&gt;.
He makes use of the rising concept of Augmented Reality (AR) to display scientific data and shows how to create an AR application out of a reproducible article”.
You can try out  the application on your own mobile device at &lt;a href=&quot;https://njaku01.github.io/&quot;&gt;https://njaku01.github.io/&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Abstract&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;Spatio-temporal research results are usually published in a static format, for example, as PDF.
Here the results are not directly linked to their spatial reference. 
Therefore, it is difficult for the user to understand these results.
To improve the user’s understanding, we link these results with the real world.
To archive this, we use the raising concept of Augmented Reality, where it is possible to integrate the results into the view of the user and to display the results on site.
The results are often calculated out of a specified dataset.
To ensure the data used for the application indicates the same result presented in the article, the outcome must be reproducible.
The goal is to combine reproducibility and Augmented Reality to convey spatio-temporal results.
We answered the research question about how to create an Augmented Reality application out of a reproducible article.
Therefore, we performed a literature research and developed a concept which provides a guideline and explains the important steps.
Starting with extracting the data used to calculate the results.
Designing the app and deciding which types of visualization and devices fit best for the result and implementing the application.
To show the feasibility of the concept, we created an application to convey the results of one scientific article.
This application was evaluated with an expert user study, with the goal to indicate whether the application is understandable and easy to use.
Furthermore, the general interest in using Augmented Reality applications to inspect spatio-temporal results got researched.
The results of our research show that it is possible to convey spatio-temporal results through Augmented Reality.
The results are displayed understandable.
Overall, Augmented Reality is an interesting approach to display results out of scientific articles which should be depended in further research.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href=&quot;/public/images/2020-12-22-bachelor-thesis-of-student-assistants-tom-and-nick/ScreenshotAugmentedReality.png&quot;&gt;&lt;img src=&quot;/public/images/2020-12-22-bachelor-thesis-of-student-assistants-tom-and-nick/ScreenshotAugmentedReality.png&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
&lt;em&gt;Screenshots of the Augmented Reality application showing results of the paper in two different views.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;This application was evaluated with an expert user study.
The results of this study are published as an &lt;a href=&quot;https://o2r.uni-muenster.de/#/erc/6N8OQ&quot;&gt;ERC&lt;/a&gt;.
Nick hopes that this novel approach of visualizing results will be used to make research accessible and understandable for everyone.
The future goal is to help authors, creating their own Augmented Reality applications.
For example, with an Augmented-Reality-Application-Builder on the o2r-homepage, which creates Augmented Reality applications out of ERCs.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>New papers out about 'Practical Reproducibility in Geo' and the 'Rockerverse'</title>
   <link href="https://o2r.info/2020/10/14/new-papers-rockerverse-geography-geosciences/"/>
   <updated>2020-10-14T00:00:00+00:00</updated>
   <id>https://o2r.info/2020/10/14/new-papers-rockerverse-geography-geosciences</id>
   <content type="html">&lt;p&gt;Two papers have been published this week by o2r team members &lt;a href=&quot;https://orcid.org/0000-0002-0024-5046&quot;&gt;Daniel&lt;/a&gt; and &lt;a href=&quot;https://orcid.org/0000-0001-8049-7069&quot;&gt;Edzer&lt;/a&gt;.
They shed a light on the practical aspects of publishing computational geospatial research in a reproducible way and the enourmous number of projects and opportunities of using containers with R to achieve reproducibility.
&lt;em&gt;Please share widely!&lt;/em&gt;
&lt;!--more--&gt;&lt;/p&gt;
&lt;h2 id=&quot;practical-reproducibility-in-geography-and-geosciences&quot;&gt;Practical Reproducibility in Geography and Geosciences&lt;/h2&gt;

&lt;blockquote&gt;
  &lt;p&gt;Daniel Nüst and Pebesma, Edzer. 2020. &lt;strong&gt;Practical reproducibility in geography and geosciences&lt;/strong&gt;. Annals of the American Association of Geographers. doi:&lt;a href=&quot;https://doi.org/10.1080/24694452.2020.1806028&quot;&gt;10.1080/24694452.2020.1806028&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The article is not Open Access, but there is an 👉 &lt;a href=&quot;https://nuest.staff.ifgi.de/N%C3%BCst-and-Pebesma_2020_AAM_Practical-Reproducibility-in-Geography-and-Geosciences.pdf&quot;&gt;&lt;strong&gt;author accepted manuscript PDF&lt;/strong&gt;&lt;/a&gt; 🔓.&lt;/p&gt;

&lt;p&gt;This paper is part of a collection of papers solicited after a &lt;a href=&quot;https://o2r.info/2019/02/16/r-r-workshop-at-sparc/&quot;&gt;workshop early last year&lt;/a&gt;.
We recommend to look at the other works, as they provide very interesting perspectives that complement the quite technical and practical approach in Daniel and Edzer’s article.
Join the discussion on Twitter:&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-dnt=&quot;true&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Today is a fun week of announcements. Another paper is out! 🥳 This time about &amp;quot;Practical Reproducibility in Geography and Geosciences&amp;quot; together with &lt;a href=&quot;https://twitter.com/edzerpebesma?ref_src=twsrc%5Etfw&quot;&gt;@edzerpebesma&lt;/a&gt;&lt;a href=&quot;https://t.co/8WgKvuENwx&quot;&gt;https://t.co/8WgKvuENwx&lt;/a&gt;&lt;a href=&quot;https://twitter.com/hashtag/ReproducibleResearch?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#ReproducibleResearch&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/Geography?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#Geography&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/Geosciences?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#Geosciences&lt;/a&gt; &lt;a href=&quot;https://t.co/4NtPaxPuhF&quot;&gt;pic.twitter.com/4NtPaxPuhF&lt;/a&gt;&lt;/p&gt;&amp;mdash; Daniel Nüst (@nordholmen) &lt;a href=&quot;https://twitter.com/nordholmen/status/1316339858273693699?ref_src=twsrc%5Etfw&quot;&gt;October 14, 2020&lt;/a&gt;&lt;/blockquote&gt;

&lt;h2 id=&quot;the-rockerverse-packages-and-applications-for-containerisation-with-r&quot;&gt;The Rockerverse: Packages and Applications for Containerisation with R&lt;/h2&gt;

&lt;blockquote&gt;
  &lt;p&gt;Daniel Nüst, Dirk Eddelbuettel, Dom Bennett, Robrecht Cannoodt, Dav Clark, Gergely Daróczi, Mark Edmondson, Colin Fay, Ellis Hughes, Lars Kjeldgaard, Sean Lopp, Ben Marwick, Heather Nolis, Jacqueline Nolis, Hong Ooi, Karthik Ram, Noam Ross, Lori Shepherd, Péter Sólymos, Tyson Lee Swetnam, Nitesh Turaga, Charlotte Van Petegem, Jason Williams, Craig Willis and Nan Xiao. &lt;strong&gt;The Rockerverse: Packages and Applications for Containerisation with R&lt;/strong&gt;. The R Journal (2020), 12:1, pages 437-461. doi:&lt;a href=&quot;https://doi.org/10.32614/RJ-2020-007&quot;&gt;10.32614/RJ-2020-007&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This paper was actually inspired by a &lt;a href=&quot;https://o2r.info/2016/12/15/investigating-docker-and-R/&quot;&gt;post in this blog&lt;/a&gt; four years ago and turned into a massive collaborative effort which is now published as Open Access in The R Journal.
Join the discussion on Twitter:&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-dnt=&quot;true&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;🥳 A paper is out (or rather the DOI 10.32614/RJ-2020-007 just now resolves..)!&lt;br /&gt;It feels anticlimactic with the preprint out for quite a while, but I&amp;#39;m grateful the &lt;a href=&quot;https://twitter.com/hashtag/RJournal?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#RJournal&lt;/a&gt; accepted this great and large collaborative effort:&lt;a href=&quot;https://t.co/qlCMAU45SV&quot;&gt;https://t.co/qlCMAU45SV&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/rstats?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#rstats&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/Docker?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#Docker&lt;/a&gt; &lt;a href=&quot;https://twitter.com/Docker?ref_src=twsrc%5Etfw&quot;&gt;@Docker&lt;/a&gt; &lt;a href=&quot;https://t.co/VrO8En1HXx&quot;&gt;https://t.co/VrO8En1HXx&lt;/a&gt; &lt;a href=&quot;https://t.co/Nr0xJaAeE1&quot;&gt;pic.twitter.com/Nr0xJaAeE1&lt;/a&gt;&lt;/p&gt;&amp;mdash; Daniel Nüst (@nordholmen) &lt;a href=&quot;https://twitter.com/nordholmen/status/1315987204775215105?ref_src=twsrc%5Etfw&quot;&gt;October 13, 2020&lt;/a&gt;&lt;/blockquote&gt;

&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

</content>
 </entry>
 
 <entry>
   <title>Beyond o2r: collaborations and community activity for more open and reproducible science</title>
   <link href="https://o2r.info/2020/06/26/community-collaborations/"/>
   <updated>2020-06-26T00:00:00+00:00</updated>
   <id>https://o2r.info/2020/06/26/community-collaborations</id>
   <content type="html">&lt;p&gt;The o2r project has its primary goals in providing tools to enhance scholarly communication.
We build technology to help solving relevant problems.
With the Executable Research Compendium and supporting software, we provide a different, more holistic take on how research output should look like in the future, especially if data and software are involved in the scientific workflow.
However, tech is not all we do and o2r team members actively work with the GIScience community and the broader scientific community.
This blog post briefly introduces two recent collaborations that are less about technology and more about community, culture, and people.
&lt;!--more--&gt;&lt;/p&gt;
&lt;h2 id=&quot;1-citable-and-preserved-agile-short-papers&quot;&gt;1. Citable and preserved AGILE short papers&lt;/h2&gt;

&lt;p&gt;We’re a big fan of the AGILE conference: we have &lt;a href=&quot;/2017/05/10/o2r-at-AGILE/&quot;&gt;organised&lt;/a&gt; &lt;a href=&quot;/2018/06/21/agile-2018-pre-conference-workshop-report/&quot;&gt;several&lt;/a&gt; &lt;a href=&quot;/2019/07/01/AGILE-2019-Limassol/&quot;&gt;workshops&lt;/a&gt;, contributed to &lt;a href=&quot;https://doi.org/10.7717/peerj.5072&quot;&gt;stocktacking the reproducibility of AGILE conference publications&lt;/a&gt;, and co-authored the &lt;a href=&quot;https://doi.org/10.17605/OSF.IO/CB7Z8&quot;&gt;AGILE Reproducible Paper Guidelines&lt;/a&gt;.
These activites are collected under the umbrella of &lt;a href=&quot;https://reproducible-agile.github.io/&quot;&gt;&lt;em&gt;Reproducible AGILE&lt;/em&gt;&lt;/a&gt;:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://reproducible-agile.github.io/&quot;&gt;&lt;img src=&quot;https://reproducible-agile.github.io/public/images/reproducible-AGILE-logo-square.svg&quot; alt=&quot;Reproducible AGILE logo&quot; width=&quot;200px&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The AGILE conference features a full paper and a short paper track.
The &lt;em&gt;full paper proceedings 2020&lt;/em&gt; are &lt;a href=&quot;https://www.agile-giscience-series.net/&quot;&gt;published as Open Access (yay!) with Copernicus&lt;/a&gt;, which is a huge step towards more accessibility and openness in the community.
Because of the cancellation of the conference, there are no &lt;em&gt;short paper proceedings&lt;/em&gt; in 2020.&lt;/p&gt;

&lt;p&gt;However, the &lt;strong&gt;short papers&lt;/strong&gt; up to 2019 are published as so called &lt;a href=&quot;https://en.wikipedia.org/wiki/Open_access#Bronze_OA&quot;&gt;“bronze Open Access”&lt;/a&gt;, meaning that they are published on a website and can be downloaded, but the license is unclear.
The the question of preservation is not properly answered either, and referencing AGILE short papers is not possible up to today’s standards because they lack a unique identifier.
This is a huge shame, because, having published a few AGILE short papers, I know that the peer review process is solid and very helpful especially for ideas in an early stage.
Furthermore, short papers are often written by early career researchs (in fact, my first ever scientific publication as first author was &lt;a href=&quot;https://eartharxiv.org/jq5df/&quot;&gt;at AGILE 2010&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;That is why I reached out to the &lt;a href=&quot;https://agile-online.org/agile-community/council&quot;&gt;AGILE council&lt;/a&gt; and suggested to add a statement to the &lt;a href=&quot;https://agile-online.org/conference/proceedings&quot;&gt;AGILE proceedings website&lt;/a&gt;, which clearly gives authors the permission to re-publish or &lt;a href=&quot;https://en.wikipedia.org/wiki/Self-archiving&quot;&gt;“self-archive”&lt;/a&gt; the short paper PDFs in a proper repository.
My initiative was triggered by a concrete event: one of my AGILE short papers was not accepted by my favourite preprint server &lt;a href=&quot;https://eartharxiv.org/&quot;&gt;EarthArXiv&lt;/a&gt; (which also hosts postprints, see also &lt;a href=&quot;https://en.wikipedia.org/wiki/EarthArXiv&quot;&gt;on Wikipedia&lt;/a&gt;) because it was not clear I had permission to submit a paper that was previously published elsewhere.
This is a very reasonable &lt;a href=&quot;https://eartharxiv.github.io/moderation.html&quot;&gt;moderation policy&lt;/a&gt;, and the interaction with EarthArXiv advisory council member &lt;a href=&quot;https://www.unb.ca/faculty-staff/directory/science-fr-earth/enright-allison.html&quot;&gt;Allison Enright&lt;/a&gt; in the matter was extremely nice and helpful.
After providing some good arguments via email and some endurance, I was very happy to learn that the council followed my suggestion and added the following statement to &lt;a href=&quot;https://agile-online.org/conference/proceedings/&quot;&gt;the proceedings website&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;em&gt;Authors have permission to deposit AGILE short papers, published in the proceedings below and available as PDFs on the server https://agile-online.org, in a public repository, such as a preprint server or institutional repositories.&lt;/em&gt;
&lt;em&gt;Authors may only use repositories that provide a DOI for the published record.&lt;/em&gt;&lt;/p&gt;

  &lt;p&gt;&lt;em&gt;Authors are strongly encouraged, and may be required by repositories e.g. EarthArXiv (https://eartharxiv.org/), to add a cover page to the uploaded PDF.&lt;/em&gt;
&lt;em&gt;The cover page should include name, time and place of the conference, the URL to the conference website, and a statement that the short paper is peer reviewed.&lt;/em&gt;
&lt;em&gt;If possible, authors should add the tags or keywords ‘AGILE short paper’ and ‘AGILEGIS’ and configure the recommended citation to include year and name of the conference.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;How this all played out confirmed my trust and apprecciation for the EarthArXiv and AGILE communities.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Did you author an AGILE short paper in the past?&lt;/strong&gt;
Please help to preserve the knowledge of the GIScience community.
You can do it today!
Find step-by-step instructions and some more background here: &lt;strong&gt;&lt;a href=&quot;https://reproducible-agile.github.io/short-paper-postprints/&quot;&gt;https://reproducible-agile.github.io/short-paper-postprints/&lt;/a&gt;&lt;/strong&gt;
It really just takes 5 minutes.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-dnt=&quot;true&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;AGILE &lt;a href=&quot;https://twitter.com/hashtag/AGILEGIS?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#AGILEGIS&lt;/a&gt; short papers can now be self-archived/deposited in institutional repositories or preprint servers (recommendation:👉&lt;a href=&quot;https://twitter.com/EarthArXiv?ref_src=twsrc%5Etfw&quot;&gt;@EarthArXiv&lt;/a&gt; ♥️🌎🌍🌏♥️):&lt;a href=&quot;https://t.co/FiRd5YWEDJ&quot;&gt;https://t.co/FiRd5YWEDJ&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Preserve your work now! (and ensure others can cite you properly...) &lt;a href=&quot;https://twitter.com/hashtag/postprint?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#postprint&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/OpenAccess?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#OpenAccess&lt;/a&gt; &lt;a href=&quot;https://t.co/j3lNAMC8tU&quot;&gt;pic.twitter.com/j3lNAMC8tU&lt;/a&gt;&lt;/p&gt;&amp;mdash; Daniel Nüst (@nordholmen) &lt;a href=&quot;https://twitter.com/nordholmen/status/1273642585639333889?ref_src=twsrc%5Etfw&quot;&gt;June 18, 2020&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;h2 id=&quot;2-codecheck&quot;&gt;2. CODECHECK&lt;/h2&gt;

&lt;p&gt;o2r has an &lt;a href=&quot;/about/&quot;&gt;approach and goals&lt;/a&gt; grounded in the belief that technology can help to reduce barriers for reproducibility and make benefits of reproducible publications more readily available to the broad diversity of geoscientific researchers.
Our focus lies in packaging code (scripts, runtime environment), data, and documentation together (the &lt;a href=&quot;/erc-spec/&quot;&gt;ERC&lt;/a&gt;) and integrate it into peer review and the scholarly publication process (our &lt;a href=&quot;/pilots/&quot;&gt;pilots&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;While these goals and approach are true, and start to come to fruition, one can also take a completely different approach.
Enter &lt;a href=&quot;https://codecheck.org.uk/&quot;&gt;&lt;em&gt;CODECHECK&lt;/em&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://codecheck.org.uk/&quot;&gt;&lt;img src=&quot;https://codecheck.org.uk/img/codecheck_logo.svg&quot; alt=&quot;&quot; width=&quot;200px&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;CODECHECK is a joint initiative by Daniel Nüst and &lt;a href=&quot;https://sje30.github.io/&quot;&gt;Stephen J. Eglen&lt;/a&gt;, reader in Computational Neuroscience at the University of Cambridge.
Daniel and Stephen were brought together by failure: both applied for a small Open Science grant with the Wellcome trust, but both were rejected.
Luckily, they both took advantage of the option to publish their project proposals, so they could see they had similar ideas.
Also starting out as technology driven, CODECHECK has developed into something completely different from o2r.&lt;/p&gt;

&lt;p&gt;To introduce better recognition of computational workflows in the peer review process, Stephen and Daniel developed a set of &lt;a href=&quot;https://codecheck.org.uk/#the-codecheck-principles&quot;&gt;four _principles&lt;/a&gt;.
Based on these principles, scientific journals or the community can build a process, of which &lt;a href=&quot;https://codecheck.org.uk/process/&quot;&gt;many variants are imaginable&lt;/a&gt;, for executing code and data-based workflows during peer review.&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Codecheckers record but don’t investigate or fix.&lt;/li&gt;
  &lt;li&gt;Communication between humans is key.&lt;/li&gt;
  &lt;li&gt;Credit is given to codecheckers.&lt;/li&gt;
  &lt;li&gt;Workflows must be auditable.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;These principles embrace openness ideals and the opportunity to introduce early career researchers and research software developers in peer review.
Instead of trying to preserve and package everything, CODECHECK transfers the gist of peer reviewing articles to code execution: at one point in time, one fellow researcher or developer was able to execute a given worklow following the provided instructions.
Some see this as a low bar, I see it as an option to break the current stagnancy of code review in science (see also the &lt;a href=&quot;https://codecheck.org.uk/faq&quot;&gt;CODECHECK FAQs&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;The currently most active implementation of these principles is the &lt;a href=&quot;https://codecheck.org.uk/guide/community-process&quot;&gt;community process&lt;/a&gt;, but the first successes of CODECHECKs conducted as part of journal publications are also already completed and the number of volunteering codecheckers is slowly rising.
Stephen put in a lot of effort to contribute to the scientific knowledge by codechecking coronavirus simulations, which not only strengthens trust in science but lead to a nice &lt;a href=&quot;https://doi.org/10.1038/d41586-020-01685-y&quot;&gt;Nature News article&lt;/a&gt;.
Please check out the CODECHECK website and the &lt;a href=&quot;https://codecheck.org.uk/register/&quot;&gt;CODECHECK register&lt;/a&gt; for details, and see &lt;a href=&quot;https://codecheck.org.uk/get-involved/&quot;&gt;how you can get involved&lt;/a&gt; as author, reviewer, or journal editor.&lt;/p&gt;

&lt;hr /&gt;

&lt;h2 id=&quot;low-tech-community-work-and-technological-advances-go-hand-in-hand-in-opening-reproducible-research&quot;&gt;&lt;em&gt;Low tech, community work, and technological advances go hand in hand in Opening Reproducible Research.&lt;/em&gt;&lt;/h2&gt;
</content>
 </entry>
 
 <entry>
   <title>o2r student assistant about impressions of reproducibility ready to start a career in research</title>
   <link href="https://o2r.info/2020/06/15/lg/"/>
   <updated>2020-06-15T00:00:00+00:00</updated>
   <id>https://o2r.info/2020/06/15/lg</id>
   <content type="html">&lt;p&gt;&lt;em&gt;“Geoscientist with experience in or willingness to learn R programming for reproducible research wanted!”&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;I had just completed a beginner course in R programming for my master’s thesis and saw my chance to further develop this knowledge and enter the field of geoinformatics, even get a little away from the pure ecology of my master studies in landscape ecology. I had never before heard of the words “reproducible research”, neither heard of any reason why this topic is of importance. So I took the job and worked my way in. After a couple of months&lt;!--more--&gt; I had to realise that in order to publish my master’s thesis, it was the journals obligation to make all code and data openly available to enable other researchers so they could fully understand and reuse my analysis. And there I was, as a landscape ecologist who believed I had nothing to do with reproducible research. Apparently it is important after all, yet not that simple.&lt;/p&gt;

&lt;p&gt;During my work in the o2r project I experienced first hand the whole range of reasons why people struggle so much making their work reproducible for others. The main argument, also for me, was this giant amount of additional work. Is it really worth it, I thought? I also believed I had my own structure while scripting and it would be much easier for me not to script in a way so other people understand my analysis, but to primarily make myself understand it. “I would have to spend an entire extra year for my PhD, just to prepare all scripts again for everyone to comprehend”, some PhD students from the atmospheric sciences told me. The desire for reproducibility in research is not always an open door. But maybe it is the same as for everything else. A clean method of working should always be the goal. Students in school should write cleanly so that the teacher can understand their essays. Every company needs a well organised structure to be successful. Scripting, so that only myself and no one else can understand what has been calculated, may in the short term have its benefits as I understand my own work because of the embedded history and context. After two years at the latest, however, not even I myself could look through my work and answer specific questions about my calculations. If we are honest, it happens far too often that we don’t know exactly what we thought at that time, we made that one small change or attempted to fix that nasty bug. We tend to lose track of which scripts contain which results, how a certain parameter was calculated, or what the results would look like if we would change certain values. Getting it right from the beginning is not an extra effort though, it is just a change in the way we work, which saves us time in the long run. And not only for us, but also for many others who no longer need to find answers to the same questions or redo complex analyses themselves.&lt;/p&gt;

&lt;p&gt;Now that I finished my master’s thesis, my time in the o2r project is over and I am starting my PhD in &lt;a href=&quot;https://www.fz-juelich.de/ibg/ibg-3/DE/Home/home_node.html&quot;&gt;terrestrial data analytics at Jülich Research Centre&lt;/a&gt;, investigating the impact of human water use on atmospheric extremes. During my job interview, they asked me quite a lot of details about my work at o2r, about limitations and obstacles, about difficulties and successes. This signals to me that reproducibility is not only gladly implemented, but is also an inevitable change that everyone must consider and adapt to, even if it is sometimes bothersome and entails some difficulties that we did not have to think about before. For me, reproducibility also has a social component. To do things not only for oneself, but for making others’ work easier and letting them benefit from one’s own method. For my PhD, I am taking along to further improve my method of working for best practice, because it certainly takes a lot of training. As a beginner in academia, I strongly hope to get help by detailed insights into the scripts of more experienced scientists in order to facilitate my own research.&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;&lt;em&gt;The o2r team thanks Laura for her contribution to the project. She did great work bridging between geofinformatics and landscape ecology and contributed greatly, among other things, to &lt;a href=&quot;https://arxiv.org/abs/2001.00484&quot;&gt;a paper on platforms for reproducible research&lt;/a&gt;. We wish her best of luck for her future academic career!&lt;/em&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Introducing geoextent</title>
   <link href="https://o2r.info/2020/04/26/Introducing-geoextent/"/>
   <updated>2020-04-26T00:00:00+00:00</updated>
   <id>https://o2r.info/2020/04/26/Introducing-geoextent</id>
   <content type="html">&lt;p&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;geoextent&lt;/code&gt; is an easy to use library for extracting the geospatial extent from data files with multiple data formats.&lt;/p&gt;

&lt;p&gt;Take a look at the &lt;a href=&quot;https://github.com/o2r-project/geoextent.git&quot;&gt;source code on GitHub&lt;/a&gt;, the &lt;a href=&quot;https://pypi.org/project/geoextent/&quot;&gt;library on PyPI&lt;/a&gt; and the &lt;a href=&quot;https://o2r.info/geoextent/&quot;&gt;documentation website&lt;/a&gt;.
You can view and test geoextent implementation through interactive notebooks on &lt;a href=&quot;https://mybinder.org&quot;&gt;mybinder.org&lt;/a&gt; with a click on the following binder.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://mybinder.org/v2/gh/o2r-project/geoextent/master&quot;&gt;&lt;img src=&quot;https://mybinder.org/badge_logo.svg&quot; alt=&quot;Binder&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Here is a small example how to use &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;geoextent&lt;/code&gt;.&lt;/p&gt;

&lt;div class=&quot;language-bash highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;geoextent &lt;span class=&quot;nt&quot;&gt;-b&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;-t&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;-input&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&apos;cities_NL.csv&apos;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;The output will show the rectangular bounding box, time interval and crs extracted from file data, as follow:&lt;/p&gt;

&lt;div class=&quot;language-bash highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;o&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&apos;format&apos;&lt;/span&gt;: &lt;span class=&quot;s1&quot;&gt;&apos;text/csv&apos;&lt;/span&gt;,
 &lt;span class=&quot;s1&quot;&gt;&apos;crs&apos;&lt;/span&gt;: &lt;span class=&quot;s1&quot;&gt;&apos;4326&apos;&lt;/span&gt;,
 &lt;span class=&quot;s1&quot;&gt;&apos;tbox&apos;&lt;/span&gt;: &lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&apos;30.09.2018&apos;&lt;/span&gt;, &lt;span class=&quot;s1&quot;&gt;&apos;30.09.2018&apos;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;,
 &lt;span class=&quot;s1&quot;&gt;&apos;bbox&apos;&lt;/span&gt;: &lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;4.3175, 51.434444, 6.574722, 53.217222]&lt;span class=&quot;o&quot;&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;The input file used above was obtained from &lt;a href=&quot;https://sandbox.zenodo.org/record/256820#.XeGcJJko85k&quot;&gt;Zenodo&lt;/a&gt;.
The map below&lt;!--more--&gt; based on &lt;a href=&quot;https://www.openstreetmap.org/export#map=8/52.347/5.446&quot;&gt;OpenStreetMap&lt;/a&gt; shows the area of extracted bounding box.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2020-04_geoextent-map.png&quot; alt=&quot;screenshot of example map&quot; /&gt;&lt;/p&gt;

&lt;p&gt;You can get quick usage help instructions on the command line, too:&lt;/p&gt;

&lt;div class=&quot;language-bash highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;geoextent &lt;span class=&quot;nt&quot;&gt;--help&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;div class=&quot;language-bash highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;geoextent is a Python library &lt;span class=&quot;k&quot;&gt;for &lt;/span&gt;extracting geospatial and temporal extents of a file or a directory of multiple geospatial data formats.

usage: geoextent &lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;-h&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;-formats&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;-b&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;-t&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;-input&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&apos;[filepath|input file]&apos;&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;]&lt;/span&gt;

optional arguments:
  &lt;span class=&quot;nt&quot;&gt;-h&lt;/span&gt;, &lt;span class=&quot;nt&quot;&gt;--help&lt;/span&gt;            show &lt;span class=&quot;nb&quot;&gt;help &lt;/span&gt;message and &lt;span class=&quot;nb&quot;&gt;exit&lt;/span&gt;
  &lt;span class=&quot;nt&quot;&gt;-formats&lt;/span&gt;              show supported formats
  &lt;span class=&quot;nt&quot;&gt;-b&lt;/span&gt;, &lt;span class=&quot;nt&quot;&gt;--bounding-box&lt;/span&gt;    extract spatial extent &lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;bounding box&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt;
  &lt;span class=&quot;nt&quot;&gt;-t&lt;/span&gt;, &lt;span class=&quot;nt&quot;&gt;--time-box&lt;/span&gt;        extract temporal extent
  &lt;span class=&quot;nt&quot;&gt;-input&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;nv&quot;&gt;INPUT&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;INPUT&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; ...]
                        input file or path

By default, both bounding box and temporal extent are extracted.

Examples:

geoextent path/to/geofile.ext
geoextent &lt;span class=&quot;nt&quot;&gt;-b&lt;/span&gt; path/to/directory_with_geospatial_data
geoextent &lt;span class=&quot;nt&quot;&gt;-t&lt;/span&gt; path/to/file_with_temporal_extent
geoextent &lt;span class=&quot;nt&quot;&gt;-b&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;-t&lt;/span&gt; path/to/geospatial_files


Supported formats:
- GeoJSON &lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;.geojson&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt;
- Tabular data &lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;.csv&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt;
- Shapefile &lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;.shp&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt;
- GeoTIFF &lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;.geotiff, .tif&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2 id=&quot;motivation&quot;&gt;Motivation&lt;/h2&gt;

&lt;p&gt;Geospatial properties of data can serve as a useful integrator of diverse data sets and can improve discovery of datasets.
However, spatial and temporal metadata is rarely used in common data repositories, such as &lt;a href=&quot;https://zenodo.org/&quot;&gt;Zenodo&lt;/a&gt;.
Users may ask &lt;em&gt;what data is available for my area of interest over a specific time interval?&lt;/em&gt;
This question formed the initial idea for creating a library that can serve as the basis for integration geospatial metadata in data repositories.
Because a core function is the extraction of the geospatial extent, we named it &lt;strong&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;geoextent&lt;/code&gt;&lt;/strong&gt;.
The data extracted using the library can be added to record metadata, which will allow users, specifically researchers, to find relevant data with less time and effort.&lt;/p&gt;

&lt;h2 id=&quot;origins&quot;&gt;Origins&lt;/h2&gt;

&lt;p&gt;The library’s source code is based on two groups projects (&lt;a href=&quot;https://github.com/KathHv/geosoftware2_ct&quot;&gt;Cerca Trova&lt;/a&gt; and &lt;a href=&quot;https://github.com/carobro/Geosoftware2&quot;&gt;Die Gruppe 1&lt;/a&gt;) of the study project &lt;a href=&quot;https://geosoft2.github.io/2018.html&quot;&gt;Enhancing discovery of geospatial datasets in data repositories&lt;/a&gt;.
We decided to develop the library with Python as we plan to integrate it with o2r’s metadata extraction and processing tool &lt;a href=&quot;https://github.com/o2r-project/o2r-meta&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;o2r-meta&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;h2 id=&quot;process-of-creating-the-codebase&quot;&gt;Process of creating the codebase&lt;/h2&gt;

&lt;p&gt;Luckily we did not have to start from scratch but could make &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;geoextent&lt;/code&gt; a reimplementation of existing prototypes.
We roughly followed these steps:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Evaluate the existing code of the &lt;a href=&quot;https://geosoft2.github.io/2018.html&quot;&gt;study project groups&lt;/a&gt;
    &lt;ul&gt;
      &lt;li&gt;Review the code implementation&lt;/li&gt;
      &lt;li&gt;Identify parts of the code that are re-usable&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li&gt;Integrate chosen parts&lt;/li&gt;
  &lt;li&gt;Develop of core features&lt;/li&gt;
  &lt;li&gt;Set up &lt;a href=&quot;https://travis-ci.org/github/o2r-project/geoextent/&quot;&gt;tests on Travis CI&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Publication of library &lt;a href=&quot;https://pypi.org/project/geoextent/&quot;&gt;on PyPI&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Writing library documentation using &lt;a href=&quot;https://www.sphinx-doc.org/en/master/&quot;&gt;Sphinx&lt;/a&gt; and render it as part of the Travis CI process&lt;/li&gt;
  &lt;li&gt;Adding introduction Notebooks for easy testing with &lt;a href=&quot;https://mybinder.org/v2/gh/o2r-project/geoextent/master&quot;&gt;MyBinder&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id=&quot;current-features&quot;&gt;Current features&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;Extract bounding box.
    &lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;  geoextent -b -input= &apos;wf_100m_klas.tif&apos;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;
    &lt;p&gt;Output:&lt;/p&gt;
    &lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;  {&apos;format&apos;: &apos;image/tiff&apos;,
   &apos;crs&apos;: &apos;4326&apos;,
   &apos;bbox&apos;: [5.91530075647532,
    50.3102519741084,
    9.46839871248415,
    52.5307755328733]}
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;
  &lt;/li&gt;
  &lt;li&gt;Extract time interval
    &lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;  geoextent -t -input= &apos;muenster_ring_zeit.geojson&apos;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;
    &lt;p&gt;Output:&lt;/p&gt;
    &lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;  {&apos;format&apos;: &apos;application/geojson&apos;,
   &apos;crs&apos;: 4326,
   &apos;tbox&apos;: [&apos;2018-11-14&apos;, &apos;2018-11-14&apos;]}

&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;
  &lt;/li&gt;
  &lt;li&gt;Show coordinate reference system (CRS) used&lt;/li&gt;
  &lt;li&gt;Supported formats:
    &lt;ul&gt;
      &lt;li&gt;GeoJSON (.geojson)&lt;/li&gt;
      &lt;li&gt;Tabular data (.csv)&lt;/li&gt;
      &lt;li&gt;Shapefile (.shp)&lt;/li&gt;
      &lt;li&gt;GeoTIFF (.geotiff, .tif)&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For more examples, see &lt;a href=&quot;https://o2r.info/geoextent/&quot;&gt;documentation&lt;/a&gt;.&lt;/p&gt;

&lt;h2 id=&quot;next-steps&quot;&gt;Next steps&lt;/h2&gt;

&lt;p&gt;As an immediate next steps, we want to integrate the extraction of extents into &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;or2-meta&lt;/code&gt; so that users creating an ERC will have to do less manual metadata creation.
We also hope that &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;geoextent&lt;/code&gt; is useful to others and have plenty ideas about extending the library.
For example, being a Python project, we would like to explore integrating &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;geoextent&lt;/code&gt; into Zenodo.
Most importantly, we will add support for multiple files and directories, but also further data formats - see &lt;a href=&quot;https://github.com/o2r-project/geoextent/issues&quot;&gt;project issues on GitHub&lt;/a&gt;.
&lt;em&gt;We welcome your ideas, feature requests, comments, and of course contributions!&lt;/em&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Next generation journal publishing and containers</title>
   <link href="https://o2r.info/2020/02/26/OJS-workshop-HD/"/>
   <updated>2020-02-26T00:00:00+00:00</updated>
   <id>https://o2r.info/2020/02/26/OJS-workshop-HD</id>
   <content type="html">&lt;p&gt;Some challenges of working on the next generation of research infrastructures can be solved most effectively by talking to other people.
That is why o2r team members Tom and Daniel were happy to learn about the &lt;a href=&quot;https://www.ojs-de.net/news-und-veranstaltungen/news/save-the-date-ojs-entwickler-workshop-am-20-21022020-in-heidelberg&quot;&gt;announcement&lt;/a&gt; of an &lt;a href=&quot;https://pkp.sfu.ca/ojs/&quot;&gt;Open Journal Systems&lt;/a&gt; (OJS) &lt;a href=&quot;https://journals.ub.uni-heidelberg.de/index.php/ojs/announcement/view/103&quot;&gt;workshop organised by Heidelberg University Publising (heiUP)&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The o2r team was a little bit the odd one out.
Other workshop participants&lt;!--more--&gt; either had extensive OJS development experience, or were not developers at all but running production systems of many OJS journals across the German university landscape.
But that could not keep us from telling everyone about &lt;a href=&quot;https://doi.org/10.1045/january2017-nuest&quot;&gt;Executable Research Compendia&lt;/a&gt;, of course.
We briefly summarised our plans to &lt;a href=&quot;/2019/10/15/Opening-Reproducible-Research-with-OJS&quot;&gt;extend OJS with ERC capabilities&lt;/a&gt;, &lt;em&gt;but we also had new stuff to share!&lt;/em&gt;
Tom is considering to put his &lt;em&gt;geo&lt;/em&gt;-informatics skills to use and extend the metadata of OJS articles with geospatial features in his Bachelor thesis.
This would allow to display the spatial area of articles on a map, and even browse articles by their location(s).
&lt;strong&gt;Learn more about these ideas in our &lt;a href=&quot;https://docs.google.com/presentation/d/12jTl4MM7QNfs_609c6WEZ3NCrM8yM1c1ZVl9y_15leU/edit#slide=id.g2ee631db89_2_75&quot;&gt;slides&lt;/a&gt;&lt;/strong&gt;.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-dnt=&quot;true&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Today team members &lt;a href=&quot;https://twitter.com/nordholmen?ref_src=twsrc%5Etfw&quot;&gt;@nordholmen&lt;/a&gt; &lt;a href=&quot;https://twitter.com/herrniers?ref_src=twsrc%5Etfw&quot;&gt;@herrniers&lt;/a&gt; meet the German &lt;a href=&quot;https://twitter.com/hashtag/OJS?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#OJS&lt;/a&gt; developer and user community at a workshop organised by &lt;a href=&quot;https://twitter.com/heiUP_HD?ref_src=twsrc%5Etfw&quot;&gt;@heiUP_HD&lt;/a&gt; &lt;a href=&quot;https://twitter.com/ojs_pkp?ref_src=twsrc%5Etfw&quot;&gt;@ojs_pkp&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;Of course we want to talk &lt;a href=&quot;https://twitter.com/hashtag/spatial?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#spatial&lt;/a&gt; data and &lt;a href=&quot;https://twitter.com/hashtag/ERC?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#ERC&lt;/a&gt; in OJS!&lt;br /&gt;&lt;br /&gt;🌍❤️📚&lt;a href=&quot;https://twitter.com/hashtag/SpatialIsSpecial?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#SpatialIsSpecial&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/ResearchCompendium?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#ResearchCompendium&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/ScholComm?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#ScholComm&lt;/a&gt;&lt;a href=&quot;https://t.co/5FenW7WUae&quot;&gt;https://t.co/5FenW7WUae&lt;/a&gt; &lt;a href=&quot;https://t.co/BrxkAiSE72&quot;&gt;pic.twitter.com/BrxkAiSE72&lt;/a&gt;&lt;/p&gt;&amp;mdash; o2r (@o2r_project) &lt;a href=&quot;https://twitter.com/o2r_project/status/1230482699930013697?ref_src=twsrc%5Etfw&quot;&gt;February 20, 2020&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;But Tom and Daniel also came with a mission: to jumpstart the struggling OJS developments with the help of some experiences OJS developers.
None of our team has extensive experience with PHP, so getting control over the huge OJS codebase and setting up a proper &lt;strong&gt;OJS development environment with debugging&lt;/strong&gt; was an important task they’ve been pushing aside since autumn last year.
&lt;em&gt;And we got it!&lt;/em&gt; 
[Note to self: don’t forget to enable &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;remote_enable&lt;/code&gt; and &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;remote_autostart&lt;/code&gt; for Xdebug in the file &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;/etc/php/7.3/cli/conf.d/20-xdebug.ini&lt;/code&gt; for debugging to work - then the default VSCode configuration with port &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;9000&lt;/code&gt; will just work (-:].
On top of that, Tom got a very &lt;strong&gt;helpful introduction to writing OJS plug-ins&lt;/strong&gt;, and Daniel now has a good graps on the &lt;a href=&quot;https://github.com/pkp/docker-ojs/&quot;&gt;currently developed &lt;strong&gt;Docker images for OJS&lt;/strong&gt;&lt;/a&gt;.
The Docker images are not a simple project, since the PKP team plans to support multiple webserver implementations, multiple PHP versions, and all OJS versions still in production somewhere… phew!
Daniel even &lt;a href=&quot;https://github.com/pkp/docker-ojs/pull/14&quot;&gt;opened a pull request&lt;/a&gt; and suggests a different way to support both remotely and locally built images.
This prepares us well for the moment when we want to run OJS on our own servers - in containers of course.
So the expectations were high, but eventually they were not disappointed.
Daniel was glad to see some familiar faces from the &lt;a href=&quot;https://www.ojs-de.net/&quot;&gt;OJS-de.net community&lt;/a&gt; he met at a previous workshop in Heidelberg.
The new contacts made were more just as important as the helpful practical tipps towards becoming real “OJS devs” 🐱‍💻.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Other groups at the workshop&lt;/strong&gt; reported very interesting results, for example on the connection of OJS with proper digitial archives (with promising mentions of also archiving data… and code?), more flexible publishing workflows with own tools (mentioning Pandoc, which might make these flexible pipelines a first  step towards (R) Markdown-based OJS publications ⚙️), and using search indexes such as Solr and Elasticsearch within OJS (which also have geospatial capabilities 💯).
As you can see, we’re very hopeful future collaborations will spark from these educational and entertaining encounters.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>WWU workshop on Reproducible Research</title>
   <link href="https://o2r.info/2020/02/19/wwu-workshop/"/>
   <updated>2020-02-19T00:00:00+00:00</updated>
   <id>https://o2r.info/2020/02/19/wwu-workshop</id>
   <content type="html">&lt;p&gt;Reproducible research is a topic relevant for all scientific disciplines.
We in the o2r project have a continued focus on the challenges originating in the software stacks and visualialisations for the analysis of geospatial data.
But that does not mean that our experiences may not be helpful for other disciplines.
In does also not mean that our approaches for improving research reproducibility and reusability can not profit from learning about challenges and solutions in other domains.&lt;/p&gt;

&lt;p&gt;That is why we decided to reach out to the local scientific community and talk about reproducibility.
We invited all professors and post-docs of the University of Münster (WWU) to a workshop at the Institute for Geoinformatics.
Why only seniour researchers? One goal was to start discussions about collaborating on new projects and writing proposals, and we thought this group would be interested in that.
We welcomed over 20 researchers across the full diversity of WWU, e.g., neuroscience, landscape ecology, business informatics, and psychology.
The event was held in German and all material is available &lt;a href=&quot;/wwu&quot;&gt;on the workshop website&lt;/a&gt;.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-dnt=&quot;true&quot; data-theme=&quot;light&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Learning about concepts and experiences across these communities show the many different perspectives and challenges around the ideal of &lt;a href=&quot;https://twitter.com/hashtag/reproducibility?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#reproducibility&lt;/a&gt; Now we continue in group discussions to identify common pain points and start new collaborations. &lt;a href=&quot;https://twitter.com/hashtag/interdisciplinary?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#interdisciplinary&lt;/a&gt; &lt;a href=&quot;https://t.co/tegKwBKjjo&quot;&gt;pic.twitter.com/tegKwBKjjo&lt;/a&gt;&lt;/p&gt;&amp;mdash; o2r (@o2r_project) &lt;a href=&quot;https://twitter.com/o2r_project/status/1227237659011010562?ref_src=twsrc%5Etfw&quot;&gt;February 11, 2020&lt;/a&gt;&lt;/blockquote&gt;

&lt;p&gt;We thank our colleagues for the interesting discussions and new perspectives on a topic we thought we would have a good grasp of - there’s so much more to learn!
Special thanks go to&lt;!--more--&gt; our fellow researchers who prepared short talks on their experiences and ongoing work to improve reproducibility.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-conversation=&quot;none&quot; data-dnt=&quot;true&quot; data-theme=&quot;light&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;We thank the participants for a great day with interesting discussions and plenty of looking of the rims of one&amp;#39;s own disciplines tea cups (if that makes sense). We collected creative and innovative ideas for inter/trans/cross-disciplinary projects to improve &lt;a href=&quot;https://twitter.com/hashtag/reproducibility?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#reproducibility&lt;/a&gt;. &lt;a href=&quot;https://t.co/FUccyC4AOg&quot;&gt;pic.twitter.com/FUccyC4AOg&lt;/a&gt;&lt;/p&gt;&amp;mdash; o2r (@o2r_project) &lt;a href=&quot;https://twitter.com/o2r_project/status/1230146896754364416?ref_src=twsrc%5Etfw&quot;&gt;February 19, 2020&lt;/a&gt;&lt;/blockquote&gt;

&lt;p&gt;Very special thanks go to &lt;a href=&quot;&quot;&gt;Dr. Lisanne Pauw&lt;/a&gt;, [Dr. Nils Schuhmacher], &lt;a href=&quot;&quot;&gt;Dr. Ben Stöver&lt;/a&gt;, and o2r team member &lt;a href=&quot;&quot;&gt;Daniel Nüst&lt;/a&gt;, who volunteered to write up a short story about their personal work connected with reproducible research.
These stories are published on the university website &lt;a href=&quot;https://www.uni-muenster.de/news/view.php?cmdid=10847&amp;amp;lang=en&quot;&gt;in English&lt;/a&gt; and &lt;a href=&quot;https://www.uni-muenster.de/news/view.php?cmdid=10846&amp;amp;lang=de&quot;&gt;German&lt;/a&gt;.
We hope these spark the interest of fellow scientists or even the general public.
Thanks to Kathrin Kottke from the WWU public relations team for making this happen.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-conversation=&quot;none&quot; data-dnt=&quot;true&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Four researchers contributed short stories about &lt;a href=&quot;https://twitter.com/hashtag/reproducibility?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#reproducibility&lt;/a&gt; in their fields, published now in German and English on &lt;a href=&quot;https://twitter.com/WWU_Muenster?ref_src=twsrc%5Etfw&quot;&gt;@WWU_Muenster&lt;/a&gt;&amp;#39;s news page:&lt;br /&gt;&lt;br /&gt;🇩🇪 &lt;a href=&quot;https://t.co/SZDLAdURq3&quot;&gt;https://t.co/SZDLAdURq3&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;🇬🇧🇺🇸 &lt;a href=&quot;https://t.co/ciYibkaTLp&quot;&gt;https://t.co/ciYibkaTLp&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/spatialsciences?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#spatialsciences&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/psychology?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#psychology&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/bioinformatics?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#bioinformatics&lt;/a&gt; &lt;a href=&quot;https://t.co/04GGnNeA9L&quot;&gt;pic.twitter.com/04GGnNeA9L&lt;/a&gt;&lt;/p&gt;&amp;mdash; o2r (@o2r_project) &lt;a href=&quot;https://twitter.com/o2r_project/status/1230146909458849792?ref_src=twsrc%5Etfw&quot;&gt;February 19, 2020&lt;/a&gt;&lt;/blockquote&gt;

&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

</content>
 </entry>
 
 <entry>
   <title>o2r2 project proposal publiciation</title>
   <link href="https://o2r.info/2020/02/03/o2r2-project-proposal/"/>
   <updated>2020-02-03T00:00:00+00:00</updated>
   <id>https://o2r.info/2020/02/03/o2r2-project-proposal</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;/public/images/2020-01_o2r2-proposal-titlepage.png&quot; alt=&quot;o2r2 work programme and objectives&quot; width=&quot;300&quot; class=&quot;img rightfloat&quot; /&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;/2019/04/15/o2r2-and-egu/&quot;&gt;Ten months ago&lt;/a&gt;, we announced that the o2r team received funding for a second project phase.
Today we publish our project proposal on the University of Münster’s institutional repository MIAMI: &lt;strong&gt;&lt;a href=&quot;https://doi.org/10.17879/42149626934&quot;&gt;https://doi.org/10.17879/42149626934&lt;/a&gt;&lt;/strong&gt; (&lt;a href=&quot;https://nbn-resolving.org/urn:nbn:de:hbz:6-42149629066&quot;&gt;urn:nbn:de:hbz:6-42149629066&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;We hope this publication of our proposal serves several purposes: it&lt;!--more--&gt; encourages fellow researchers to also share their plans openly (both funded and rejected), it motivates us to achieve the ambitious goals, and (we have to admit) the proposal’s indexing in search engines hopefuly leads to some attention for the o2r project and subsequent new contacts and collaborations.
Science reinvents the wheel much too often, and the o2r project team wants not only to &lt;a href=&quot;/about&quot;&gt;increase openness, transparency and reusability of research workflows&lt;/a&gt; but also in the bigger picture of research funding and building of research infrastructures.
Our perspective on the distinction between o2r and other projects described in the proposals is also the motivation behind our recent paper: &lt;a href=&quot;https://doi.org/10.1186/s41073-020-00095-y&quot;&gt;&lt;em&gt;“Publishing computational research - a review of infrastructures for reproducible and transparent scholarly communication”&lt;/em&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;&lt;strong&gt;Figure&lt;/strong&gt;: &lt;em&gt;Overview of the work programme and objectives.&lt;/em&gt;
&lt;em&gt;The table shows key barriers, how these were initially tackled during ORR, and which implementations are planned to overcome them during O2R2 (green and blue boxes).&lt;/em&gt;
&lt;em&gt;Orange boxes show how we plan to evaluate implementations and deployment. The success measures indicate how we determine success. The blue box (bottom) summarises the technical outcomes of O2R2.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;/public/images/2020-01_o2r2-proposal-figure-1.png&quot;&gt;&lt;img src=&quot;/public/images/2020-01_o2r2-proposal-figure-1.png&quot; alt=&quot;o2r2 work programme and objectives&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;The document is a shortened version of the second revision submitted in May 2018, without funding information and project planning details but with a slightly updated title page to include &lt;a href=&quot;https://en.wikipedia.org/wiki/Digital_object_identifier&quot;&gt;DOI&lt;/a&gt;, &lt;a href=&quot;https://en.wikipedia.org/wiki/Uniform_Resource_Name&quot;&gt;URN&lt;/a&gt;, and a subtitle marking the public version.
The submission underwent a single-blind peer review by experts from information science and geosciences after first submission in August 2017.
The first version originally included a thematic extension into life sciences, with a number of new collaborators at the University of Münster, and the inclusion of Python as a second supported base software.
A remaining point of critique was the description of our methodology from a research perspective.
We were lucky that the information science reviewers and ultimately the deciding council agreed in the value of the experiences made from the perspective of infrastructure development, which can only be made with a concrete practial evaluation.
The increased focus allowed us to reduce the project duration and continue with the existing approach, but also puts the remaining &lt;a href=&quot;/pilots&quot;&gt;pilots&lt;/a&gt; under time pressure.
More on the pilots soon!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>o2r @ ECMWF Workshop in Reading, GB</title>
   <link href="https://o2r.info/2019/10/21/ecmwf/"/>
   <updated>2019-10-21T00:00:00+00:00</updated>
   <id>https://o2r.info/2019/10/21/ecmwf</id>
   <content type="html">&lt;p&gt;&lt;a href=&quot;https://twitter.com/clavitolo&quot;&gt;Claudia Vitolo&lt;/a&gt; from the &lt;a href=&quot;https://www.ecmwf.int/&quot;&gt;European Centre for Medium-Range Weather Forecasts (ECMWF)&lt;/a&gt; had the brilliant idea to host a workshop about &lt;a href=&quot;https://www.ecmwf.int/en/learning/workshops/building-reproducible-workflows&quot;&gt;building reproducible workflows for earth sciences&lt;/a&gt;. It is not surprising that weather forecasts strongly depend on computational analyses, statistics, and data. Wait! Isn’t this exactly what o2r addresses? Well observed, that is certainly correct. For this reason, we were very happy to receive an invitation from Claudia for giving a keynote. But let’s start from the beginning.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://twitter.com/atrisovic?s=17&quot;&gt;Ana Trisovic&lt;/a&gt; from the Harvard University opened the workshop with an interesting keynote about the reproducibility challenges in physics and the social sciences. She also conducted a reproducibility study to investigate if R scripts stored on Dataverse are actually reproducible. Her results were similarly worrying as those reported in our paper about &lt;a href=&quot;https://www.tandfonline.com/doi/full/10.1080/13658816.2018.1508687&quot;&gt;computational reproducibility in the geosciences&lt;/a&gt;. From the 3208 R files, only 502 could be executed successfully. The remaining scripts had issues such as a wrong file directory or a missing functionality.&lt;/p&gt;

&lt;p&gt;The second keynote was given by &lt;a href=&quot;https://twitter.com/willingcarol?lang=de&quot;&gt;Carol Willing&lt;/a&gt; from &lt;a href=&quot;https://twitter.com/projectjupyter&quot;&gt;Project Jupyter&lt;/a&gt;. She argued that lives depend on scaling reproducible research and took the example of the typhoon that hit Japan recently. Her main point was that reproducible research improves prediction which is particularly necessary in the context of storms. Having reliable predictions can help people to prepare accordingly. Based on this use case, she presented some Jupyter-based tools such as Jupyter notebooks and Binder.&lt;/p&gt;

&lt;p&gt;Many other talks presented approaches to address very specific reproducibility issues. Some of these approaches build on top of Jupyter notebooks and containers which demonstrates again that these two tools are probably the right way to go for the next few years. However, the speakers did not put much focus on user-related aspects and the publication process. As a consequence, the talks were more about the technical realization and less about creating a connection between the article and the reproducible analysis. This was a nice gap for o2r to fill. &lt;a href=&quot;https://twitter.com/MarkusKonkol&quot;&gt;Markus&lt;/a&gt; presented our key concepts such as the &lt;a href=&quot;http://www.dlib.org/dlib/january17/nuest/01nuest.html&quot;&gt;Executable Research Compendium&lt;/a&gt; (ERC) and &lt;a href=&quot;https://dl.acm.org/citation.cfm?doid=3340630.3331158&quot;&gt;bindings&lt;/a&gt; and how these can be integrated into the process of publishing scientific articles.&lt;/p&gt;

&lt;p&gt;All in all, the number of talks indicates that there is some need for exchange about reproducibility in weather forecasting. This is not surprising due to the intense and often emotional discussion about climate change. Reproducible research can help to demonstrate the robustness of the results and to find errors in the analysis before publication. Hence, this way of publishing research makes it easier to counteract two popular points of attack used by climate change deniers. We hope ECMWF is going for a second edition next year!&lt;/p&gt;

&lt;p&gt;By the way, all slides and even the video recordings of the talks are available online: &lt;a href=&quot;https://events.ecmwf.int/event/116/timetable/#20191014.detailed&quot;&gt;https://events.ecmwf.int/event/116/timetable/#20191014.detailed&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;/public/images/ecmwf.jpg&quot;&gt;&lt;img src=&quot;/public/images/ecmwf.jpg&quot; alt=&quot;ecmwf&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Opening Reproducible Research with OJS</title>
   <link href="https://o2r.info/2019/10/15/Opening-Reproducible-Research-with-OJS/"/>
   <updated>2019-10-15T00:00:00+00:00</updated>
   <id>https://o2r.info/2019/10/15/Opening-Reproducible-Research-with-OJS</id>
   <content type="html">&lt;p&gt;Data and software are crucial components of research.
They go well beyond the workflows one would call &lt;em&gt;Data Science&lt;/em&gt; today. Only openly available building blocks can ensure transparency, reproducibility, and reusability of computer-based research outputs.
More and more researchers rely on small or large datasets and use analysis tools to analyse variables, create figures, and derive conclusions.
That is why the project Opening Reproducible Research (&lt;a href=&quot;https://o2r.info/&quot;&gt;&lt;em&gt;o2r&lt;/em&gt;&lt;/a&gt;) implements the concept of the Executable Research Compendium (&lt;a href=&quot;https://o2r.info/erc-spec/&quot;&gt;ERC&lt;/a&gt;) to capture all bits and pieces underlying a research article.
In a &lt;a href=&quot;/pilots&quot;&gt;pilot study&lt;/a&gt;, we plan to connect the Open Journal Systems (&lt;a href=&quot;https://pkp.sfu.ca/ojs/&quot;&gt;OJS&lt;/a&gt;) with the ERC.
On the one hand this connection enables submission, review, and publishing of &lt;a href=&quot;http://research-compendium.science/&quot;&gt;research compendia&lt;/a&gt; and ERC.
On the other hand while it leverages the publishing capabilities and workflow management of OJS.
We will implement this integration in form of an &lt;a href=&quot;https://docs.pkp.sfu.ca/learning-ojs/en/settings-website#plugins&quot;&gt;OJS plug-in&lt;/a&gt; so it becomes readily available for all maintainers of OJS instances.&lt;/p&gt;

&lt;p&gt;In this blog post &lt;a href=&quot;https://github.com/tnier01&quot;&gt;Tom&lt;/a&gt; and &lt;a href=&quot;https://orcid.org/0000-0002-0024-5046&quot;&gt;Daniel&lt;/a&gt; describe our general procedure, the first concrete plug-in idea, and the planned plug-in structure.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;o2r&lt;/em&gt; is a joint project by the Institute for Geoinformatics (&lt;a href=&quot;https://www.uni-muenster.de/Geoinformatics/en/&quot;&gt;ifgi&lt;/a&gt;) and the University and State Library (&lt;a href=&quot;https://www.ulb.uni-muenster.de/&quot;&gt;ULB&lt;/a&gt;) at the University of Münster (&lt;a href=&quot;https://www.uni-muenster.de/&quot;&gt;WWU&lt;/a&gt;).
The project is supported by the German Research Foundation (&lt;a href=&quot;https://www.dfg.de/&quot;&gt;DFG&lt;/a&gt;, see &lt;a href=&quot;/about&quot;&gt;About&lt;/a&gt; page for details).&lt;/p&gt;

&lt;h2 id=&quot;procedure&quot;&gt;Procedure&lt;/h2&gt;

&lt;p&gt;After a first collection of ideas we started concretizing them in &lt;a href=&quot;https://en.wikipedia.org/wiki/User_story&quot;&gt;user stories&lt;/a&gt;.
The main user stories concern the idea of making research compendia, such as ERC, useable in the OJS-workflow (see details in the next paragraph).
These stories may contain potentially generic features that could be realised as individual plug-ins for&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;uploading multiple submission files, even from cloud storage, including large size files and public or authenticated shares, e.g. ownCloud, Dropbox, or GitHub,&lt;/li&gt;
  &lt;li&gt;connecting articles with external data repositories (e.g. listing and preview of supplemental data published in &lt;a href=&quot;https://en.wikipedia.org/wiki/Open-access_repository&quot;&gt;Open data repositories&lt;/a&gt;),&lt;/li&gt;
  &lt;li&gt;supporting &lt;a href=&quot;https://en.wikipedia.org/wiki/Literate_programming&quot;&gt;literate programming&lt;/a&gt;-based article formats (e.g. ERC with R Markdown, Jupyter Notebooks) with rendering to HTML and/or PDF, or&lt;/li&gt;
  &lt;li&gt;seamlessly connecting articles with interactive online workspaces with reusable data and code as an alternative to static fixed articles (e.g. using &lt;a href=&quot;http://mybinder.org/&quot;&gt;Binder&lt;/a&gt;).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;However, the focus will initially be on the integration of a full ERC-based workflow into OJS.
At a later stage, parts of this integration could be the starting point for the above individual plug-ins.&lt;/p&gt;

&lt;p&gt;Based on the user stories, we then developed a few mockups (or &lt;a href=&quot;https://en.wikipedia.org/wiki/Website_wireframe&quot;&gt;wireframes&lt;/a&gt;) to get a better understanding how our ideas will likely look and to ease communication about the stories. 
The next step starts now: we develop the plug-in based on our mockups and user stories.
To make sure we’re on the right track we want to use this blog post to connect with the OJS community on our ideas and specifically search for feedback on the plans described below.&lt;/p&gt;

&lt;h2 id=&quot;user-stories&quot;&gt;User stories&lt;/h2&gt;

&lt;p&gt;The full list of user stories can be found &lt;a href=&quot;https://uni-muenster.sciebo.de/apps/onlyoffice/1513199997?filePath=%2FNiers%2FuserStories2.0_blogArticle.xlsx&quot;&gt;in this spreadsheet&lt;/a&gt;.
They are roughly sorted by priority.
We even tried to guesstimate the efforts, though we expect to be quite far off during the first few stories until we get a better understanding of developing with OJS.&lt;/p&gt;

&lt;p&gt;The following main user stories will be implemented first.
They can be grouped into stories concerning creation (inluding upload) and examination (viewing, manipulating) ERCs.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;ERC creation in OJS&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;As author I want to upload all my files (data, code, text) directly from my computer, so that I save time (not each file individually) and the complete workflow is published.&lt;/li&gt;
  &lt;li&gt;As author I want to insert the metadata for a submission at one location, so that I do not have to insert them several times.&lt;/li&gt;
  &lt;li&gt;As editor I want my authors to be able to upload an (optional “executable”) research compendium from their computer, so that data and software can be published as a unit and I can find suitable reviewers.&lt;/li&gt;
  &lt;li&gt;As editor I want there to be a review step regarding reproducibility of the article, so that the quality of reproducibility of articles in my journal increases.&lt;/li&gt;
  &lt;li&gt;As editor I want research compendia in general and ERCs to be automatically validated on the platform, so that I don’t have trouble with them and the compendia are  nevertheless complete.&lt;/li&gt;
  &lt;li&gt;As site admin I would like to install a Research Compendium Upload from my computer as a plug-in in OJS, so that I can offer this feature to authors.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;ERC examination in OJS&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;As reviewer I want to view, download, survey and manipulate the ERC, so that I can check even complex workflows without much additional effort.&lt;/li&gt;
  &lt;li&gt;As reader I want to view, download, survey and manipulate the ERC within the article page, so that I am able to understand the research work.&lt;/li&gt;
  &lt;li&gt;As editor I would like the readers of the journal to be able to view the ERC in the issue of the journal, so that the quality of the journal increases.&lt;/li&gt;
  &lt;li&gt;As site admin I want to be able to install a plug-in in OJS that allows you to view and manipulate ERCs, so that I can offer this feature to authors and reviewers.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id=&quot;erc-plug-in-for-ojs&quot;&gt;ERC plug-in for OJS&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;How do we want to realize our user stories?&lt;/em&gt;&lt;/p&gt;

&lt;h3 id=&quot;upload-executable-research-compendium&quot;&gt;Upload Executable Research Compendium&lt;/h3&gt;

&lt;p&gt;To replace a regular article with an ERC in OJS, there is of course the need to upload it.
The idea is to add a new file type for finished ERCs.
But we also want to give the user the opportunity to create a ERC during the submission process within OJS.
Therefore we plan to customize the upload process.
The user will have the option to upload the files for the ERC and then to modify ERC metadata (publication metadata, spatio-temporal metadata).
The authors will also be able to create &lt;a href=&quot;/2019/08/28/bindings/&quot;&gt;bindings&lt;/a&gt;.
The following mockup shows how we imagine the upload process of an ERC.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;/public/images/2019-10-15-Opening-Reproducible-Research-with-OJS/Mockup1.png&quot;&gt;&lt;img src=&quot;/public/images/2019-10-15-Opening-Reproducible-Research-with-OJS/Mockup1.png&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
Mockup 1.: Submit an ERC in OJS (metadata form)&lt;/p&gt;

&lt;h3 id=&quot;review-executable-research-compendium&quot;&gt;Review Executable Research Compendium&lt;/h3&gt;

&lt;p&gt;After uploading the article, the next step in the OJS workflow is the review prozess.
In this process the reviewer should be able to both download the ERC and to inspect the ERC online.
Therefore a preview is needed, which does not differ from the view the reader is finally seeing.
The preview only shows an additional link which brings the reviewer back to the review page.
In this view the user can read the main text document of the ERC (PDF or HTML), look at data and code files and figures, and manipulate a workflow with bindings.
To provide feedback to the author, a new text area “Reproducibility Review” is added to the third step “Download &amp;amp; Review” in the review stage in OJS. Here the reviewer can comment on the understandability and reproducibility of the given workflow.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;/public/images/2019-10-15-Opening-Reproducible-Research-with-OJS/Mockup2.png&quot;&gt;&lt;img src=&quot;/public/images/2019-10-15-Opening-Reproducible-Research-with-OJS/Mockup2.png&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
Mockup 2.: Examine an ERC subission (download, preview links) and write review comments (reproducibility text box)&lt;/p&gt;

&lt;h3 id=&quot;examine-executable-research-compendium&quot;&gt;Examine Executable Research Compendium&lt;/h3&gt;

&lt;p&gt;The examiniation of an ERC in OJS, i.e. the viewing of compendium files and manipulation of workflows by reviewers and readers, is a core feature of the plug-in.
The only differ in the link to get back to either the review form in the case of the reviewer or back to the article landing page in the case of the reader.
We have two two different ideas how to realize ERC examination.&lt;/p&gt;

&lt;p&gt;First, there is the possiblity to integrate it directly on the main article page.
The ERC with its file view and manipulation area is directly shown on the article page.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;/public/images/2019-10-15-Opening-Reproducible-Research-with-OJS/Mockup3.1.png&quot;&gt;&lt;img src=&quot;/public/images/2019-10-15-Opening-Reproducible-Research-with-OJS/Mockup3.1.png&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
Mockup 3.1: View of an ERC for a reader (idea 1)&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;/public/images/2019-10-15-Opening-Reproducible-Research-with-OJS/Mockup3.2.png&quot;&gt;&lt;img src=&quot;/public/images/2019-10-15-Opening-Reproducible-Research-with-OJS/Mockup3.2.png&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
Mockup 3.2: View of an ERC for a reviewer (idea 1)&lt;/p&gt;

&lt;p&gt;Second, a realization similar to &lt;a href=&quot;https://github.com/paflov/lensGalleyBits&quot;&gt;lensGalleyBits&lt;/a&gt; is imaginable.
In this case the reader is taken to a new page where can can show the regular o2r platform’s user interface.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;/public/images/2019-10-15-Opening-Reproducible-Research-with-OJS/Mockup4.1.1.png&quot;&gt;&lt;img src=&quot;/public/images/2019-10-15-Opening-Reproducible-Research-with-OJS/Mockup4.1.1.png&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
Mockup 4.1.1: View of an ERC for a reader - article view (idea 2)&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;/public/images/2019-10-15-Opening-Reproducible-Research-with-OJS/Mockup4.1.2.png&quot;&gt;&lt;img src=&quot;/public/images/2019-10-15-Opening-Reproducible-Research-with-OJS/Mockup4.1.2.png&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
Mockup 4.1.2: View of an ERC for a reader - ERC view (idea 2)&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;/public/images/2019-10-15-Opening-Reproducible-Research-with-OJS/Mockup4.2.png&quot;&gt;&lt;img src=&quot;/public/images/2019-10-15-Opening-Reproducible-Research-with-OJS/Mockup4.2.png&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
Mockup 4.2: View of an ERC for a reader (idea 2)&lt;/p&gt;

&lt;p&gt;In both cases the user has all possibilitys concerning reading the PDF of the ERC and manipulating its figures and tables.
In the first case we preserve the journal’s branding at the top of the page, which might be desirable for editors and publishers.
In the second case we only have the default o2r UI which might be easier to integrate as a standalone page.&lt;/p&gt;

&lt;h2 id=&quot;plug-in-structure&quot;&gt;Plug-in structure&lt;/h2&gt;

&lt;p&gt;We sketched a structure for our ERC plug-in.
The plug-in consists of two parts, one for the examination of ERCs and one part for the creation/upload of ERCs.
The &lt;a href=&quot;https://docs.pkp.sfu.ca/dev/plugin-guide/en/categories&quot;&gt;plug-in category&lt;/a&gt; or type probably needs to be a “generic” plug-in to realise the deep integration of ERC into many different pages of OJS.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;/public/images/2019-10-15-Opening-Reproducible-Research-with-OJS/o2r2_OJS_plug-in.png&quot;&gt;&lt;img src=&quot;/public/images/2019-10-15-Opening-Reproducible-Research-with-OJS/o2r2_OJS_plug-in.png&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
Plug-in structure of (E)RC in OJS&lt;/p&gt;

&lt;h2 id=&quot;conclusion&quot;&gt;Conclusion&lt;/h2&gt;

&lt;p&gt;We hope this post gives you a good impression of our plans.
As you may have noticed, some of the features we plan to implement for ERCs might also be interesting for OJS users who just want to upload multiple files, for journals who want to support other types of &lt;a href=&quot;https://research-compendium.science/&quot;&gt;research compendia&lt;/a&gt;, or for an OJS maintainer who wants to allow a Markdown based workflow.
We can imagine several plug-ins could be extracted from the ERC plugin &lt;a href=&quot;#procedure&quot;&gt;as described above&lt;/a&gt;, depending on time left in our schedule and interest by other OJS users/developers.
&lt;em&gt;What do you think?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Please do not hesitate to comment on this blogpost with your ideas and questions, either below or in a &lt;a href=&quot;https://forum.pkp.sfu.ca/t/opening-reproducible-research-with-ojs-plug-in/56336&quot;&gt;related thread in the PKP Community Forum&lt;/a&gt;.
We would be pleased to learn about your ideas and receive your feedback.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Markus Konkol defends PhD Thesis</title>
   <link href="https://o2r.info/2019/10/11/markus-konkol-defends-phd-thesis/"/>
   <updated>2019-10-11T00:00:00+00:00</updated>
   <id>https://o2r.info/2019/10/11/markus-konkol-defends-phd-thesis</id>
   <content type="html">&lt;p&gt;Markus Konkol successfully defended his PhD thesis, &lt;em&gt;“Publishing Reproducible Geoscientific Papers: Status quo, benefits, and opportunities”&lt;/em&gt;, today Friday Oct 11 at the Institute for Geoinformatics (&lt;a href=&quot;https://www.uni-muenster.de/Geoinformatics/en/&quot;&gt;ifgi&lt;/a&gt;) at University of Münster (&lt;a href=&quot;https://www.uni-muenster.de/&quot;&gt;WWU&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;🎉 Congratulations Markus on completing this important step in your career! 🥂&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Dr. rer. nat. Markus Konkol is pictured with his Mentor Prof. Dr. Christian Kray and the examination committee: Jun. Prof. Dr. Judith Verstegen, Prof. Dr. Edzer Pebesma, Prof. Dr. Carsten Kessler and Prof. Dr. Harald Strauß.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2019-10-11_defense-markus.jpg&quot; alt=&quot;Markus Konkol successfully defended his PhD thesis; examination committee&quot; title=&quot;Markus Konkol successfully defended his PhD thesis; examination committee&quot; width=&quot;600&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Markus has been a core o2r team member since the project’s start in January 2016.
He lead&lt;!--more--&gt; the development of the user interface for creating and examing reproducible research and conducted comprehensive reproduction studies as well as several user studies and surveys, successfully connecting the o2r project with the needs of the geoscience communities.
&lt;a href=&quot;https://scholar.google.de/citations?user=zlyQYmwAAAAJ&amp;amp;hl=de&amp;amp;oi=ao&quot;&gt;His&lt;/a&gt; &lt;a href=&quot;https://orcid.org/0000-0001-6651-0976&quot;&gt;work&lt;/a&gt; contributes great insights on the technical and individual challenges - the status quo in the geosciences - as well as incentives and solutions for making research more open and reproducible.
His concept and implementation of &lt;em&gt;bindings&lt;/em&gt; demonstrate a novel groundbreaking method for exposing the true core and value of research outputs that reach beyond geoscience applications and impact transparency, understandability, and discoverability.
Markus is a welcome &lt;a href=&quot;https://o2r.info/publications/#talks-1&quot;&gt;advocator and speaker&lt;/a&gt; on reproducible research in the geosciences at local and international events.
The o2r project is fortunate that he will continue to take down barriers for openness and reproducibility and push towards better science.&lt;/p&gt;

&lt;p&gt;Follow &lt;a href=&quot;https://twitter.com/MarkusKonkol&quot;&gt;@MarkusKonkol&lt;/a&gt; on Twitter and &lt;a href=&quot;https://github.com/MarkusKonk&quot;&gt;@MarkusKonk&lt;/a&gt; on GitHub.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>o2r on tour: eLife Sprint and JupyterHub/Binder workshop</title>
   <link href="https://o2r.info/2019/09/10/o2r-on-tour-elife-sprint-and-jupyterhub-binder-workshop/"/>
   <updated>2019-09-10T00:00:00+00:00</updated>
   <id>https://o2r.info/2019/09/10/o2r-on-tour-elife-sprint-and-jupyterhub-binder-workshop</id>
   <content type="html">&lt;!-- Tweet gif: https://giphy.com/gifs/kochstrasse-cute-sweet-plazahelden-JpLh4diVtbClvZCP70 --&gt;

&lt;p&gt;This week, the o2r team was &lt;em&gt;on tour&lt;/em&gt;.
We put our o2r tasks aside for a few days to interact with and contribute to the awesome Open Science/publishing/research community.&lt;/p&gt;

&lt;p&gt;Markus and Daniel were two of the fortunate few who&lt;!--more--&gt; were invited to participate in the &lt;strong&gt;&lt;a href=&quot;https://sprint.elifesciences.org/&quot;&gt;eLife Innovation Sprint 2019&lt;/a&gt;&lt;/strong&gt;.
Thanks eLife!
eLife is a non-profit Open Access publisher &lt;a href=&quot;https://elifesciences.org/about/innovation&quot;&gt;with a mission to innovate&lt;/a&gt; and push scholarly communication, peer review, and publication of reproducible articles to new heights.
The &lt;a href=&quot;https://twitter.com/hashtag/eLifeSprint&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;#eLifeSprint&lt;/code&gt;&lt;/a&gt; is a two-day event and brings together scientists, developers, designers, architects, thinkers, community leaders, publishers, and early career researchers to come up with relevant challenges and promising ideas for the scientific community.
It took place for the second time in Cambridge, UK, where eLife’s headquarter is located, in the welcoming &lt;a href=&quot;https://www.junction.co.uk/&quot;&gt;Cambridge Junction&lt;/a&gt;.
Just like last year, the event was excellently organised and run by eLife staff.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;And that&amp;#39;s a wrap for &lt;a href=&quot;https://twitter.com/hashtag/eLifeSprint?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#eLifeSprint&lt;/a&gt; 2019! 🎬&lt;br /&gt;&lt;br /&gt;A huge thank you to everyone involved for making this event so productive and fun! You&amp;#39;ve all been amazing! ✨❤️😁 &lt;a href=&quot;https://t.co/lAwi3pgaNY&quot;&gt;pic.twitter.com/lAwi3pgaNY&lt;/a&gt;&lt;/p&gt;&amp;mdash; eLife Innovation (@eLifeInnovation) &lt;a href=&quot;https://twitter.com/eLifeInnovation/status/1169641663549059072?ref_src=twsrc%5Etfw&quot;&gt;September 5, 2019&lt;/a&gt;&lt;/blockquote&gt;

&lt;p&gt;After introductions and pitching ideas, the participants formed into project groups and spent ~1.5 days on realising a first prototype.
You can learn about the results in the &lt;a href=&quot;https://docs.google.com/presentation/d/1dGERl3b68Crsnc2wptFjzTNkgmcYNUs6kyUqeZN48GE/edit#slide=id.g3d962427da_0_0&quot;&gt;“time to shine”&lt;/a&gt; presentation and on social media under &lt;a href=&quot;https://twitter.com/search?q=%23eLifeSprint%20%23TimeToShine&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;#eLifeSprint #timetoshine&lt;/code&gt;&lt;/a&gt;: an Open Science card game, a user interface for generating citation files for software, extracting data from text such as the used instruments, a prototype for discovering preprints from authors with underrepresented backgrounds, or a template project for running a journal on GitHub, to name just a few.
Daniel and Markus really enjoyed the event and contributed with their developer skills (containers, UI development, eating cake) to several projects.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-dnt=&quot;true&quot; data-theme=&quot;light&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;&lt;a href=&quot;https://twitter.com/hashtag/TimeToShine?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#TimeToShine&lt;/a&gt;: Ankit, Stephen, Daniel have made a UI prototype on GitHub and Docker Hub, worked on UI development for Binder, written case studies and more principles for CODECHECK, as well as helping others with Docker projects at the &lt;a href=&quot;https://twitter.com/hashtag/eLifeSprint?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#eLifeSprint&lt;/a&gt; &lt;a href=&quot;https://t.co/YJWrsvqWkN&quot;&gt;pic.twitter.com/YJWrsvqWkN&lt;/a&gt;&lt;/p&gt;&amp;mdash; eLife Innovation (@eLifeInnovation) &lt;a href=&quot;https://twitter.com/eLifeInnovation/status/1169624391442997249?ref_src=twsrc%5Etfw&quot;&gt;September 5, 2019&lt;/a&gt;&lt;/blockquote&gt;

&lt;blockquote class=&quot;twitter-tweet&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Team &lt;a href=&quot;https://twitter.com/hashtag/SoftwareCitation?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#SoftwareCitation&lt;/a&gt; ready for &lt;a href=&quot;https://twitter.com/hashtag/TimeToShine?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#TimeToShine&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/eLifeSprint?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#eLifeSprint&lt;/a&gt; &lt;a href=&quot;https://twitter.com/eLifeInnovation?ref_src=twsrc%5Etfw&quot;&gt;@eLifeInnovation&lt;/a&gt; &lt;a href=&quot;https://twitter.com/MarkusKonkol?ref_src=twsrc%5Etfw&quot;&gt;@MarkusKonkol&lt;/a&gt; Sarthak, me &lt;a href=&quot;https://twitter.com/eScienceCenter?ref_src=twsrc%5Etfw&quot;&gt;@eScienceCenter&lt;/a&gt; Jen &lt;a href=&quot;https://twitter.com/ELIXIREurope?ref_src=twsrc%5Etfw&quot;&gt;@ELIXIREurope&lt;/a&gt; , Melissa &lt;a href=&quot;https://twitter.com/eLife?ref_src=twsrc%5Etfw&quot;&gt;@eLife&lt;/a&gt; , Sarala &lt;a href=&quot;https://twitter.com/datacite?ref_src=twsrc%5Etfw&quot;&gt;@datacite&lt;/a&gt; &lt;a href=&quot;https://t.co/jxjCDLFRIs&quot;&gt;pic.twitter.com/jxjCDLFRIs&lt;/a&gt;&lt;/p&gt;&amp;mdash; Mateusz Kuzak (@matkuzak) &lt;a href=&quot;https://twitter.com/matkuzak/status/1169625245302579201?ref_src=twsrc%5Etfw&quot;&gt;September 5, 2019&lt;/a&gt;&lt;/blockquote&gt;

&lt;p&gt;While it was a little disappointing that Markus’ idea of a JavaScript image comparison library (hopefully more on that soon!) did gain attention but did not end up in a team, the sprint was a great occasion to give back to the community, to broaden the horizon beyond the o2r project, to make new acquaintances, and to get to know potential collaborators.
&lt;em&gt;And we did all that!&lt;/em&gt;&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;After the #eLifeSprint, Daniel hopped on a plane to Oslo, Norway, to participate in a &lt;strong&gt;&lt;a href=&quot;https://binderhub.readthedocs.io/en/latest/&quot;&gt;Binder/BinderHub&lt;/a&gt;/&lt;a href=&quot;https://mybinder.org/&quot;&gt;MyBinder.org&lt;/a&gt;/&lt;a href=&quot;https://jupyter.org/hub&quot;&gt;JupyterHub&lt;/a&gt;&lt;/strong&gt; event generously organised by &lt;a href=&quot;https://www.simula.no/&quot;&gt;Simula&lt;/a&gt;.
The event allowed long-term collaborators to meet in person, some for the first time, for some effective joint work.
Participants happily hacked away on their own or formed discussion groups on specific topics for a few hours before taking on a new challenge.
Ten to twelve developers of diverse backgrounds filled a hotel meeting room and turned coffee and delicious catering into pull requests, issues, and hackpads with new ideas and solutions in the Binder/Jupyter universe. 
It was a great experience to get to know the friendly faces and delightful personalities behind GitHub usernames.
Daniel enjoyed participating in the discussions and picking the brains of the core developers of BinderHub and repo2docker, and the maintainers of mybinder.org.
He was able to contribute a &lt;a href=&quot;https://github.com/jupyter/repo2docker/pull/788&quot;&gt;few&lt;/a&gt; &lt;a href=&quot;https://github.com/jupyter/repo2docker/pull/778&quot;&gt;pull&lt;/a&gt; &lt;a href=&quot;https://github.com/jupyter/repo2docker/pull/785&quot;&gt;request&lt;/a&gt; to &lt;a href=&quot;https://repo2docker.readthedocs.io/en/latest/&quot;&gt;repo2docker&lt;/a&gt; and enjoyed the discussions on future directions of the core tool in the Binderverse, such as a new user interface (a must to make BinderHub even more like magic), pinning the repo2docker version (a must for reproducibility) and re-enabling composability for all &lt;a href=&quot;https://repo2docker.readthedocs.io/en/latest/config_files.html&quot;&gt;supported configurations&lt;/a&gt; (a must for many users).&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;My kind of crowd 🙇‍♂️🙇‍♀️! &lt;a href=&quot;https://t.co/q8fvImQnEL&quot;&gt;https://t.co/q8fvImQnEL&lt;/a&gt;&lt;/p&gt;&amp;mdash; Binder Team (@mybinderteam) &lt;a href=&quot;https://twitter.com/mybinderteam/status/1170740818442956800?ref_src=twsrc%5Etfw&quot;&gt;September 8, 2019&lt;/a&gt;&lt;/blockquote&gt;

&lt;p&gt;&lt;em&gt;Thanks to all participants for making the meeting so much fun and educational.&lt;/em&gt;
Daniel’s participation will surely help to pave the way for a Binder-powered scalable infrastructure for the &lt;a href=&quot;https://o2r.info/pilots/&quot;&gt;o2r pilots&lt;/a&gt; and for &lt;a href=&quot;https://codecheck.org.uk/&quot;&gt;CODE CHECK&lt;/a&gt;.
You can learn more about the numerous tasks tackled in the sprint in this HackMD pad: &lt;a href=&quot;https://hackmd.io/N-uffNhvRdOgt1OvTuoq5w?view&quot;&gt;https://hackmd.io/N-uffNhvRdOgt1OvTuoq5w?view&lt;/a&gt;&lt;/p&gt;

&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

</content>
 </entry>
 
 <entry>
   <title>Why PDFs are not suitable for communicating (geo)scientific results</title>
   <link href="https://o2r.info/2019/08/28/bindings/"/>
   <updated>2019-08-28T00:00:00+00:00</updated>
   <id>https://o2r.info/2019/08/28/bindings</id>
   <content type="html">&lt;p&gt;In 2016, Dottori et al. published a &lt;a href=&quot;https://www.nat-hazards-earth-syst-sci.net/16/2577/2016/&quot;&gt;paper&lt;/a&gt; about a flood damage model. The model calculates the damage costs caused by a flood event, e.g., for repairing buildings or cleaning. This model is based on a number of parameters, such as &lt;strong&gt;flow velocity&lt;/strong&gt; and &lt;strong&gt;flood duration&lt;/strong&gt;. In the paper, the authors discuss a scenario in which a flood has a velocity of 2m/s and a duration of 24 hours. The resulting damage costs are shown in a figure and also alternative values are discussed in the text. This is where the paper format, i.e. a PDF file, is limited. A mere format change does not help - a static HTML rendering has the same issues. Describing within the article text how changes to the parameter set affect the damage costs might be possible possible but is surely a daunting and time-consuming task. Authors need to find the right words to briefly describe these changes, and readers need to imagine how the results change.&lt;/p&gt;

&lt;p&gt;Wouldn’t it be nice if readers, while reading the article, could also simply change the parameters in order to see how the figure changes? We recently published an article on how to achieve this by &lt;a href=&quot;https://doi.org/10.1145/3331158&quot;&gt;“Creating Interactive Scientific Publications using Bindings”&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;A &lt;strong&gt;binding&lt;/strong&gt; describes which source code lines and data subsets were used to produce an individual computational result, such as a figure, table, or number in the text. A binding explicitly refers to single parameters in the code which influence the result. By specifying a user interface widget (e.g. a slider) for a parameter, a binding can then be used to create an interactive figure.&lt;/p&gt;

&lt;p&gt;Ok, cool, that sounds just awesome, but how does it look like? Let’s check both perspectives, the author who creates a binding, and the reader who uses the interactive figure. Just four steps are needed to create a binding for an interactive figure:&lt;/p&gt;
&lt;ol&gt;
  &lt;li&gt;Specify the result, e.g. “Figure 3”&lt;/li&gt;
  &lt;li&gt;Mark the plot function in the code that creates the figure. From that plot function we automatically extract all relevant code lines, at least we plan to do so since this feature is currently under development.&lt;/li&gt;
  &lt;li&gt;Mark the parameter that should be made interactive, e.g. “duration” or “velocity”&lt;/li&gt;
  &lt;li&gt;Configure the user interface widget, e.g. a slider
That’s how authors can create interactive figures easily. Please note that we did not yet fully implement the functionality for specifying data subsets.&lt;/li&gt;
&lt;/ol&gt;

&lt;iframe width=&quot;900&quot; height=&quot;600&quot; src=&quot;https://www.youtube-nocookie.com/embed/7CB-K1cEKYM&quot; frameborder=&quot;0&quot; allow=&quot;encrypted-media&quot; allowfullscreen=&quot;&quot;&gt;&lt;/iframe&gt;

&lt;p&gt;The readers’ view was integrated into the implementation discussed in an article published last year (&lt;a href=&quot;https://doi.org/10.1080/15230406.2018.1512421&quot;&gt;“In-depth examination of spatio-temporal figures”&lt;/a&gt;) and the previous &lt;a href=&quot;https://o2r.info/2019/07/15/4plus1incentives/&quot;&gt;blog post&lt;/a&gt;. 
The left side shows the static version of the paper. On the right side, readers can use the slider to change the two parameters velocity and duration. The changes are immediately reflected in the figure. Since it might be difficult to spot differences, we also implemented a simple view to compare two figures created through parameter manipulation by the reader.&lt;/p&gt;

&lt;iframe width=&quot;900&quot; height=&quot;600&quot; src=&quot;https://www.youtube-nocookie.com/embed/jAAgI7aLMik&quot; frameborder=&quot;0&quot; allow=&quot;encrypted-media&quot; allowfullscreen=&quot;&quot;&gt;&lt;/iframe&gt;

&lt;p&gt;Such explorable papers are the next generation of scholarly communications.  Being able to provide interactive figures is beneficial for authors, who can explain visually how changes to the parameters affect the figure, and for readers, who better understand complex models. They are also a sign of quality for the analysis workflow, because they demonstrate that all pieces (data, software) needed to create the figure are encapsulated in the Executable Research Compendium (&lt;a href=&quot;https://o2r.info/results/&quot;&gt;ERC&lt;/a&gt;) on which the bindings are based.&lt;/p&gt;

&lt;p&gt;By the way, we also presented the paper at the Engineering Interactive Computing Systems Conference 2019 in Valencia. Of course, the slides are available online on &lt;a href=&quot;https://zenodo.org/record/3253692#.XWd9K99fjmE&quot;&gt;Zenodo&lt;/a&gt;.&lt;/p&gt;

</content>
 </entry>
 
 <entry>
   <title>4+1 quick incentives of open reproducible research</title>
   <link href="https://o2r.info/2019/07/15/4plus1incentives/"/>
   <updated>2019-07-15T00:00:00+00:00</updated>
   <id>https://o2r.info/2019/07/15/4plus1incentives</id>
   <content type="html">&lt;p&gt;A few months ago, o2r team member &lt;a href=&quot;https://orcid.org/0000-0001-6651-0976&quot;&gt;Markus&lt;/a&gt; published the article &lt;a href=&quot;https://doi.org/10.1080/15230406.2018.1512421&quot;&gt;“In-depth examination of spatiotemporal figures in open reproducible research”&lt;/a&gt; in the journal &lt;a href=&quot;https://www.tandfonline.com/toc/tcag20/current&quot;&gt;Cartography and Geographic Information science&lt;/a&gt;. Our goal was to identify a set of concrete incentives for authors to publish open reproducible research, and for readers to engage with it. Based on semi-structured interviews, a focus group discussion, and an online survey with geoscientists, we summarised the incentives in a four-step workflow for readers who work with scientific papers (see figure below). Let’s see what these four workflow steps are who their &lt;strong&gt;+1&lt;/strong&gt; is.&lt;/p&gt;

&lt;h2 id=&quot;discovery&quot;&gt;Discovery&lt;/h2&gt;

&lt;p&gt;By having all materials available in a publicly accessible way, we obtain additional capabilities to search for scientific papers which go beyond today’s keyword-based search engines. The materials underlying a paper include a bunch of information which can be extracted automatically (see &lt;a href=&quot;https://github.com/o2r-project/o2r-meta&quot;&gt;o2r-meta&lt;/a&gt;) and put on display (see &lt;a href=&quot;https://doi.org/10.31223/osf.io/xtsqh&quot;&gt;geospatial data science badges&lt;/a&gt;) to improve discovery. You were wondering how to use a specific software library in your R code in practice? Just search for papers with computations based on that library. Spatial information, temporal properties, models, parameters - this all becomes searchable which is good for readers, and findable which is good for the impact of authors.&lt;/p&gt;

&lt;h2 id=&quot;inspection&quot;&gt;Inspection&lt;/h2&gt;

&lt;p&gt;Once researchers found a suitable paper, they can continue with inspecting it. Parallel to reading the actual text of the paper, they can inspect the underlying source code and data. This is of particular interest for reviewers who want to check how the authors achieved the results reported in the paper. By the way, more and more reviewers &lt;a href=&quot;https://twitter.com/edzerpebesma/status/1130055583489581057&quot;&gt;reject papers&lt;/a&gt; reporting on computational results that do not contain code or data - Think about it! Again, this step is not only beneficial for readers and reviewers but also for the authors who can make their research workflows more reusable resulting in a higher research impact.&lt;/p&gt;

&lt;h2 id=&quot;manipulation&quot;&gt;Manipulation&lt;/h2&gt;

&lt;p&gt;Many results in scientific papers are based on computational analyses. These calculations often include parameters which were set in a specific way by the author of the article. For example, a model that computes the damage costs caused by a flood strongly depends on the flow velocity (see &lt;a href=&quot;https://doi.org/10.5194/nhess-16-2577-2016&quot;&gt;Dottori et al., 2016&lt;/a&gt;) of the water. It is difficult to show in static papers, how changes to the flow velocity affect the final damage costs. One idea to solve this issue is an interactive figure. Readers and Reviewers can, for example, use a slider to change the parameter value interactively.&lt;/p&gt;

&lt;h2 id=&quot;substitution&quot;&gt;Substitution&lt;/h2&gt;

&lt;p&gt;Finally, other researchers can substitute, for instance, the original dataset by an own compatible dataset. This opportunity not only makes other researchers’ life easier as they can reuse existing materials, but might also bring citations, co-authorships, and cooperations for the original author.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;https://media.giphy.com/media/2YpQm0zBnv0I86uAa6/giphy.gif&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;h2 id=&quot;1&quot;&gt;+1&lt;/h2&gt;

&lt;p&gt;So who is this workflow steps’ +1?&lt;/p&gt;

&lt;p&gt;It’s &lt;strong&gt;understanding&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;In the paper, we argue that each of the steps contribute to a reader’s understanding in a better way than traditional papers could do. Already during the inspection phase, researchers get to know about spatio-temporal properties, used functions and so on. During inspection, they can see how the authors produced a specific figure, experience the data from the analysts perspective, and finally understand how the authors came to their conclusions. By manipulating parameters, readers and reviewers can comprehend better how the model actually works. Substituting datasets provides insights into the applicability to other settings and evaluates robustness of an approach. A key requirement for the realization of understanding is being able to compare, for example, the original figure with one resulting from parameter manipulation.&lt;/p&gt;

&lt;p&gt;You think that this was nice to read but difficult to realize? Correct, it is. And that is why the o2r team works hard to make the five incentives easier to achieve and received funding for two more years.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;/public/images/workflow.jpeg&quot;&gt;&lt;img src=&quot;/public/images/workflow.jpeg&quot; alt=&quot;workflow&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Reproducible Research and Geospatial Badges at AGILE 2019 conference in Limassol</title>
   <link href="https://o2r.info/2019/07/01/AGILE-2019-Limassol/"/>
   <updated>2019-07-01T00:00:00+00:00</updated>
   <id>https://o2r.info/2019/07/01/AGILE-2019-Limassol</id>
   <content type="html">&lt;p&gt;Last week o2r team member &lt;a href=&quot;https://orcid.org/0000-0002-0024-5046&quot;&gt;Daniel&lt;/a&gt; went to &lt;a href=&quot;https://www.sporcle.com/blog/2018/12/is-cyprus-in-europe-or-asia/&quot;&gt;Asia (or not?)&lt;/a&gt; to help a European conference with the transformation towards reproducible research.
&lt;em&gt;How?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The &lt;a href=&quot;https://agile-online.org/conference-2019/&quot;&gt;2019&lt;/a&gt; edition of the &lt;a href=&quot;https://agile-online.org/past-conferences-and-proceedings/&quot;&gt;annual conference&lt;/a&gt; of the &lt;a href=&quot;https://agile-online.org/&quot;&gt;Association of Geographic Information Laboratories in Europe’s&lt;/a&gt; (AGILE) took place in &lt;a href=&quot;https://www.openstreetmap.org/node/9331795#map=14/34.6803/33.0547&quot;&gt;Limassol, Cyprus&lt;/a&gt;.
It was excellently &lt;a href=&quot;https://agile-online.org/conference-2019/committees-2019/&quot;&gt;organised&lt;/a&gt; at the &lt;a href=&quot;https://www.cut.ac.cy/&quot;&gt;Cyprus University of Technology&lt;/a&gt; and consisted of a pre-conference day of workshops and &lt;a href=&quot;https://agile-online.org/conference-2019/programme-2019/accepted-papers-and-posters-2019&quot;&gt;three days of talks and posters&lt;/a&gt; across the full breadth of GI Science.&lt;/p&gt;

&lt;p&gt;On the first day, Daniel contributed to the organisation of the third workshop in the “Reproducible Research @ AGILE” &lt;a href=&quot;https://o2r.info/reproducible-agile/&quot;&gt;series of workshops&lt;/a&gt;.
Adjusting the scope of the workshop after the &lt;a href=&quot;/2017/05/10/o2r-at-AGILE/&quot;&gt;first&lt;/a&gt; &lt;a href=&quot;/2018/06/21/agile-2018-pre-conference-workshop-report/&quot;&gt;two&lt;/a&gt; iterations, the participants&lt;!--more--&gt; learned first about the basics of reproducibility before being split up into a “beginners” and “advanced” group.
The former continued with practical experiences in reproducing a tailored small manuscript with data and code, while the latter took on real world papers in a reproduction sprint.
Starting only with a DOI, the participants skimmed real articles for practical instructions and shared how far they got after only 30 minutes.
The results were mixed, as it could be expected, but the lessons that could be drawn were already very educational and could be connected directly with concrete steps towards preproducibility.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;&lt;a href=&quot;https://twitter.com/hashtag/agileconf2019?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#agileconf2019&lt;/a&gt; starting today in ☀️ Limassol with workshops. &lt;a href=&quot;https://twitter.com/f_ostermann?ref_src=twsrc%5Etfw&quot;&gt;@f_ostermann&lt;/a&gt; is kicking things off at our &lt;a href=&quot;https://twitter.com/hashtag/rragile19?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#rragile19&lt;/a&gt; workshop on reproducible research! &lt;a href=&quot;https://twitter.com/hashtag/openscience?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#openscience&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/reproducibleresearch?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#reproducibleresearch&lt;/a&gt; &lt;a href=&quot;https://t.co/SecPmEFl6z&quot;&gt;pic.twitter.com/SecPmEFl6z&lt;/a&gt;&lt;/p&gt;&amp;mdash; Daniel Nüst (@nordholmen) &lt;a href=&quot;https://twitter.com/nordholmen/status/1140507048175706112?ref_src=twsrc%5Etfw&quot;&gt;17. Juni 2019&lt;/a&gt;&lt;/blockquote&gt;

&lt;p&gt;After lunch, the groups joined again for getting to know the &lt;a href=&quot;https://osf.io/c8peu/&quot;&gt;&lt;em&gt;AGILE Reproducible Paper Guidelines&lt;/em&gt;&lt;/a&gt;.
The guidelines were developed in online collaboration and a recent expert meeting at TU Delft (see &lt;a href=&quot;https://osf.io/8d6yt/&quot;&gt;report&lt;/a&gt;).
They require authors to be transparent about the underlying building blocks of their work by adding a &lt;em&gt;Data and Software Availability&lt;/em&gt; section.
Beyond this minimal requirement of transparency, the guidelines intent to nudge authors towards higher degrees of reproducibility with concrete steps and recommendations for both data and software.
The steps are illustrated by examples from the GI Science domain.
&lt;a href=&quot;https://osf.io/phmce/&quot;&gt;Leave your feedback about the guidelines OSF&lt;/a&gt;!
The ensuing discussion about the challenges, opportunities, and ethics of reproducible research made clear the participants were serious on their way to becoming experts in RR.
They continued on this path in the final session, in which both groups took on the role of an author and applied practices of Open Science and reproducible research.
Find all workshop material online at &lt;a href=&quot;https://osf.io/d9kcr/&quot;&gt;https://osf.io/d9kcr/&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Besides the workshop, the RR@AGILE team advertised and sought feedback on the guidelines in many small discussions and with a &lt;a href=&quot;https://osf.io/y2rk4/&quot;&gt;dedicated poster&lt;/a&gt;.
The feedback will be incorporated into a first release of the guidelines in the coming weeks, just in time for the call for papers for the &lt;a href=&quot;https://twitter.com/0mgould/status/1141658244311638016&quot;&gt;next AGILE conference&lt;/a&gt; in &lt;a href=&quot;https://www.openstreetmap.org/node/31376615#map=13/35.5141/24.0246&quot;&gt;Chania, Crete&lt;/a&gt;!
The RR@AGILE team is proud that the AGILE council and next year’s organising team support a transformation towards reproducible research publications and looks forward to working with authors, reviewers and organisers to making the move a success.&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;On the second day of the conference, Daniel presented the short paper &lt;em&gt;“Guerrilla Badges for Reproducible Geospatial Data Science”&lt;/em&gt;.
The paper is &lt;a href=&quot;/2017/09/12/reproducible-research-badges/&quot;&gt;based on&lt;/a&gt; the work of a project seminar at the Institute for Geoinformatics from 2017, which explains the long list of co-authors.
The article demonstrates how and what kind of novel badges can be created based on executable research compendia (&lt;a href=&quot;https://o2r.info/erc-spec/&quot;&gt;ERC&lt;/a&gt;) and how they can be distributed on the web.
The full postprint of the peer-reviewed article is available on &lt;a href=&quot;https://doi.org/10.31223/osf.io/xtsqh&quot;&gt;EarthArXiv&lt;/a&gt; and it contains links to the related software projects.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Just presented short paper at &lt;a href=&quot;https://twitter.com/hashtag/agileconf2019?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#agileconf2019&lt;/a&gt; - Thanks the &lt;a href=&quot;https://twitter.com/hashtag/SDI?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#SDI&lt;/a&gt; session participants &amp;amp; fun questions. Slides: &lt;a href=&quot;https://t.co/N1OMj3iNJv&quot;&gt;https://t.co/N1OMj3iNJv&lt;/a&gt; Paper (postprint w/ DOI pending): &lt;a href=&quot;https://t.co/gvkalcchHt&quot;&gt;https://t.co/gvkalcchHt&lt;/a&gt; Reproduction package: &lt;a href=&quot;https://t.co/SC4i99pk5l&quot;&gt;https://t.co/SC4i99pk5l&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/badges?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#badges&lt;/a&gt; &lt;a href=&quot;https://t.co/Uyv8jyIAUS&quot;&gt;pic.twitter.com/Uyv8jyIAUS&lt;/a&gt;&lt;/p&gt;&amp;mdash; Daniel Nüst (@nordholmen) &lt;a href=&quot;https://twitter.com/nordholmen/status/1140959648494866432?ref_src=twsrc%5Etfw&quot;&gt;18. Juni 2019&lt;/a&gt;&lt;/blockquote&gt;

&lt;hr /&gt;

&lt;p&gt;As always, AGILE was a delightful conference with many engaging discussions which may have started more collaborations to foster reproducible research.
Daniel also continued the text analysis of all AGILE papers for this year’s conference.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Obviously this needs advertising, as no one spotted the error in the &amp;quot;trends&amp;quot; analysis: Increase in &amp;quot;reproducibility&amp;quot; keywords can be largely awarded to mine and &lt;a href=&quot;https://twitter.com/pjkedron?ref_src=twsrc%5Etfw&quot;&gt;@pjkedron&lt;/a&gt;&amp;#39;s papers. Still lots of data, algorithms, and processing going on - clear need for reproducibility! &lt;a href=&quot;https://t.co/W4FMhtm3as&quot;&gt;pic.twitter.com/W4FMhtm3as&lt;/a&gt;&lt;/p&gt;&amp;mdash; Daniel Nüst (@nordholmen) &lt;a href=&quot;https://twitter.com/nordholmen/status/1144237629027835904?ref_src=twsrc%5Etfw&quot;&gt;27. Juni 2019&lt;/a&gt;&lt;/blockquote&gt;

&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;A small rise in “reproducibility” terms can be traced to a couple of articles on the topic.
Yet the stronger trend prevails: AGILE papers talk about data, processing, and algorithms - so the transformation for more transparency and reproducibility continues to be relevant.&lt;/p&gt;

&lt;p&gt;Find the &lt;a href=&quot;https://rpubs.com/nuest/reproducible-agile-text-analysis&quot;&gt;full analysis online on RPubs&lt;/a&gt; and see the &lt;a href=&quot;https://github.com/nuest/reproducible-research-and-giscience/blob/master/agile-rr-yearly-textanalysis.Rmd&quot;&gt;source code&lt;/a&gt; on GitHub.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>o2r2 @ Conquaire Workshop</title>
   <link href="https://o2r.info/2019/06/27/o2r2-and-conquaire/"/>
   <updated>2019-06-27T00:00:00+00:00</updated>
   <id>https://o2r.info/2019/06/27/o2r2-and-conquaire</id>
   <content type="html">&lt;p&gt;Now that we have two more years to work on open reproducible research (see our last &lt;a href=&quot;https://o2r.info/2019/04/15/o2r2-and-egu/&quot;&gt;blog post&lt;/a&gt;), there is also some space for an exchange with related projects and to explore potential new collaborations. We were thus very happy to receive an invitation from the &lt;a href=&quot;https://conquaire.uni-bielefeld.de/about/&quot;&gt;Conquaire&lt;/a&gt; project at the University of Bielefeld for the workshop on &lt;a href=&quot;https://uni-bielefeld.de/(en)/conquaire/reproducibility-workshop/&quot;&gt;data quality and reproducibility&lt;/a&gt; (03.04.2019). Conquaire started about the same time as o2r and strives for similar goals, i.e. assisting scholars in making their research results reproducible and reusable. The workshop was located at the Center for Interdisciplinary Research in a very nice room that looked a bit like the United Nations headquarter - so it was good practice for the bigger goals we have in mind.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;/public/images/o2rconquaire.jpg&quot;&gt;&lt;img src=&quot;/public/images/o2rconquaire.jpg&quot; alt=&quot;room&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.sc.cit-ec.uni-bielefeld.de/de/team/philipp-cimiano/&quot;&gt;Prof. Dr. Philipp Cimiano&lt;/a&gt; gave the first talk of the day. He presented &lt;!--more--&gt;the general Conquaire approach which focuses on storing all materials in a GitLab repository and running checks with the help of continuous integration based on &lt;a href=&quot;https://jenkins.io/&quot;&gt;Jenkins&lt;/a&gt;. Researchers can thus create an incremental publication where each  git commit triggers and automatic validation process. They also had a promising number of use cases. However, similar to us, they struggled a bit with the amount of effort needed from authors to make research reproducible.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://www.ub.uni-bielefeld.de/~cpietsch/&quot;&gt;Christian Pietsch&lt;/a&gt; then gave a quick introduction into versioning tools such as GitLab and which benefits users get. I particularly liked his answer to the question from the audience if the Conquaire approach is also feasible with licensed software: Use free open source software! It’s that easy.&lt;/p&gt;

&lt;p&gt;Afterwards, Conquaire team member Fabian Herrman talked about their validation approach by using continuous integration (&lt;a href=&quot;https://www.ub.uni-bielefeld.de/div/kwi_vortraege/2019-04-12_UB-Kolloquium_Conquaire_qc_herrmann.pdf&quot;&gt;Slides&lt;/a&gt;). They check, for example, if all files are available (including readme and license) and convey the result in two ways: First, by assigning a badge to the repository and second, by emailing the author of the repository.&lt;/p&gt;

&lt;p&gt;The following talks were about &lt;strong&gt;F&lt;/strong&gt;indable, &lt;strong&gt;A&lt;/strong&gt;ccessible, &lt;strong&gt;I&lt;/strong&gt;nteroperable, and &lt;strong&gt;R&lt;/strong&gt;eusable data principles (by Silvia Wissel and Amrapali Zaveri) and the Jupyter Notebook, which was used in the context of history science by Malte Vogl. One benefit of Jupyter notebooks he mentioned stuck with us: it is also readable when the base software does not exist anymore. This is also one of the essential advantages of the Dockerfiles and R Markdown documents used in our executable research compendia (ERCs).&lt;/p&gt;

&lt;p&gt;Last but not least, we were allowed to present our approach and what we plan to achieve in the next two years. The slides are available online: &lt;a href=&quot;https://doi.org/10.5281/zenodo.2628278&quot;&gt;https://zenodo.org/record/2628278&lt;/a&gt;.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>o2r2 - Putting ERC into practice</title>
   <link href="https://o2r.info/2019/04/15/o2r2-and-egu/"/>
   <updated>2019-04-15T00:00:00+00:00</updated>
   <id>https://o2r.info/2019/04/15/o2r2-and-egu</id>
   <content type="html">&lt;p&gt;&lt;em&gt;The o2r project’s journey continues.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/o2r2-logo.png&quot; alt=&quot;o2r2 logo&quot; width=&quot;300&quot; class=&quot;img rightfloat&quot; /&gt;
On April 1st 2019 the o2r team started into a new phase (&lt;em&gt;“o2r2”&lt;/em&gt;).
In the next 30 months we plan to put our prototypes to the test with &lt;em&gt;real articles&lt;/em&gt;, of course not without considerably improving them beforehand.&lt;/p&gt;

&lt;p&gt;As detailed in the University of Münster’s press releases (&lt;a href=&quot;https://www.uni-muenster.de/news/view.php?cmdid=10183&amp;amp;lang=en&quot;&gt;English&lt;/a&gt;, &lt;a href=&quot;https://www.uni-muenster.de/news/view.php?cmdid=10182&quot;&gt;German&lt;/a&gt;), we are&lt;!--more--&gt;fortunate to collaborate with publishers to achieve the following objectives:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Use ERCs for actual scientific publications in &lt;strong&gt;&lt;a href=&quot;/pilots&quot;&gt;pilot studies&lt;/a&gt;&lt;/strong&gt; with original research manuscripts in a scholarly peer review&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Eliminate barriers&lt;/strong&gt; for using ERCs as part of a publishing process&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Evaluate&lt;/strong&gt; concept and pilots with user studies and monitoring to understand the costs and benefits of ERC-based authoring, publishing, and reading&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href=&quot;/public/images/2019-04-15_platform-pr.png&quot;&gt;&lt;img src=&quot;/public/images/2019-04-15_platform-pr.png&quot; alt=&quot;o2r platform mockup&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;
This is how a scientific publication can be presented in the future: on the left is the original publication, on the right the readers can work with the research data themselves. © o2r - based on &lt;a href=&quot;https://doi.org/10.5194/nhess-16-2577-2016&quot;&gt;F. Dottori et al./ Nat. HazardsEarth Syst. Sci.&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;As the official press statement was edited for brevity, we’d like to use the opportunity to extend on it here:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;The project “Opening Reproducible Research II” (o2r2) will be supported by the German Research Foundation (&lt;a href=&quot;https://www.dfg.de/en/&quot;&gt;DFG&lt;/a&gt;) under the umbrella of the programme for Library Services and Information Systems (&lt;a href=&quot;https://www.dfg.de/en/research_funding/programmes/infrastructure/lis/index.html&quot;&gt;LIS&lt;/a&gt;).
Building on the results of the predecessor project, it will test, evaluate, and further develop solutions for improving reproducibility of research results in practice over the next 30 months.
The o2r project will conduct three pilot studies.
The Open Access publisher &lt;a href=&quot;https://publications.copernicus.org/&quot;&gt;&lt;em&gt;Copernicus Publications&lt;/em&gt;&lt;/a&gt; and a large commercial publisher could be won for the project to conduct two pilot studies in the form of special issues for scientific journals, in which classic articles will be enriched with interactive and transparent analyses.
In a third pilot, an open source software for the publication of scientific journals, Open Journal Systems by the Public Knowledge Project (&lt;a href=&quot;https://pkp.sfu.ca/ojs/&quot;&gt;OJS by PKP&lt;/a&gt;), which is widely used in the scientific community, will be connected to the o2r reproducibility service and piloted at the ULB Münster together with researchers and students from the geosciences.
Developments for OJS will be contributed to the global and national communities, including &lt;a href=&quot;http://www.ojs-de.net/&quot;&gt;OJS-de.net&lt;/a&gt;.
These pilots will be accompanied by various evaluations: with the help of authors, reviewers, and students, the transformation potential of reproducible scientific articles will be investigated.
A focus lies on analyses based on geospatial data and the programming language R.
Futhermore, the operation provides relevant insights into the costs and efforts for contemporary publishing of and interaction with data-based scientific research.
All specifications and tools of o2r2 are published under free licenses and where possible are realised as contributions to existing Open Source projects.
The project’s developments and results provide building blocks and concepts for a future infrastructure for enhanced scholarly communication and academic publications.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;We realise these goals are ambitious, but look forward confidently to work with the Open Science and Open Source communities to make them reality.&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;As a first action, o2r team member Daniel attended the &lt;a href=&quot;https://egu2019.eu/&quot;&gt;EGU General Assembly in Vienna last week&lt;/a&gt; to start the conversation about the pilot with EGU journals with journal editors.
With the support of Copernicus staff, we distributed flyers about the planned Virtual Special Issue to journal editors of the Copernicus journals.
You can read more about the plans &lt;a href=&quot;/pilots/#copernicus&quot;&gt;on the Pilots page&lt;/a&gt;.
Since we are very early in the project, it comes only as a little setback that Daniel could only speak to a handful of editors.
We plan to intensify our outreach to journals and editors later this year, when the first working prototypes can tell the story much more convincing than a paper leaflet can - &lt;em&gt;isn’t that what executable interactive publications are all about?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Besides reaching out to editors, discussing &lt;a href=&quot;https://twitter.com/EarthArXiv/status/1115700257856397313&quot;&gt;Open Access &amp;amp; preprints&lt;/a&gt;, and putting &lt;a href=&quot;https://twitter.com/search?q=%23egu19rse&quot;&gt;research software&lt;/a&gt; on the map, Daniel also presented &lt;a href=&quot;https://doi.org/10.5281/zenodo.2630482&quot;&gt;a poster&lt;/a&gt; on &lt;em&gt;packaging research&lt;/em&gt;, with many fun interactions and discussions.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;One more (hopefully) &lt;a href=&quot;https://twitter.com/hashtag/betterposter?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#betterposter&lt;/a&gt;  at &lt;a href=&quot;https://twitter.com/hashtag/EGU19?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#EGU19&lt;/a&gt; on advantages on packaging research using containers and community standards, powered by &lt;a href=&quot;https://twitter.com/o2r_project?ref_src=twsrc%5Etfw&quot;&gt;@o2r_project&lt;/a&gt; Find poster and abstract at &lt;a href=&quot;https://t.co/fKjQ57uuhp&quot;&gt;https://t.co/fKjQ57uuhp&lt;/a&gt; &lt;a href=&quot;https://t.co/tjeJ582ZRq&quot;&gt;pic.twitter.com/tjeJ582ZRq&lt;/a&gt;&lt;/p&gt;&amp;mdash; Daniel Nüst (@nordholmen) &lt;a href=&quot;https://twitter.com/nordholmen/status/1116682650910064640?ref_src=twsrc%5Etfw&quot;&gt;12. April 2019&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

</content>
 </entry>
 
 <entry>
   <title>Archiving a Research Project Website on Zenodo</title>
   <link href="https://o2r.info/2019/02/24/archiving-jekyll-zenodo/"/>
   <updated>2019-02-24T00:00:00+00:00</updated>
   <id>https://o2r.info/2019/02/24/archiving-jekyll-zenodo</id>
   <content type="html">&lt;p&gt;The o2r project website’s first entry &lt;a href=&quot;/2016/01/19/introducing-o2r/&quot;&gt;Introducing o2r&lt;/a&gt; was published &lt;a href=&quot;https://www.timeanddate.com/date/durationresult.html?d1=19&amp;amp;m1=1&amp;amp;y1=2016&amp;amp;d2=24&amp;amp;m2=2&amp;amp;y2=2019&quot;&gt;1132 days ago&lt;/a&gt;.
Since then we’ve published short and long reports about events the o2r team participated in, advertised new scholarly publications we were lucky to have accepted in journals, and reported on results of workshops organised by o2r.
But there has also been some original content from time to time, such as the extensive articles on &lt;a href=&quot;/2016/12/15/investigating-docker-and-R/&quot;&gt;Docker and R&lt;/a&gt;, which received several updates over the last years (some still pending), on the &lt;a href=&quot;/2018/11/21/elife-sprint-integrating-stencila-and-binder/&quot;&gt;integration of Stencila and Binder&lt;/a&gt;, or on &lt;a href=&quot;/2019/02/04/write-reproducible-manuscripts-for-copernicus-publications-journals/&quot;&gt;writing reproducible articles for Copernicus Publications&lt;/a&gt;.
These posts are a valuable output of the project, and contribute to the scholarly discussion.
Therefore, when it came to writing a report on the project’s activities and outputs, it was time to consider the &lt;a href=&quot;https://en.wikipedia.org/wiki/Digital_preservation&quot;&gt;preservation&lt;/a&gt; of the project website and blog.
The website is built with &lt;a href=&quot;http://jekyllrb.com/&quot;&gt;Jekyll&lt;/a&gt; (with Markdown source files) and &lt;a href=&quot;https://github.com/o2r-project/o2r-project.github.io&quot;&gt;hosted with GitHub pages&lt;/a&gt;, but GitHub may disappear and Jekyll might stop working at some point.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;So how can we archive the blog post and website in a sustainable way, without any manual interference?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Today’s blog post documents the steps to automatically deposit the sources, the HTML rendering, a PDF rendering, and the whole git repository in a new version of a &lt;a href=&quot;https://doi.org/10.5281/zenodo.1485437&quot;&gt;Zenodo deposit&lt;/a&gt; with each new blog post using &lt;a href=&quot;help.zenodo.org#versioning&quot;&gt;Zenodo’s DOI versioning&lt;/a&gt;.
The PDF was especially tricky but is very important, because the format is established for archival of content, while using the Zenodo API was pretty straightforward.
We hope the presented workflow might be useful for other websites and blogs in a scientific context.
It goes like this:&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;The &lt;a href=&quot;https://en.wikipedia.org/wiki/Makefile&quot;&gt;Makefile&lt;/a&gt; target &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;update_zenodo_deposit&lt;/code&gt; starts the whole process with &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;make update_zenodo_deposit&lt;/code&gt;. It triggers several other make targets, some of which require two processes to run at the same time:&lt;/li&gt;
  &lt;li&gt;Remove previously existing outputs (“clean”).&lt;/li&gt;
  &lt;li&gt;Build the whole page with Jekyll and &lt;a href=&quot;https://jekyllrb.com/docs/usage/&quot;&gt;serve&lt;/a&gt; it using a local web server.&lt;/li&gt;
  &lt;li&gt;Create a PDF from the whole website from the local web server using &lt;a href=&quot;https://wkhtmltopdf.org/&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;wkhtmltopdf&lt;/code&gt;&lt;/a&gt; and the special page &lt;a href=&quot;/all_content&quot;&gt;/all_content&lt;/a&gt;, which renders &lt;em&gt;all&lt;/em&gt; blog entries in a suitable layout together with an automatically compiled list of author names and all website pages, unless they are excluded from the menu (e.g. manual redirection/shortened URLs) or excluded from “all pages” (e.g. the 404 page, blogroll, or publications list).&lt;/li&gt;
  &lt;li&gt;Create a ZIP archive with the sources, HTML rendering and PDF capture.&lt;/li&gt;
  &lt;li&gt;Run a Python script to upload the PDF and ZIP files to Zenodo using the &lt;a href=&quot;http://developers.zenodo.org/&quot;&gt;Zenodo API&lt;/a&gt;, which includes several requests to retrieve the latest version metadata, check that there really is a new blog post, create a new deposit, remove the existing files in the deposit, upload the new files, and eventually publish the record.&lt;/li&gt;
  &lt;li&gt;Kill the still running web server.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;For these steps to run automatically, the &lt;del&gt;&lt;a href=&quot;https://travis-ci.org/&quot;&gt;Travis CI&lt;/a&gt; configuration file, &lt;a href=&quot;https://github.com/o2r-project/o2r-project.github.io/commit/5699871682178c500fe02fead163640cb480ea6f&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;.travis.yml&lt;/code&gt;&lt;/a&gt; (link to commit where Travis CI configuration was removed in favour of…)&lt;/del&gt; the GitHub action configuration &lt;a href=&quot;https://github.com/o2r-project/o2r-project.github.io/blob/master/.github/workflows/deposit.yml&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;deposit.yml&lt;/code&gt;&lt;/a&gt;, installs the required software environment to conduct all above steps during each change to the main branch.
A secure environment variable for the repository is used to store a Zenodo API key, so the build system can manipulate the record.
The first version of this record, including its description, authors, tags, etc., was created manually.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://doi.org/10.5281/zenodo.1485437&quot;&gt;&lt;img src=&quot;/public/images/2019-02_zenodo-record-screenshot.png&quot; alt=&quot;Zenodo record screenshot&quot; width=&quot;300&quot; class=&quot;img rightfloat&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;So what is possible now?&lt;/em&gt;
As pointed out in the citation note at the bottom of pages and posts, the Digital Object Identifier (&lt;a href=&quot;https://en.wikipedia.org/wiki/Digital_object_identifier&quot;&gt;DOI&lt;/a&gt;) allows referencing the whole website or specific posts (via pages in the PDF) in scholarly publications.
Manual archival from a local computer is still possible by triggering the same make target.
As long as Zenodo exists, readers have access to all content published by the o2r research project on its website.&lt;/p&gt;

&lt;p&gt;There are no specific next steps planned, but there’s surely room for improvement as the current workflow is pretty complex.
The post publication date is the trigger for a new version, so changes in a page such as &lt;a href=&quot;/about&quot;&gt;About&lt;/a&gt; or in an existing post requires a manual triggering of the workflow (and commenting out the check for a new post) or wait for the next blog entry.
The created PDF &lt;a href=&quot;https://github.com/o2r-project/o2r-project.github.io/issues/29&quot;&gt;could be made compliant&lt;/a&gt; with &lt;a href=&quot;https://en.wikipedia.org/wiki/PDF/A&quot;&gt;PDF/A&lt;/a&gt;.
The control flow could also be implemented completely in Python instead of using multiple files and languages; a Python module might even properly manage the system dependencies.
Though large parts of the process are not limited to pages generated with Jekyll (the capturing and uploading), it might be effectively wrapped in a standalone Jekyll &lt;a href=&quot;https://jekyllrb.com/docs/plugins/&quot;&gt;Jekyll plugin&lt;/a&gt;, or a combination of a Zenodo plugin together with the (stale?) &lt;a href=&quot;https://github.com/abeMedia/jekyll-pdf&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;jekyll-pdf&lt;/code&gt; plugin&lt;/a&gt;?
&lt;em&gt;Your feedback is very welcome!&lt;/em&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>R&amp;R Workshop at SPARC</title>
   <link href="https://o2r.info/2019/02/16/r-r-workshop-at-sparc/"/>
   <updated>2019-02-16T00:00:00+00:00</updated>
   <id>https://o2r.info/2019/02/16/r-r-workshop-at-sparc</id>
   <content type="html">&lt;p&gt;The capabilities of containerisation and the concept of the &lt;a href=&quot;https://doi.org/10.1045/january2017-nuest&quot;&gt;Executable Research Compendium&lt;/a&gt; form the basis for o2r’s &lt;a href=&quot;https://o2r.info/results/&quot;&gt;reproducibility service&lt;/a&gt;.
But the demonstration how latest technology may support a more open and transparent scholarly publication alone is only one half the battle.
Breakthroughs in tools and infrastructure must be accompanied by outreach activities to highlight the need for opening reproducible research to all stakeholders (scientists, editors, publishers, funding agencies).
That is why I was extremely glad to join some of the most renowned researchers of geography and GI Science at the &lt;a href=&quot;https://sgsup.asu.edu/sparc/RRWorkshop&quot;&gt;“Replicability and Reproducibility Workshop”&lt;/a&gt; in Tempe, Arizona, on February 11 and 12, 2019.
The event was organised by the Spatial Analysis Research Center (&lt;a href=&quot;https://sgsup.asu.edu/SPARC&quot;&gt;SPARC&lt;/a&gt;) at Arizona State University (&lt;a href=&quot;https://www.asu.edu/&quot;&gt;ASU&lt;/a&gt;).&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Daniel Nust from the University of Munster presenting at our Replicability and Reproducibility in Geospatial Research: Open is not enough for reproducibility! &lt;a href=&quot;https://t.co/PwpVmwdQ7b&quot;&gt;pic.twitter.com/PwpVmwdQ7b&lt;/a&gt;&lt;/p&gt;&amp;mdash; SPARC at ASU (@SPARC_ASU) &lt;a href=&quot;https://twitter.com/SPARC_ASU/status/1095001323299172352?ref_src=twsrc%5Etfw&quot;&gt;11. Februar 2019&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;The events featured&lt;!--more--&gt; four full talks.
I was invited to go first and report on the activities of o2r as well as the &lt;a href=&quot;https://o2r.info/reproducible-agile/&quot;&gt;Reproducible AGILE&lt;/a&gt; conference series and initiative for developing new submission and reviewing guidelines.
The expectations were high, but after three years of intense work by the o2r team, the allotted time was easily filled.
After introducing &lt;em&gt;challenges&lt;/em&gt; which disrupt scholarly publication practices, I reported on &lt;em&gt;observations&lt;/em&gt; made by &lt;a href=&quot;https://o2r.info/publications/&quot;&gt;our own surveys&lt;/a&gt; and others on reproducibility, including the &lt;a href=&quot;https://o2r.info/publications/&quot;&gt;two reproduction campaigns&lt;/a&gt; let be the o2r team.
The painted picture unsurprisingly left a lot of room for improvement, for which the talk provided technical as well as organisational &lt;em&gt;approaches&lt;/em&gt;.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Just finished my talk on challenges, observations and approaches towards reproducible research at the SPARC workshop &lt;a href=&quot;https://twitter.com/hashtag/RandR?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#RandR&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/geospatial?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#geospatial&lt;/a&gt; &lt;a href=&quot;https://twitter.com/ASU?ref_src=twsrc%5Etfw&quot;&gt;@ASU&lt;/a&gt; Find the slides and material (including speaker notes in the source file with all the stuff I forgot!) at &lt;a href=&quot;https://t.co/cSRZ1DkwhO&quot;&gt;https://t.co/cSRZ1DkwhO&lt;/a&gt; &lt;a href=&quot;https://t.co/FXjNj0hT2K&quot;&gt;pic.twitter.com/FXjNj0hT2K&lt;/a&gt;&lt;/p&gt;&amp;mdash; Daniel Nüst (@nordholmen) &lt;a href=&quot;https://twitter.com/nordholmen/status/1095029238132948992?ref_src=twsrc%5Etfw&quot;&gt;11. Februar 2019&lt;/a&gt;&lt;/blockquote&gt;

&lt;p&gt;In the second talk, ASU’s own &lt;a href=&quot;https://sgsup.asu.edu/peter-kedron&quot;&gt;Peter Kedron&lt;/a&gt; took a step back and surveyed the existing definitions of replicability and reproducibility.
Peter then excellently connected and extended these terms with the intricacies and specifics of geospatial sciences.
The technical and theoretical groundwork was layed, so the discussion following the first talks set the bar for the remainder of the workshop quite high.
Many critical and thoughtful comments were made and viewpoints shared.
One of the main take-home messages for me was that while geography/GI Science/related disciplines may take advantage of the hard lessons learned in other domains (which faced a ‘replication crisis’), the uniqueness of geography as a science that always had to deal with uncertainty and &lt;em&gt;context&lt;/em&gt; may also contribute a unique perspective on replicability and reproducibility.
It was great to see that the topic of reproducibility is widely acknowledged as a relevant challenge and the interest to initiate improvement was unilateral.&lt;/p&gt;

&lt;p&gt;The first day continued with &lt;em&gt;lightning talks&lt;/em&gt;.
As could be expected, the diverse backgrounds (eScience, ecology, political geography, …) let to a very useful diversity in topics and perspectives.
Afterwards the participants split up into three groups to tackle technical, organisational, and institutional aspects of replicability and reproducibility, which gave input for yet another thoughtful debate in the assembly to conclude day one.
The discussions continued between old colleagues and new friends during a delightful evening reception and dinner.&lt;/p&gt;

&lt;p&gt;Day two kicked of in a similar fashion with talks by &lt;a href=&quot;https://directory.uark.edu/people/dsui&quot;&gt;Daniel Sui&lt;/a&gt;, University of Arkansas, and Esri’s &lt;a href=&quot;https://en.wikipedia.org/wiki/Dawn_Wright&quot;&gt;Dawn Wright&lt;/a&gt; and Kevin Butler.
Again two very different takes on the topic, with valuable new ideas.
The following discussion was lively and included potential venues for the newly formed group to continue the collaboration, most importantly to increase the awareness of the topic across all communities working with spatial data.
The whole meeting was nicely guided and framed by contributions from ASU’s &lt;a href=&quot;https://en.wikipedia.org/wiki/Michael_Frank_Goodchild&quot;&gt;Mike Goodchild&lt;/a&gt; and &lt;a href=&quot;https://sgsup.asu.edu/stewart-fotheringham&quot;&gt;Stewart Fotheringham&lt;/a&gt;.
All participants were united in their interest to advance transparency and openness and a realisation that there is a need for action from many different angles, including education and evaluation, if a ‘crisis’ shall be avoided.
Despite some concerns how the topic might be received by critics, the meeting ended in a positive mood of newfound mutual support and of acknowledging the value of the work ahead.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;My personal opinion is that the disruptions in science are more pressing than a traditional scholarly approach (organising a special issue for 2020, writing an editorial) can answer.
Yet the old-school way may be able to bridge across the divide and different skill-set/mindset/needs between computational/junior/young/technical and theoretical/senior researchers, and is as such worth pursuing.
For future discussions, I plan to frame reproducibility as an ideal that is worth striving for and worth to reward (e.g. in evaluations, during reviews, using badges, in funding schemes), but to be careful with too simple checklists and dos/don’ts, because there will always be corner cases and limitations for specific circumstances.
This is a core difference between reproducibility and openness - you can not be a little or partially open, but being almost reproducible is still an important achievement.
Reproducibility and replicability will not be helped by whataboutism nor by pointing fingers, but the positive &lt;a href=&quot;https://doi.org/10.1038/d41586-018-05256-0&quot;&gt;spirit of preproducibility&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Luckily there is no need to echo all insights by talks and during the discussions: the sessions were recorded on video they will be published together with slides and position papers in an OSF project soon.
&lt;!-- **[https://osf.io/gvp3q/](https://osf.io/gvp3q/)**. --&gt;
This post will be updated then. &lt;a href=&quot;https://twitter.com/nordholmen&quot;&gt;Follow&lt;/a&gt; &lt;a href=&quot;https://twitter.com/o2r_project&quot;&gt;us&lt;/a&gt; on Twitter to not miss it.
Until then you can take a look at my position paper &lt;a href=&quot;https://gitlab.com/nuest/rr-geospatial-sparc/&quot;&gt;on GitLab&lt;/a&gt;, even the speaker notes in the presentation source file if you dare.&lt;/p&gt;

&lt;p&gt;This post would be incomplete without a big &lt;em&gt;Thank You&lt;/em&gt; to the sponsoring and excellent organisation provided by &lt;a href=&quot;https://www.esri.com/&quot;&gt;Esri&lt;/a&gt; and the hosting School of Geographical Sciences and Urban Planning (&lt;a href=&quot;https://sgsup.asu.edu/&quot;&gt;SGSUP&lt;/a&gt;).
I am confident this workshop may spark new collaborations and be able to put replicability and reproducibility on the map for more researchers in geography and related disciplines.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;On the last flight back home after a great week with &lt;a href=&quot;https://twitter.com/SPARC_ASU?ref_src=twsrc%5Etfw&quot;&gt;@SPARC_ASU&lt;/a&gt;. They brought together a great group of people to talk about &lt;a href=&quot;https://twitter.com/hashtag/reproducibleresearch?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#reproducibleresearch&lt;/a&gt;. Thank you!&lt;br /&gt;I enjoyed learning more about geospatial specialities with R&amp;amp;R, hiking Arizona, and starting new collaborations. &lt;a href=&quot;https://twitter.com/hashtag/PhDlife?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#PhDlife&lt;/a&gt; &lt;a href=&quot;https://t.co/mb1lu9Nc0Q&quot;&gt;pic.twitter.com/mb1lu9Nc0Q&lt;/a&gt;&lt;/p&gt;&amp;mdash; Daniel Nüst (@nordholmen) &lt;a href=&quot;https://twitter.com/nordholmen/status/1096437456583512065?ref_src=twsrc%5Etfw&quot;&gt;15. Februar 2019&lt;/a&gt;&lt;/blockquote&gt;
</content>
 </entry>
 
 <entry>
   <title>How to increase reproducibility and transparency in your research</title>
   <link href="https://o2r.info/2019/02/04/write-reproducible-manuscripts-for-copernicus-publications-journals/"/>
   <updated>2019-02-04T00:00:00+00:00</updated>
   <id>https://o2r.info/2019/02/04/write-reproducible-manuscripts-for-copernicus-publications-journals</id>
   <content type="html">&lt;p&gt;&lt;em&gt;[This article is cross posted-on the &lt;a href=&quot;https://blogs.egu.eu/geolog/2019/02/01/reproducibility-and-transparency-in-research/&quot;&gt;EGU GeoLog&lt;/a&gt;.]&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Contemporary science faces many challenges in publishing results that are reproducible.
This is due to increased usage of data and digital technologies as well as heightened demands for scholarly communication.
These challenges have led to widespread &lt;a href=&quot;#munafo&quot;&gt;calls&lt;/a&gt; for more research transparency, accessibility, and reproducibility from the science community.
This article presents current findings and solutions to these problems, including recent new software that makes writing submission-ready manuscripts for journals of &lt;em&gt;&lt;a href=&quot;https://www.copernicus.org/&quot;&gt;Copernicus Publications&lt;/a&gt;&lt;/em&gt; a lot easier.
&lt;!--more--&gt;
While it can be debated if science really faces a &lt;a href=&quot;#baker&quot;&gt;reproducibility&lt;/a&gt; &lt;a href=&quot;#fanelli&quot;&gt;crisis&lt;/a&gt;, the challenges of computer-based research have sparked numerous articles on new &lt;a href=&quot;#wilson&quot;&gt;good&lt;/a&gt; &lt;a href=&quot;#gil&quot;&gt;research&lt;/a&gt; &lt;a href=&quot;#sandve&quot;&gt;practices&lt;/a&gt; and their &lt;a href=&quot;#hardwicke&quot;&gt;evaluation&lt;/a&gt;.
The challenges have also driven researchers to develop infrastructure and tools to help scientists effectively write articles, publish data, share code for computations, and communicate their findings in a reproducible way, for example &lt;a href=&quot;#jupyter&quot;&gt;Jupyter&lt;/a&gt;, &lt;a href=&quot;#reprozip&quot;&gt;ReproZip&lt;/a&gt; and &lt;a href=&quot;https://research-compendium.science/&quot;&gt;research compendia&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;#konkol&quot;&gt;Recent&lt;/a&gt; &lt;a href=&quot;#nuest&quot;&gt;studies&lt;/a&gt; &lt;a href=&quot;#ostermann&quot;&gt;showed&lt;/a&gt; that the geosciences and geographic information science are not beyond issues with reproducibility, just like other domains.
Therefore, more and more &lt;a href=&quot;https://www.nature.com/authors/policies/availability.html&quot;&gt;journals&lt;/a&gt; have &lt;a href=&quot;#stodden&quot;&gt;adopted policies&lt;/a&gt; on sharing data and code.
However, it is equally important that scientists foster an &lt;a href=&quot;#nosek&quot;&gt;open research culture&lt;/a&gt; and teach researchers how they adopt more transparent and reproducible workflows, for example at skill-building workshops at conferences offered by fellow researchers, such as the EGU short courses, community-led non-profit organisations such as the &lt;a href=&quot;https://carpentries.org/&quot;&gt;Carpentries&lt;/a&gt;, &lt;a href=&quot;#toelch&quot;&gt;open courses for students&lt;/a&gt;, small discussion groups at research labs, or individual efforts of self-learning.
In the light of prevailing &lt;a href=&quot;#barba&quot;&gt;issues of a common definition&lt;/a&gt; of reproducibility, &lt;a href=&quot;#stark&quot;&gt;Philip Stark&lt;/a&gt;, a statistics professor and associate dean of mathematical and physical sciences at the University of California, Berkeley, recently coined the term &lt;a href=&quot;#stark&quot;&gt;&lt;em&gt;preproducibility&lt;/em&gt;&lt;/a&gt;: &lt;em&gt;“An experiment or analysis is preproducible if it has been described in adequate detail for others to undertake it.”&lt;/em&gt;
The neologism intends to reduce confusion and also to embrace a positive attitude for more openness, honesty, and helpfulness in scholarly communication processes.&lt;/p&gt;

&lt;!-- image here! --&gt;
&lt;p&gt;&lt;a href=&quot;https://twitter.com/NatureNews/status/999715421208104960&quot;&gt;&lt;img src=&quot;/public/images/2018-11_showme-nottrustme-nature.png&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the spirit of these activities, this article describes a modern workflow made possible by recent software releases.
The new features allow the EGU community to write preproducible manuscripts for submission to the large variety of academic journals published by &lt;a href=&quot;https://www.copernicus.org/&quot;&gt;&lt;em&gt;Copernicus Publications&lt;/em&gt;&lt;/a&gt;.
The new workflow might require hard-earned adjustments for some researchers, but it pays off because of an increase in transparency and effectivity.
This is especially the case for early career scientists.
An open and reproducible workflow enables researchers to build on others’ and own previous work and better collaborate on solving the societal challenges of today.&lt;/p&gt;

&lt;h2 id=&quot;reproducible-research-manuscripts&quot;&gt;Reproducible research manuscripts&lt;/h2&gt;

&lt;p&gt;&lt;a href=&quot;https://en.wikipedia.org/wiki/Open-notebook_science&quot;&gt;Open&lt;/a&gt; digital &lt;a href=&quot;https://arxiv.org/abs/1804.05492&quot;&gt;notebooks&lt;/a&gt;, which &lt;a href=&quot;https://en.wikipedia.org/wiki/Literate_programming&quot;&gt;interweave data and code&lt;/a&gt; and can be exported to different output formats such as PDF, are powerful means to improve transparency and preproducibility of research.
&lt;a href=&quot;https://jupyter.org/&quot;&gt;Jupyter Notebook&lt;/a&gt;, &lt;a href=&quot;http://stenci.la/&quot;&gt;Stencila&lt;/a&gt; and &lt;a href=&quot;https://rmarkdown.rstudio.com/&quot;&gt;R Markdown&lt;/a&gt; let researchers combine long-form text of a publication and source code for analysis and visualisation in a single document.
Having text and code side-by-side makes them easier to grasp and ensures consistency, because each rendering of the document executes the whole workflow using the original data.
Caching for long-lasting computations is possible, and researchers working with supercomputing infrastructures or huge datasets may limit the executed code to purposes of visualisation using processed data as input.
Authors can transparently expose specific code snippets to readers but also publish the complete source code of the document openly for collaboration and review.&lt;/p&gt;

&lt;p&gt;The popular notebook formats are plain text-based, like &lt;a href=&quot;https://en.wikipedia.org/wiki/Markdown&quot;&gt;Markdown&lt;/a&gt; in case of R Markdown.
Therefore an R Markdown document can be managed with &lt;a href=&quot;https://en.wikipedia.org/wiki/Version_control&quot;&gt;version control software&lt;/a&gt;, which are programs for managing multiple versions and contributions, even by different people, to the same documents.
Version control provides traceability of authorship, a time machine for going back to any previous “working” version, and online collaboration such as on &lt;a href=&quot;https://en.wikipedia.org/wiki/GitLab&quot;&gt;GitLab&lt;/a&gt;.
This kind of workflow also stops &lt;a href=&quot;http://phdcomics.com/comics/archive_print.php?comicid=1531&quot;&gt;the madness of using file names for versions&lt;/a&gt; yet still lets authors use &lt;a href=&quot;https://speakerdeck.com/jennybc/how-to-name-files&quot;&gt;awesome file names&lt;/a&gt; and apply domain-specific &lt;a href=&quot;#marwick&quot;&gt;guidelines for packaging research&lt;/a&gt;.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Final.doc &lt;a href=&quot;https://t.co/YXJaSacHWu&quot;&gt;https://t.co/YXJaSacHWu&lt;/a&gt; &lt;a href=&quot;https://t.co/4bBDzn7TXt&quot;&gt;pic.twitter.com/4bBDzn7TXt&lt;/a&gt;&lt;/p&gt;&amp;mdash; PHD Comics (@PHDcomics) &lt;a href=&quot;https://twitter.com/PHDcomics/status/826861642507882496?ref_src=twsrc%5Etfw&quot;&gt;1. Februar 2017&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;R Markdown supports &lt;a href=&quot;https://rmarkdown.rstudio.com/lesson-5.html&quot;&gt;different programming languages&lt;/a&gt; besides the popular namesake &lt;a href=&quot;https://www.r-project.org/&quot;&gt;R&lt;/a&gt; and is a sensible solution even if you do not analyse data with scripts nor have any code in your scholarly manuscript.
It is easy to write, allows you to &lt;a href=&quot;https://rmarkdown.rstudio.com/authoring_bibliographies_and_citations.html&quot;&gt;manage your bibliography&lt;/a&gt; effectively, can be used for websites, &lt;a href=&quot;https://bookdown.org/&quot;&gt;books&lt;/a&gt; or &lt;a href=&quot;https://bookdown.org/yihui/blogdown/&quot;&gt;blogs&lt;/a&gt;, but most importantly &lt;em&gt;it does not fall short when it is time to submit a manuscript article to a journal&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;The &lt;a href=&quot;https://cran.r-project.org/package=rticles&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;rticles&lt;/code&gt;&lt;/a&gt; extension package for R provides a number of templates for popular journals and publishers.
Since version &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;0.6&lt;/code&gt; (&lt;a href=&quot;https://github.com/rstudio/rticles/releases/tag/v0.6&quot;&gt;published Oct 9 2018&lt;/a&gt;) these &lt;a href=&quot;https://github.com/rstudio/rticles/pull/172&quot;&gt;templates include&lt;/a&gt; the &lt;a href=&quot;https://publications.copernicus.org/for_authors/manuscript_preparation.html&quot;&gt;Copernicus Publications Manuscript preparations guidelines for authors&lt;/a&gt;.
The Copernicus Publications staff was kind enough to give a test document a quick review and all seems in order, though of course any problems and questions shall be directed to the software’s vibrant community and not the publishers.&lt;/p&gt;

&lt;p&gt;The following code snippet and screen shot demonstrate the workflow.
Lines starting with &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;#&lt;/code&gt; are code comments and explain the steps.
Code examples provided here are ready to use and only lack the installation commands for required packages.&lt;/p&gt;

&lt;div class=&quot;language-r highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;c1&quot;&gt;# load required R extension packages:&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;library&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;rticles&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;library&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;rmarkdown&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;

&lt;/span&gt;&lt;span class=&quot;c1&quot;&gt;# create a new document using a template:&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;rmarkdown&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;draft&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;file&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;MyArticle.Rmd&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
                 &lt;/span&gt;&lt;span class=&quot;n&quot;&gt;template&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;copernicus_article&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
                 &lt;/span&gt;&lt;span class=&quot;n&quot;&gt;package&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;rticles&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;n&quot;&gt;edit&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;kc&quot;&gt;FALSE&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;

&lt;/span&gt;&lt;span class=&quot;c1&quot;&gt;# render the source of the document to the default output format:&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;rmarkdown&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;render&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;input&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;MyArticle/MyArticle.Rmd&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2018-10_rmd-pdf-example.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;The commands created a directory with the Copernicus Publications template’s files, including an R Markdown (&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;.Rmd&lt;/code&gt;) file ready to be edited by you (left-hand side of the screenshot), a &lt;a href=&quot;https://en.wikipedia.org/wiki/LaTeX&quot;&gt;LaTeX&lt;/a&gt; (&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;.tex&lt;/code&gt;) file for submission to the publisher, and a &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;.pdf&lt;/code&gt; file for inspecting the final results and sharing with your colleagues (right-hand side of the screenshot).
You can see how simple it is to format text, insert citations, chemical formulas or equations, and add figures, and how they are rendered into a high-quality output file.&lt;/p&gt;

&lt;p&gt;All of these steps may also be completed with user-friendly forms when using &lt;a href=&quot;https://en.wikipedia.org/wiki/RStudio&quot;&gt;RStudio&lt;/a&gt;, a popular development and authoring environment available for all operating systems.
The left-hand side of the following screenshot shows the form for creating a new document based on a template, and the right-hand shows side the menu for rendering, called “knitting” with R Markdown because code and text are combined into one document like threads in a garment.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2018-10_rstudio-ui-example.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;And in case you decide last minute to submit to a different journal, &lt;a href=&quot;https://github.com/rstudio/rticles#overview&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;rticles&lt;/code&gt; supports many publishers&lt;/a&gt; so you only have to adjust the template while the whole content stays the same.&lt;/p&gt;

&lt;h2 id=&quot;sustainable-access-to-supplemental-data&quot;&gt;Sustainable access to supplemental data&lt;/h2&gt;

&lt;p&gt;Data published today &lt;a href=&quot;http://www.copdess.org/enabling-fair-data-project/commitment-to-enabling-fair-data-in-the-earth-space-and-environmental-sciences/&quot;&gt;should&lt;/a&gt; be published and properly cited using appropriate &lt;a href=&quot;https://www.re3data.org/&quot;&gt;research data repositories&lt;/a&gt; following the &lt;a href=&quot;https://en.wikipedia.org/wiki/FAIR_data&quot;&gt;FAIR data&lt;/a&gt; &lt;a href=&quot;https://www.force11.org/group/fairgroup/fairprinciples&quot;&gt;principles&lt;/a&gt;.
Journals require authors to follow these principles, see for example the &lt;a href=&quot;https://publications.copernicus.org/services/data_policy.html&quot;&gt;Copernicus Publications data policy&lt;/a&gt; or a recent &lt;a href=&quot;#nature&quot;&gt;announcement by &lt;em&gt;Nature&lt;/em&gt;&lt;/a&gt;.
Other publishers required, or still do today, to store supplemental information (SI), such as dataset files, extra figures, or extensive descriptions of experimental procedures, as part of the article.
Usually only the article itself receives a digital object identifier (&lt;a href=&quot;https://en.wikipedia.org/wiki/Digital_object_identifier&quot;&gt;DOI&lt;/a&gt;) for long-term identification and availability.
The DOI &lt;a href=&quot;https://www.helmholtz-berlin.de/zentrum/locations/bibliothek/dokumentationhaupt/veroeffentlichungsverzeichnis-kopie/doi-vergabe_en.html&quot;&gt;minted&lt;/a&gt; by the publisher is not suitable for direct access to supplemental files, because it points to a &lt;a href=&quot;https://support.crossref.org/hc/en-us/articles/214669863-Your-landing-page&quot;&gt;landing&lt;/a&gt; &lt;a href=&quot;https://support.datacite.org/docs/datacite-doi-display-guidelines#section-applying-the-guidelines&quot;&gt;page&lt;/a&gt; about the identified object.
This landing page is designed to be read by humans but not by computers.&lt;/p&gt;

&lt;p&gt;The R package &lt;a href=&quot;https://github.com/ropensci/suppdata&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;suppdata&lt;/code&gt;&lt;/a&gt; &lt;a href=&quot;#pearse&quot;&gt;closes this gap&lt;/a&gt;.
It supports downloading supplemental information using the article’s DOI.
This way &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;suppdata&lt;/code&gt; enables long-term reproducible data access when data was published as SI in the past or in exceptional cases today, for example if you write about a reproduction of a published article.
In the latest version available &lt;a href=&quot;https://github.com/ropensci/suppdata/blob/master/README.md&quot;&gt;from GitHub&lt;/a&gt; (suppdata is &lt;a href=&quot;https://github.com/ropensci/suppdata/issues/31&quot;&gt;on its way&lt;/a&gt; to &lt;a href=&quot;https://cran.r-project.org/package=suppdata&quot;&gt;CRAN&lt;/a&gt;) the &lt;a href=&quot;https://github.com/ropensci/suppdata#supported-publishers-and-repositories&quot;&gt;supported publishers&lt;/a&gt; include Copernicus Publications.
The following example code downloads a data file for the article &lt;a href=&quot;https://doi.org/10.5194/bg-14-1739-2017&quot;&gt;“Divergence of seafloor elevation and sea level rise in coral reef ecosystems”&lt;/a&gt; by Yates et al. published in &lt;em&gt;Biogeosciences&lt;/em&gt; in 2017.
The code then creates a mostly meaningless plot shown below.&lt;/p&gt;

&lt;div class=&quot;language-r highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;c1&quot;&gt;# load required R extension package:&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;library&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;suppdata&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;

&lt;/span&gt;&lt;span class=&quot;c1&quot;&gt;# download a specific supplemental information (SI) file&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;c1&quot;&gt;# for an article using the article&apos;s DOI:&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;csv_file&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;n&quot;&gt;suppdata&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;::&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;suppdata&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
  &lt;/span&gt;&lt;span class=&quot;n&quot;&gt;x&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;10.5194/bg-14-1739-2017&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
  &lt;/span&gt;&lt;span class=&quot;n&quot;&gt;si&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;Table S1 v2 UFK FOR_PUBLICATION.csv&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;supplemental&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;

&lt;/span&gt;&lt;span class=&quot;c1&quot;&gt;# read the data and plot it (toy example!):&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;my_data&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;n&quot;&gt;read.csv&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;file&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;n&quot;&gt;csv_file&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;n&quot;&gt;skip&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;m&quot;&gt;3&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;plot&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;x&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;n&quot;&gt;my_data&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;NAVD88_G03&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;n&quot;&gt;y&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;n&quot;&gt;my_data&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;RASTERVALU&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
     &lt;/span&gt;&lt;span class=&quot;n&quot;&gt;xlab&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;Historical elevation (NAVD88 GEOID03))&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
     &lt;/span&gt;&lt;span class=&quot;n&quot;&gt;ylab&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;LiDAR elevation (NAVD88 GEOID03)&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
     &lt;/span&gt;&lt;span class=&quot;n&quot;&gt;main&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;A data plot for article 10.5194/bg-14-1739-2017&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
     &lt;/span&gt;&lt;span class=&quot;n&quot;&gt;pch&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;m&quot;&gt;20&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;n&quot;&gt;cex&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;m&quot;&gt;0.5&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;!--
png(file = &quot;public/images/2018-10_suppdata-example-plot.png&quot;, width = 512, height = 512, bg = &quot;white&quot;)
plot(x = my_data$NAVD88_G03, y = my_data$RASTERVALU,
  xlab = &quot;Historical elevation (NAVD88 GEOID03))&quot;,
  ylab = &quot;LiDAR elevation (NAVD88 GEOID03)&quot;,
  main = &quot;A silly plot for article 10.5194/bg-14-1739-2017&quot;,
  pch = 20, cex = 0.5)
dev.off()
--&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2018-10_suppdata-example-plot.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;h2 id=&quot;main-takeaways&quot;&gt;Main takeaways&lt;/h2&gt;

&lt;p&gt;Authoring submission-ready manuscripts for journals of Copernicus Publications just got a lot easier.
Everybody who can write manuscripts with a word processor can learn quickly R Markdown and benefit from a preproducible data science workflow.
Digital notebooks not only improve day-to-day research habits, but the same workflow is suitable for authoring high-quality scholarly manuscripts and graphics.
The interaction with the publisher is smooth thanks to the LaTeX submission format, but you never have to write any LaTeX.
The workflow is based on an established &lt;a href=&quot;https://en.wikipedia.org/wiki/Free_and_Open-Source_Software&quot;&gt;Free and Open Source&lt;/a&gt; software stack and embraces the idea of preproducibility and the principles of &lt;a href=&quot;https://en.wikipedia.org/wiki/Open_science&quot;&gt;Open Science&lt;/a&gt;.
The software is maintained by an &lt;a href=&quot;https://stackoverflow.com/questions/tagged/r&quot;&gt;active&lt;/a&gt;, &lt;a href=&quot;https://stackoverflow.blog/2017/10/10/impressive-growth-r/&quot;&gt;growing&lt;/a&gt;, and welcoming community of researchers and developers with a &lt;a href=&quot;https://www.r-spatial.org/&quot;&gt;strong connection&lt;/a&gt; to &lt;a href=&quot;https://gis.stackexchange.com/questions/tagged/r&quot;&gt;the&lt;/a&gt; &lt;a href=&quot;https://geocompr.github.io/&quot;&gt;geospatial&lt;/a&gt; &lt;a href=&quot;https://asdar-book.org/&quot;&gt;sciences&lt;/a&gt;.
Because of the complete and consistent notebook, &lt;a href=&quot;#markowetz&quot;&gt;you&lt;/a&gt;, a colleague, or a student can easily pick up the work at a later time.
The road to effective and transparent research begins with a first step - &lt;a href=&quot;https://vickysteeves.gitlab.io/repro-papers/&quot;&gt;take it&lt;/a&gt;!&lt;/p&gt;

&lt;h2 id=&quot;acknowledgements&quot;&gt;Acknowledgements&lt;/h2&gt;

&lt;p&gt;The software updates were contributed by &lt;a href=&quot;https://orcid.org/0000-0002-0024-5046&quot;&gt;Daniel Nüst&lt;/a&gt; from the project &lt;a href=&quot;https://o2r.info&quot;&gt;Opening Reproducible Research&lt;/a&gt; (o2r) at the Institute for Geoinformatics, University of Münster, Germany, but would not be able without the support of Copernicus Publications, the software maintainers most notably &lt;a href=&quot;https://yihui.name/&quot;&gt;Yihui Xie&lt;/a&gt; and &lt;a href=&quot;http://www.pearselab.com/&quot;&gt;Will Pearse&lt;/a&gt;, and the general awesomeness of the R, R-spatial, Open Science, and Reproducible Research communities.
The blog text was greatly improved with feedback by EGU’s &lt;a href=&quot;http://oliviatrani.org/&quot;&gt;Olivia&lt;/a&gt; &lt;a href=&quot;https://twitter.com/oliviatrani&quot;&gt;Trani&lt;/a&gt; and Copernicus Publications’ &lt;a href=&quot;https://twitter.com/XeniavanEdig&quot;&gt;Xenia&lt;/a&gt; &lt;a href=&quot;https://www.copernicus.org/contact_us.html&quot;&gt;van Edig&lt;/a&gt;.
Thank you!&lt;/p&gt;

&lt;h2 id=&quot;references&quot;&gt;References&lt;/h2&gt;

&lt;!-- https://crosscite.org/ has a style &quot;copernicus-publications&quot; --&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a name=&quot;nature&quot;&gt;&lt;/a&gt;&lt;a href=&quot;https://doi.org/10.1038/d41586-019-00075-3&quot;&gt;Announcement: FAIR data in Earth science&lt;/a&gt;, Nature, 565(7738), 134–134, doi:10.1038/d41586-019-00075-3, 2019.&lt;/li&gt;
  &lt;li&gt;&lt;a name=&quot;baker&quot;&gt;&lt;/a&gt;Baker, M.: &lt;a href=&quot;https://doi.org/10.1038/533452a&quot;&gt;1,500 Scientists Lift the Lid on Reproducibility&lt;/a&gt;, Nature, 533(7604), 452–454, doi:10.1038/533452a, 2016.&lt;/li&gt;
  &lt;li&gt;&lt;a name=&quot;barba&quot;&gt;&lt;/a&gt;Barba, L. A.: &lt;a href=&quot;http://arxiv.org/abs/1802.03311&quot;&gt;Terminologies for Reproducible Research&lt;/a&gt;, ArXiv:1802.03311 [Cs], February 9, 2018.&lt;/li&gt;
  &lt;li&gt;&lt;a name=&quot;fanelli&quot;&gt;&lt;/a&gt;Fanelli, D.: &lt;a href=&quot;https://doi.org/10.1073/pnas.1708272114&quot;&gt;Opinion: Is Science Really Facing a Reproducibility Crisis, and Do We Need It To?&lt;/a&gt;, Proceedings of the National Academy of Sciences, 115(11), 2628–2631, doi:10.1073/pnas.1708272114, 2018.&lt;/li&gt;
  &lt;li&gt;&lt;a name=&quot;gil&quot;&gt;&lt;/a&gt;Gil, Y., David, C. H., Demir, I., Essawy, B. T., Fulweiler, R. W., Goodall, J. L., Karlstrom, L., Lee, H., Mills, H. J., Oh, J.-H., Pierce, S. A., Pope, A., Tzeng, M. W., Villamizar, S. R. and Yu, X.: &lt;a href=&quot;https://doi.org/10.1002/2015EA000136&quot;&gt;Towards the Geoscience Paper of the Future: Best Practices for Documenting and Sharing Research from Data to Software to Provenance&lt;/a&gt;, Earth and Space Science, 3(10), 388–415, doi:10.1002/2015ea000136, 2016.&lt;/li&gt;
  &lt;li&gt;&lt;a name=&quot;hardwicke&quot;&gt;&lt;/a&gt;Hardwicke, T. E., Mathur, M. B., MacDonald, K., Nilsonne, G., Banks, G. C., Kidwell, M. C., Hofelich Mohr, A., Clayton, E., Yoon, E. J., Henry Tessler, M., Lenne, R. L., Altman, S., Long, B. and Frank, M. C.: &lt;a href=&quot;https://doi.org/10.1098/rsos.180448&quot;&gt;Data availability, reusability, and analytic reproducibility: evaluating the impact of a mandatory open data policy at the journal Cognition&lt;/a&gt;, Royal Society Open Science, 5(8), 180448, doi:10.1098/rsos.180448, 2018.&lt;/li&gt;
  &lt;li&gt;&lt;a name=&quot;konkol-cgis&quot;&gt;&lt;/a&gt;Konkol, M. and Kray, C.: &lt;a href=&quot;https://doi.org/10.1080/15230406.2018.1512421&quot;&gt;In-depth examination of spatiotemporal figures in open reproducible research&lt;/a&gt;, Cartography and Geographic Information Science, 1–16, doi:10.1080/15230406.2018.1512421, 2018.&lt;/li&gt;
  &lt;li&gt;&lt;a name=&quot;konkol-ijgis&quot;&gt;&lt;/a&gt;Konkol, M., Kray, C. and Pfeiffer, M.: &lt;a href=&quot;https://doi.org/10.1080/13658816.2018.1508687&quot;&gt;Computational reproducibility in geoscientific papers: Insights from a series of studies with geoscientists and a reproduction study&lt;/a&gt;, International Journal of Geographical Information Science, 1–22, doi:10.1080/13658816.2018.1508687, 2018.&lt;/li&gt;
  &lt;li&gt;&lt;a name=&quot;markowetz&quot;&gt;&lt;/a&gt;Markowetz, F.: &lt;a href=&quot;https://doi.org/10.1186/s13059-015-0850-7&quot;&gt;Five selfish reasons to work reproducibly&lt;/a&gt;, Genome Biology, 16(1), doi:10.1186/s13059-015-0850-7, 2015.&lt;/li&gt;
  &lt;li&gt;&lt;a name=&quot;marwick&quot;&gt;&lt;/a&gt;Marwick, B., Boettiger, C. and Mullen, L.: &lt;a href=&quot;https://doi.org/10.1080/00031305.2017.1375986&quot;&gt;Packaging Data Analytical Work Reproducibly Using R (and Friends)&lt;/a&gt;, The American Statistician, 72(1), 80–88, doi:10.1080/00031305.2017.1375986, 2017.&lt;/li&gt;
  &lt;li&gt;&lt;a name=&quot;munafo&quot;&gt;&lt;/a&gt;Munafò, M. R., Nosek, B. A., Bishop, D. V. M., Button, K. S., Chambers, C. D., Percie du Sert, N., Simonsohn, U., Wagenmakers, E.-J., Ware, J. J. and Ioannidis, J. P. A.: &lt;a href=&quot;https://doi.org/10.1038/s41562-016-0021&quot;&gt;A manifesto for reproducible science, Nature Human Behaviour&lt;/a&gt;, 1(1), 21, doi:10.1038/s41562-016-0021, 2017.&lt;/li&gt;
  &lt;li&gt;&lt;a name=&quot;nuest&quot;&gt;&lt;/a&gt;Nüst, D., Granell, C., Hofer, B., Konkol, M., Ostermann, F. O., Sileryte, R. and Cerutti, V.: &lt;a href=&quot;https://doi.org/10.7717/peerj.5072&quot;&gt;Reproducible research and GIScience: an evaluation using AGILE conference papers&lt;/a&gt;, PeerJ, 6, e5072, doi:10.7717/peerj.5072, 2018.&lt;/li&gt;
  &lt;li&gt;&lt;a name=&quot;ostermann&quot;&gt;&lt;/a&gt;Ostermann, F. O. and Granell, C.: &lt;a href=&quot;https://doi.org/10.1111/tgis.12195&quot;&gt;Advancing Science with VGI: Reproducibility and Replicability of Recent Studies using VGI&lt;/a&gt;, Transactions in GIS, 21(2), 224–237, doi:10.1111/tgis.12195, 2016.&lt;/li&gt;
  &lt;li&gt;&lt;a name=&quot;pearse&quot;&gt;&lt;/a&gt;Pearse, W. D. and A Chamberlain, S.: &lt;a href=&quot;https://doi.org/10.21105/joss.00721&quot;&gt;Suppdata: Downloading Supplementary Data from Published Manuscripts&lt;/a&gt;, Journal of Open Source Software, 3(25), 721, doi:10.21105/joss.00721, 2018.&lt;/li&gt;
  &lt;li&gt;&lt;a name=&quot;repozip&quot;&gt;&lt;/a&gt;&lt;a href=&quot;https://osf.io/vc72z/&quot;&gt;ReproZip: Computational Reproducibility With Ease&lt;/a&gt;, F. Chirigati, R. Rampin, D. Shasha, and J. Freire. In Proceedings of the 2016 ACM SIGMOD International Conference on Management of Data (SIGMOD), pp. 2085-2088, 2016&lt;/li&gt;
  &lt;li&gt;&lt;a name=&quot;sandve&quot;&gt;&lt;/a&gt;Sandve, G. K., Nekrutenko, A., Taylor, J. and Hovig, E.: &lt;a href=&quot;https://doi.org/10.1371/journal.pcbi.1003285&quot;&gt;Ten Simple Rules for Reproducible Computational Research&lt;/a&gt;, edited by P. E. Bourne, PLoS Computational Biology, 9(10), e1003285, doi:10.1371/journal.pcbi.1003285, 2013.&lt;/li&gt;
  &lt;li&gt;&lt;a name=&quot;stark&quot;&gt;&lt;/a&gt;Stark, P. B.: &lt;a href=&quot;https://doi.org/10.1038/d41586-018-05256-0&quot;&gt;Before reproducibility must come preproducibility&lt;/a&gt;, Nature, 557(7707), 613–613, doi:10.1038/d41586-018-05256-0, 2018.&lt;/li&gt;
  &lt;li&gt;&lt;a name=&quot;toelch&quot;&gt;&lt;/a&gt;Toelch, U. and Ostwald, D.: &lt;a href=&quot;https://doi.org/10.1371/journal.pbio.2006022&quot;&gt;Digital open science—Teaching digital tools for reproducible and transparent research&lt;/a&gt;, PLOS Biology, 16(7), e2006022, doi:10.1371/journal.pbio.2006022, 2018.&lt;/li&gt;
  &lt;li&gt;&lt;a name=&quot;jupyter&quot;&gt;&lt;/a&gt;Jupyter, P., Bussonnier, M., Forde, J., Freeman, J., Granger, B., Head, T., Holdgraf, C., Kelley, K., Nalvarte, G., Osheroff, A., Pacer, M., Panda, Y., Perez, F., Ragan-Kelley, B. and Willing, C.: &lt;a href=&quot;http://conference.scipy.org/proceedings/scipy2018/pdfs/project_jupyter.pdf&quot;&gt;Binder 2.0 - Reproducible, interactive, sharable environments for science at scale&lt;/a&gt;, in Proceedings of the 17th Python in Science Conference, SciPy., 2018.&lt;/li&gt;
  &lt;li&gt;&lt;a name=&quot;wilson&quot;&gt;&lt;/a&gt;Wilson, G., Bryan, J., Cranston, K., Kitzes, J., Nederbragt, L. and Teal, T. K.: &lt;a href=&quot;https://doi.org/10.1371/journal.pcbi.1005510&quot;&gt;Good enough practices in scientific computing&lt;/a&gt;, PLOS Computational Biology, 13(6), e1005510, doi:10.1371/journal.pcbi.1005510, 2017.&lt;/li&gt;
  &lt;li&gt;&lt;a name=&quot;yates&quot;&gt;&lt;/a&gt;Yates, K. K., Zawada, D. G., Smiley, N. A. and Tiling-Range, G.: &lt;a href=&quot;https://doi.org/10.5194/bg-14-1739-201&quot;&gt;Divergence of seafloor elevation and sea level rise in coral reef ecosystems&lt;/a&gt;, Biogeosciences, 14(6), 1739–1772, doi:10.5194/bg-14-1739-2017, 2017.&lt;/li&gt;
&lt;/ul&gt;
</content>
 </entry>
 
 <entry>
   <title>New article published in International Journal of Geographical Information Science</title>
   <link href="https://o2r.info/2018/12/17/article-published/"/>
   <updated>2018-12-17T00:00:00+00:00</updated>
   <id>https://o2r.info/2018/12/17/article-published</id>
   <content type="html">&lt;p&gt;&lt;a href=&quot;https://doi.org/10.1080/13658816.2018.1508687&quot;&gt;&lt;img src=&quot;/public/images/2018-12_ijgis-screenshot.jpg&quot; alt=&quot;IJGIS journal article screenshot&quot; title=&quot;IJGIS journal article screenshot&quot; width=&quot;300&quot; class=&quot;img rightfloat&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A few weeks ago, a new journal article written by o2r team member &lt;a href=&quot;https://orcid.org/0000-0001-6651-0976&quot;&gt;Markus&lt;/a&gt; got published.
In &lt;a href=&quot;/2018/07/13/peerj-article-published/&quot;&gt;our last article&lt;/a&gt;, we talked about the reproducibility of papers submitted to the AGILE conference.
We checked if the papers had materials attached and if these materials were complete.
The results were rather unfortunate.
In our newest article, we took one further step and tried to &lt;em&gt;re-run the analyses of articles&lt;/em&gt; which had code and data in the supplements.&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;em&gt;Markus Konkol, Christian Kray &amp;amp; Max Pfeiffer (2019). &lt;strong&gt;Computational reproducibility in geoscientific papers: Insights from a series of studies with geoscientists and a reproduction study&lt;/strong&gt;, International Journal of Geographical Information Science, 33:2, 408-429, DOI: &lt;a href=&quot;https://doi.org/10.1080/13658816.2018.1508687&quot;&gt;10.1080/13658816.2018.1508687&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The article builds upon &lt;a href=&quot;/2018/08/14/demo-server-update/&quot;&gt;our paper corpus for demonstrating the o2r platform&lt;/a&gt;.
Feel free to distribute this piece of research to whoever might be interested.
Feedback is always welcome.&lt;/p&gt;

&lt;p&gt;Here is a non-specialist summary:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;Recreating scientific data analysis is hard, but important.
To learn more about the state of reproducibility in geosciences, we conducted several studies.
We contacted over 150 geoscientists who publish and read articles based on code and data.
We learned that as readers they often would like to have access to these materials, but as authors they often do not have the time or expertise to make them available.
We also collected articles which use computational analyses and tried to execute the attached code.
This was not as easy as it sounds! We describe these numerous issues in a structured way and our experiences in this publication.
Some issues were pretty easy to solve, such as installing a missing library.
Others were more demanding and required deep knowledge of the code which is, as you might imagine, highly time consuming.
Further issues were missing materials (code snippets, data subsets) and flawed functionalities.
In some cases, we contacted the original authors who were, and this was a positive outcome, mostly willing to help.
We also compared the figures we got out of the code with those contained in the original article.
Bad news: We found several differences related to the design of the figures and results that deviated from those described in the paper.
OK, this is interesting, but why is it important?
We argue, a key advantage of open reproducible research is that you can reuse existing materials.
Apparently, this is usually not possible without some significant effort. Our goal is not to blame authors.
We are very happy that they shared their materials.
But they did that with a specific purpose in mind, i.e. making code and data available and reusable for others to build upon that.
One incentive in this context is an increased number of citations, one of the main currencies for researchers.
To facilitate that, we suggest some guidelines to avoid the issues we encountered during our reproducibility study, such as using Executable Research Compendia (ever heard of them? :)).&lt;/p&gt;
&lt;/blockquote&gt;
</content>
 </entry>
 
 <entry>
   <title>elife sprint: Integrating Stencila and Binder</title>
   <link href="https://o2r.info/2018/11/21/elife-sprint-integrating-stencila-and-binder/"/>
   <updated>2018-11-21T00:00:00+00:00</updated>
   <id>https://o2r.info/2018/11/21/elife-sprint-integrating-stencila-and-binder</id>
   <content type="html">&lt;p&gt;&lt;em&gt;This article reports on a project, integrating Stencila and Binder, which started at the eLife Innovation Sprint 2018. It has been cross-posted on multiple blogs (&lt;a href=&quot;https://elifesciences.org/labs/d42fe2b9/integrating-binder-and-stencila-the-building-blocks-to-increased-open-communication-and-transparency&quot;&gt;eLife Labs&lt;/a&gt;, &lt;a href=&quot;https://stenci.la/blog/2018-11-20-stencila-binder/&quot;&gt;Stencila&lt;/a&gt;, &lt;a href=&quot;https://blog.jupyter.org/elife-sprint-integrating-stencila-and-binder-18834e9ad584&quot;&gt;Jupyter&lt;/a&gt;). We welcome comments and feedback on any of them!&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://elifesciences.org/&quot;&gt;eLife&lt;/a&gt;, an open science journal published by the non-profit organisation eLife Sciences Publications from the UK, hosted the first &lt;a href=&quot;https://elifesciences.org/labs/bdd4c9aa/elife-innovation-sprint-2018-project-roundup&quot;&gt;eLife Innovation Sprint 2018&lt;/a&gt; as part of their &lt;a href=&quot;https://elifesciences.org/about/innovation&quot;&gt;Innovation Initiative&lt;/a&gt; in Cambridge, UK:
&lt;em&gt;“[..] a two-day gathering of 62 researchers, designers, developers, technologists, science communicators and more, with the goal of developing prototypes of innovations that bring cutting-edge technology to open research communication.”&lt;/em&gt;
One of the &lt;a href=&quot;https://elifesciences.org/labs/bdd4c9aa/elife-innovation-sprint-2018-project-roundup&quot;&gt;13&lt;/a&gt; projects at the &lt;a href=&quot;https://elifesciences.org/inside-elife/b4ed92e1/innovation-collaboration-and-creativity-at-the-heart-of-the-elife-innovation-sprint-2018&quot;&gt;excellently organised event&lt;/a&gt; was an &lt;strong&gt;integration of &lt;a href=&quot;https://mybinder.readthedocs.io/&quot;&gt;Binder&lt;/a&gt; and &lt;a href=&quot;https://stenci.la/&quot;&gt;Stencila&lt;/a&gt;&lt;/strong&gt;&lt;!--more--&gt;.&lt;/p&gt;

&lt;p&gt;This article reports on the project’s inception, building blocks, achievements at the sprint weekend, and work conducted in the months following the sprint.
&lt;strong&gt;Today, Binder has first class Stencila support.&lt;/strong&gt;
You can open Stencila documents from any online code repository on &lt;a href=&quot;https://mybinder.org/&quot;&gt;mybinder.org&lt;/a&gt; with the click of a single button. Just try out the example below:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://mybinder.org/v2/gh/binder-examples/stencila-py/master?urlpath=stencila&quot;&gt;&lt;img src=&quot;https://mybinder.org/badge_logo.svg&quot; alt=&quot;Binder&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2 id=&quot;the-idea-and-the-sprint-team&quot;&gt;The idea and the sprint team&lt;/h2&gt;

&lt;p&gt;The eLife Innovation Sprint started with brief &lt;a href=&quot;https://docs.google.com/presentation/d/1gvyoGW-__7k41KFN4PLhZtpapHNr-4IoeMTIXMiFHDs/edit#&quot;&gt;introductions by all participants&lt;/a&gt;.
Some of them prepared pitches for projects ideas, which quickly got little group discussions going.
One table at the sprint attracted a few people with an interest in &lt;a href=&quot;https://en.wikipedia.org/wiki/Operating-system-level_virtualization&quot;&gt;containerisation technology&lt;/a&gt; for research applications.
Many ideas were floated and a helpful exchange around existing solutions and tools took place.
When it was time to find a concrete task, two of the sprinters identified a worthwhile technological problem as their challenge for the next 1.5 days and the project “Jupyter+DAR compatibility exploration” started.
&lt;a href=&quot;https://github.com/minrk&quot;&gt;Min&lt;/a&gt; from the &lt;a href=&quot;https://www.simula.no/people/benjaminrk&quot;&gt;Simula Research Laboratory&lt;/a&gt;, Norway, is a core developer of &lt;a href=&quot;https://mybinder.readthedocs.io/en/latest/&quot;&gt;Binder&lt;/a&gt; and related tools.
He was interested to get to know the Stencila project and explore the possibilities of having alternative user interfaces on Jupyter Hub.
&lt;a href=&quot;https://github.com/nuest&quot;&gt;Daniel&lt;/a&gt; from the &lt;a href=&quot;https://o2r.info&quot;&gt;o2r&lt;/a&gt; project at the &lt;a href=&quot;https://www.uni-muenster.de/Geoinformatics/&quot;&gt;Institute for Geoinformatics&lt;/a&gt;, Germany, works on reproducible computations in the geosciences and had a keen interest in learning more about the Binder platform.
They were joined remotely by &lt;a href=&quot;https://github.com/nokome&quot;&gt;Nokome&lt;/a&gt;, the initiator and one of the developers of Stencila.&lt;/p&gt;

&lt;h2 id=&quot;the-building-blocks&quot;&gt;The building blocks&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Stencila Desktop&lt;/strong&gt; is an &lt;a href=&quot;https://elifesciences.org/labs/c496b8bb/stencila-an-office-suite-for-reproducible-research&quot;&gt;office suite for reproducible research documents&lt;/a&gt;.
It allows scientists to use languages like R and Python within familiar and intuitive word processor and spreadsheet user interfaces.
By doing so, it aims to lower the barriers to reproducible research for those with little or no software development skills. 
At the same time, Stencila aims to make it easy for researchers versed in software development to collaborate with their colleagues without having to switch from R or Python.
Stencila Desktop is built upon &lt;a href=&quot;https://github.com/substance/texture/&quot;&gt;Texture&lt;/a&gt;, an editor for scientific content, which uses the &lt;a href=&quot;https://github.com/substance/dar&quot;&gt;Dar&lt;/a&gt; file format. Dar is an extension of the JATS publishing format which has been designed for &lt;a href=&quot;https://elifesciences.org/labs/7dbeb390/reproducible-document-stack-supporting-the-next-generation-research-article&quot;&gt;reproducible research publications&lt;/a&gt;. It aims to serve researchers using computational methods for data, and publishers using digital workflows for publication and preservation of scholarly journals.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Binder&lt;/strong&gt; makes it simple to generate reproducible computing environments from code repositories.
The online service &lt;a href=&quot;https://mybinder.org/&quot;&gt;mybinder.org&lt;/a&gt; is the most prominent example for a platform based on the Binder project, a part of &lt;a href=&quot;https://jupyter.org/&quot;&gt;Project Jupyter&lt;/a&gt;.
A user can run a &lt;a href=&quot;https://en.wikipedia.org/wiki/Project_Jupyter#Jupyter_Notebook&quot;&gt;Jupyter Notebook&lt;/a&gt; and other environments for their research projects, which are published in online repositories (e.g. GitHub or GitLab, see &lt;a href=&quot;https://github.com/binder-examples/&quot;&gt;binder examples&lt;/a&gt;).
In the &lt;a href=&quot;https://en.wikipedia.org/wiki/Unix_philosophy&quot;&gt;spirit of the Unix philosophy&lt;/a&gt;, Binder combines several Open Source tools to achieve this goal: &lt;a href=&quot;https://repo2docker.readthedocs.io/&quot;&gt;repo2docker&lt;/a&gt;, for generating &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;Dockerfile&lt;/code&gt;s and building Docker images from software projects, &lt;a href=&quot;https://z2jh.jupyter.org/&quot;&gt;JupyterHub&lt;/a&gt; for executing a Docker image and user-facing web portal in a cloud environment, and &lt;a href=&quot;https://binderhub.readthedocs.org/&quot;&gt;BinderHub&lt;/a&gt; for gluing the above together.&lt;/p&gt;

&lt;p&gt;A &lt;strong&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;Dockerfile&lt;/code&gt;&lt;/strong&gt; is a human- and machine-readable recipe for setting up a computational environment, which is just fancy words for saying “installing and configuring software”.
&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;Dockerfile&lt;/code&gt;s are used by the popular &lt;a href=&quot;https://en.wikipedia.org/wiki/Docker_(software)&quot;&gt;Docker&lt;/a&gt; container software.
They can be built into an executable image, which is portable between host computers.
These properties make containers &lt;a href=&quot;https://duckduckgo.com/?q=docker+reproducible+research&quot;&gt;very interesting&lt;/a&gt; for capturing and sharing research involving data and software.&lt;/p&gt;

&lt;p&gt;While containers have become a commodity for developers, researchers still struggle to grasp and control the complexity of computational environments.
This is where the two building blocks join:
&lt;strong&gt;Running Stencila as part of a Binder helps researchers to communicate their work openly, to collaborate effectively with other scientists, and to ensure a high quality and transparency of their workflow and findings.&lt;/strong&gt;&lt;/p&gt;

&lt;h2 id=&quot;the-challenge&quot;&gt;The challenge&lt;/h2&gt;

&lt;p&gt;As Min and Daniel &lt;a href=&quot;https://docs.google.com/document/d/1WPMY-Al7WMdjlepKvvLiIxFrQPHFbADMNuwszs8xMHk/edit&quot;&gt;formulated their goals in the sprint project form&lt;/a&gt;, the project was heavy with software titles:&lt;/p&gt;

&lt;p&gt;&lt;em&gt;“Compatibility between Jupyter Notebooks / Binder and DAR / Texture / Stencila&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Their goal was &lt;em&gt;“[..] to connect them so that users can edit reproducible documents (DAR files) as part of a Binder project”&lt;/em&gt; with the following objectives: (i) understanding DAR [Dar Format], (ii) launching Stencila Editor on Binder (potentially not launching anything else, i.e. w/o the Jupyter Notebook start page), and (iii) repo2docker support for DAR files.
The project was also part of the &lt;a href=&quot;https://mozilla.github.io/global-sprint/&quot;&gt;Mozilla Global Sprint 2018&lt;/a&gt;, see &lt;a href=&quot;https://github.com/mozilla/global-sprint/issues/317&quot;&gt;mozilla/global-sprint#317&lt;/a&gt;.&lt;/p&gt;

&lt;h2 id=&quot;the-solution&quot;&gt;The solution&lt;/h2&gt;

&lt;p&gt;It took more than just the 1.5 days in Cambridge to really fulfil this challenge.
First we describe the crucial breakthroughs that were actually made at the sprint, then the updates that happened until today.&lt;/p&gt;

&lt;h3 id=&quot;sprint-breakthrough&quot;&gt;Sprint breakthrough&lt;/h3&gt;

&lt;p&gt;Min and Daniel started by taking a close look at an existing solution, namely the integration of RStudio based on &lt;a href=&quot;https://github.com/jupyterhub/nbrsessionproxy&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;nbrsessionproxy&lt;/code&gt;&lt;/a&gt;, i.e. the “Notebook R session proxy”.
They learned two things:&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;a Jupyter notebook extension can be used to add a menu item to the Jupyter UI&lt;/li&gt;
  &lt;li&gt;a component is needed to route the traffic between the browser-based user interface and the server-side software&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The first attempts utilised Binder’s feature of manually defining a bespoke &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;Dockerfile&lt;/code&gt; (see &lt;a href=&quot;https://github.com/minrk/nbstencilaproxy/commit/535900a934685bcfaf940956ba2571dddbb19009&quot;&gt;a first attempt&lt;/a&gt;) and later also a &lt;a href=&quot;https://repo2docker.readthedocs.io/en/latest/config_files.html#postbuild-run-code-after-installing-the-environment&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;postBuild&lt;/code&gt; script&lt;/a&gt; to install and configure all software.
It was Daniel’s first task to transfer the first finding for Stencila.
After setting up a local development environment and learning Jupyter/Binder, it just needed small adjustments to selected files from &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;nbrsessionproxy&lt;/code&gt; to achieve this (see &lt;a href=&quot;https://github.com/minrk/nbstencilaproxy/commit/8e8f3676cd6b4616c4b5cd1bca7a40c6fe399613&quot;&gt;commit&lt;/a&gt; from the second day):&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://github.com/mozilla/global-sprint/issues/317#issuecomment-388363617&quot;&gt;&lt;img src=&quot;/public/images/2018-11_nbstencilaproxy-screenshot-button.png&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Min took on the second task while at the same time figuring out what parts of Stencila we really needed, and how to glue them together.
He wrote a hard-wired proxy using &lt;a href=&quot;https://github.com/minrk/nbstencilaproxy/commit/af8749b96188d0caada80cc3c35fdae9c53de613&quot;&gt;Python&lt;/a&gt; and added some &lt;a href=&quot;https://github.com/minrk/nbstencilaproxy/commit/0bcbf63a6f47b5f67aace7f15d7bce89c9eff6d3&quot;&gt;JavaScript/HTML files&lt;/a&gt; to serve Dar files and the Stencila UI itself.&lt;/p&gt;

&lt;h4 id=&quot;connecting-stencila-to-jupyter-kernels&quot;&gt;Connecting Stencila to Jupyter kernels&lt;/h4&gt;

&lt;p&gt;Stencila has “execution contexts” (the equivalent of Jupyter’s “kernels”) for R, Python, SQL, Javascript (in the browser), and Node.js. Execution contexts differ from kernels in a number of ways including code dependency analysis and returning execution results as data values. Both of these are necessary for the reactive, functional execution model of Stencila.&lt;/p&gt;

&lt;p&gt;We could install these execution contexts in the Docker image.
However, Stencila also has a &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;JupyterContext&lt;/code&gt; which acts as a bridge between Stencila’s API and Jupyter kernels.
So, since the base &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;jupyter/minimal-notebook&lt;/code&gt; image already has a Jupyter kernel for Python installed, we decided to use that.
This did mean however, that some of the reactive aspects of the Stencila UI won’t work as expected.&lt;/p&gt;

&lt;p&gt;We included the &lt;a href=&quot;https://www.npmjs.com/package/stencila-node&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;stencila-node&lt;/code&gt;&lt;/a&gt; Node.js package in the Docker image which provides the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;JupyterContext&lt;/code&gt; as well as a &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;NodeContext&lt;/code&gt; (for executing Javascript) and a &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;SqliteContext&lt;/code&gt; (for executing SQL) .&lt;/p&gt;

&lt;p&gt;We first used Stencila’s development build to run the JavaScript app using &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;node make -w -s -d /our/own/dir&lt;/code&gt;, but struggled a bit to configure the file storage, i.e. the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;dar-server&lt;/code&gt;, to use the directory we want to, and to run it in a full path configured by us instead of &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;make.js&lt;/code&gt; starting the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;dar-server&lt;/code&gt; relative to &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;__dirname&lt;/code&gt;.
&lt;em&gt;Eventually&lt;/em&gt; we ended up implementing our own minimal JavaScript module (i.e. an &lt;a href=&quot;(https://npmjs.com/)&quot;&gt;npm&lt;/a&gt; package) that run (i) the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;dar-server&lt;/code&gt; and (ii) a static file server for the app using the distribution files (i.e. the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;dist&lt;/code&gt; directory).
This gave us control of the paths and let us get rid of complex development features (e.g. &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;substance-bundler&lt;/code&gt;).&lt;/p&gt;

&lt;p&gt;We also made our own version of &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;app.js&lt;/code&gt;, removing the virtual file storage (&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;vfs&lt;/code&gt;, used to seamlessly integrate examples) and instead defaulting to a file system (&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;fs&lt;/code&gt;) storage, because that is what is needed for Jupyter.
In the same line, we built or own &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;index.html&lt;/code&gt; (based on &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;example.html&lt;/code&gt;) to serve as the entry page.
This allowed us to directly render a single Dar document instead of a listing of examples and to use our own &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;app.js&lt;/code&gt;.
Relevant path configurations comprised the local storage path &lt;em&gt;as well as&lt;/em&gt; the URLs used by the client, accessing the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;dar-server&lt;/code&gt; through the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;nbserverproxy&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;At the end of the first day&lt;/strong&gt;, the wiring was all there so we could open a repository and the Stencila document was shown!
But the interactive execution of code cells did not work yet :-/.&lt;/p&gt;

&lt;p&gt;Thanks to an international time-zone-difference-powered “overnight” contribution, Min and Daniel got a big surprise on Friday morning:
Nokome &lt;a href=&quot;https://github.com/minrk/nbstencilaproxy/pull/5&quot;&gt;added the Stencila Node.js host for Jupyter execution context support&lt;/a&gt;, so that Python cells could be executed by connecting to the Jupyter Kernel (which of course was already there in the container).
In doing so, he returned the “surprise” he had &lt;a href=&quot;https://community.stenci.la/t/stencila-in-binder/142&quot;&gt;when learning about the project&lt;/a&gt;.
The added “host” provides the single gateway for code cell contents to be forwarded to the respective execution contexts.
Nokome showed everything works with the obligatory screenshot:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://github.com/minrk/nbstencilaproxy/pull/5&quot;&gt;&lt;img src=&quot;/public/images/2018-11_nbstencilaproxy-screenshot-pr5.png&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Since you can run any commit in a Binder, you can also try out that particular state &lt;a href=&quot;https://github.com/minrk/nbstencilaproxy/tree/d0df78cb4c37b53fd90088db8e36531a813898c1&quot;&gt;from the repository&lt;/a&gt; yourself:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://mybinder.org/v2/gh/minrk/nbstencilaproxy/d0df78cb4c37b53fd90088db8e36531a813898c1?urlpath=%2Fstencila%2F&quot;&gt;&lt;img src=&quot;https://mybinder.org/badge_logo.svg&quot; alt=&quot;Binder&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The second day of the sprint&lt;/strong&gt; involved many iterations of improvements, including changes to &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;repo2docker&lt;/code&gt;.
These updates could not simply be thrown upon mybinder.org, so Min set up a test server for the demonstrations at the sprint’s final day.
Daniel continued his work on supporting R code cells, but albeit &lt;a href=&quot;https://github.com/stencila/r/pull/22&quot;&gt;small contributions&lt;/a&gt; to the Stencila codebase, he could not complete this task in time.&lt;/p&gt;

&lt;p&gt;The sprint ended with &lt;a href=&quot;https://bit.ly/sprint-time-to-shine&quot;&gt;presentations by all projects&lt;/a&gt;, some of which are still continuing today, for example &lt;a href=&quot;https://appstract.pub/&quot;&gt;Appstract&lt;/a&gt;, &lt;a href=&quot;http://citationgecko.com/&quot;&gt;Citation Gecko&lt;/a&gt;, &lt;a href=&quot;https://www.prereview.org/&quot;&gt;PREreview&lt;/a&gt;, or &lt;a href=&quot;http://sciencepublishing.online/&quot;&gt;Octopus&lt;/a&gt;.
The results were truly awesome, ranging from ambitious concepts, case studies, design concepts, completely new tools with great UX design, to technical demonstrators.
It’s an easy guess where on the spectrum our project can be placed…
You’re invited to catch a glimpse of the sprint, its results, and the people behind all of it on Twitter under the hashtag &lt;a href=&quot;https://twitter.com/hashtag/eLifeSprint?src=hash&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;#eLifeSprint&lt;/code&gt;&lt;/a&gt; and read the &lt;a href=&quot;https://elifesciences.org/labs/bdd4c9aa/elife-innovation-sprint-2018-project-roundup&quot;&gt;project roundup&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The following screencast and Binder link show the &lt;strong&gt;status at the end of the sprint&lt;/strong&gt;: a Stencila document could be opened on a bespoke Binder deployment and the contained Python code could be interactively edited.
The code is re-run on the server and the figure updated.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2018-11_nbstencilaproxy-end-of-sprint-video.gif&quot; alt=&quot;&quot; /&gt;
[&lt;a href=&quot;https://www.youtube.com/watch?v=nK27j5DA5k0&quot;&gt;Watch video on YouTube&lt;/a&gt;]&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://mybinder.org/v2/gh/minrk/nbstencilaproxy/d3271fe66951f15caf30a0cd90ca9dce9f626921&quot;&gt;&lt;img src=&quot;https://mybinder.org/badge_logo.svg&quot; alt=&quot;Binder&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;!-- &lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;https://www.youtube-nocookie.com/embed/nK27j5DA5k0&quot; frameborder=&quot;0&quot; allow=&quot;accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture&quot; allowfullscreen&gt;&lt;/iframe&gt; --&gt;

&lt;p&gt;You can view the Python example document by appending &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;?archive=py-jupyter&lt;/code&gt; to the URL of Stencila in the Binder, e.g. &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;https://hub.mybinder.org/.../stencila/?archive=py-jupyter&lt;/code&gt;.&lt;/p&gt;

&lt;h3 id=&quot;consolidation&quot;&gt;Consolidation&lt;/h3&gt;

&lt;p&gt;A couple of weeks after the sprint, a second less intensive development period started. Daniel continued his work on adding support for the R context, and also managed to get plain Python cells running (see pull requests &lt;a href=&quot;https://github.com/minrk/nbstencilaproxy/pull/15&quot;&gt;#15&lt;/a&gt; and &lt;a href=&quot;https://github.com/minrk/nbstencilaproxy/pull/16&quot;&gt;#16&lt;/a&gt;).
Min restructured the whole project and gave it the name it still bears: &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;nbstencilaproxy&lt;/code&gt; - a Jupyter notebook server extension and proxy for Stencila.&lt;/p&gt;

&lt;p&gt;The projects GitHub repository holds a &lt;strong&gt;Python module&lt;/strong&gt; with the Jupyter notebook server and “non-server” extensions of the same name, and a &lt;a href=&quot;https://github.com/minrk/nbstencilaproxy/commit/93dabbd890397aaad0d8efb316f7e1f2129e52f3&quot;&gt;bundled&lt;/a&gt; &lt;strong&gt;JavaScript module&lt;/strong&gt; (of the same name).&lt;/p&gt;

&lt;p&gt;The Python module allows proper versioned installation, dependency management, and installation from an established software repository.
It takes care of the plumbing between the user interface and the services in the background, so that the binder is viewable over one port in the browser, while the many different background components run on their own ports.
The “no server” extension adds the “Stencila session” menu entry and conveniently lives in the same directory structure as the server extension.&lt;/p&gt;

&lt;p&gt;The JavaScript module manages the required JavaScript dependencies and provides an well-defined structure for the code files.
It serves the Dar document and provides access to the Stencila host (see above).&lt;/p&gt;

&lt;p&gt;While complex at first sight, this modularity hopefully makes maintenance for future developments and new collaborators easier.
For now, the JavaScript module and its installation are bundled with the Python module instead of being published independently, because the code and configuration is very much specific to the Jupyter integration.&lt;/p&gt;

&lt;p&gt;Min also extended &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;repo2docker&lt;/code&gt; with &lt;a href=&quot;https://github.com/jupyter/repo2docker/pull/309/commits/eaa29ef3343442419df8cdd022f3e91ae9262926&quot;&gt;automatic detection of Dar documents&lt;/a&gt; (as part of a “build pack”), so that no configuration is required for most common use cases.
As with most Binder repositories, a user could simply open a Dar document on Binder and trust the required environment to provide all required software.&lt;/p&gt;

&lt;p&gt;On July 20th the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;nbstencilaproxy&lt;/code&gt; &lt;a href=&quot;https://pypi.org/project/nbstencilaproxy/#history&quot;&gt;was published on PyPI&lt;/a&gt; and on August 1st, the new developments &lt;a href=&quot;https://github.com/jupyter/repo2docker/pull/309&quot;&gt;made it into &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;repo2docker&lt;/code&gt;&lt;/a&gt;.
Soon after Stencila was available for all users on mybinder.org, which was a great achievement for a little project started at a community sprint.
However, the big announcement was still not made, since some things were still hard-wired and, for example, to use R, the author of a repository &lt;a href=&quot;https://repo2docker.readthedocs.io/en/latest/config_files.html&quot;&gt;had to manually add a configuration file&lt;/a&gt; although the information that R is needed is already part of the Stencila document.&lt;/p&gt;

&lt;h3 id=&quot;the-last-mile&quot;&gt;The last mile&lt;/h3&gt;

&lt;p&gt;In October, Daniel took on the final tasks of writing this blog post and fixing the R installation, including the automatic detection of the required execution contexts of a given Dar document.
This included some &lt;a href=&quot;https://github.com/minrk/nbstencilaproxy/pull/18&quot;&gt;housekeeping&lt;/a&gt; in &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;nbstencilaproxy&lt;/code&gt; and more importantly new &lt;a href=&quot;https://github.com/jupyter/repo2docker/pull/457&quot;&gt;contributions to &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;repo2docker&lt;/code&gt;&lt;/a&gt; (thanks to &lt;a href=&quot;https://github.com/betatim&quot;&gt;Tim&lt;/a&gt; for review and help) to (i) properly detect the languages used in a Stencila document, (ii) extend the R build pack to install R if it is used in a Stencila document, and (iii) add documentation and tests.
&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;repo2docker&lt;/code&gt; now detects Dar documents based on their &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;manifest.xml&lt;/code&gt; files and uses the location of the first discovered one as the base directory to start Stencila.
If a Dar manifest is found, then &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;nbstencilaproxy&lt;/code&gt; is installed and the languages are extracted from code cells from the document.
Authors can install extra dependencies using the &lt;a href=&quot;https://repo2docker.readthedocs.io/en/latest/config_files.html&quot;&gt;repo2docker’s existing mechanisms&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Daniel also created a few &lt;strong&gt;example repositories&lt;/strong&gt; to provide a starting point for users.
Thankfully the binder team generously welcomed &lt;a href=&quot;&quot;&gt;the changes to mybinder.org&lt;/a&gt; and and the examples to the &lt;a href=&quot;https://github.com/binder-examples/&quot;&gt;binder examples organisation&lt;/a&gt; on GitHub.
The following repositories contain single or multiple Stencila documents with code chunks in different programming languages.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;https://github.com/binder-examples/stencila-py&quot;&gt;https://github.com/binder-examples/stencila-py&lt;/a&gt;&lt;/strong&gt; contains Python code cells, using both the Jupyter and plain Python execution contexts:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://mybinder.org/v2/gh/binder-examples/stencila-py/master?urlpath=stencila&quot;&gt;&lt;img src=&quot;https://mybinder.org/badge_logo.svg&quot; alt=&quot;Binder&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2018-11_nbstencilaproxy-example-stencila-py.png&quot; alt=&quot;Binder + Stencila screenshot: Python&quot; /&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;https://github.com/binder-examples/stencila-r&quot;&gt;https://github.com/binder-examples/stencila-r&lt;/a&gt;&lt;/strong&gt; contains R code cells and two plots:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://mybinder.org/v2/gh/binder-examples/stencila-r/master?urlpath=stencila&quot;&gt;&lt;img src=&quot;https://mybinder.org/badge_logo.svg&quot; alt=&quot;Binder&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2018-11_nbstencilaproxy-example-stencila-r.png&quot; alt=&quot;Binder + Stencila screenshot: R&quot; /&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;https://github.com/binder-examples/stencila-multi&quot;&gt;https://github.com/binder-examples/stencila-multi&lt;/a&gt;&lt;/strong&gt; demonstrates how to access specific Dar projects if multiple are found within a repository.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://mybinder.org/v2/gh/binder-examples/stencila-multi/master?urlpath=stencila&quot;&gt;&lt;img src=&quot;https://mybinder.org/badge_logo.svg&quot; alt=&quot;Binder&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In each case you can see the available execution environments by clicking on the icon in the bottom right corner.&lt;/p&gt;

&lt;p&gt;One of the cool features of Stencila are the reactive cells, as demonstrated in a tweet following the feature release:&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Thanks to &lt;a href=&quot;https://twitter.com/nordholmen?ref_src=twsrc%5Etfw&quot;&gt;@nordholmen&lt;/a&gt; working on &lt;a href=&quot;https://twitter.com/stencila?ref_src=twsrc%5Etfw&quot;&gt;@stencila&lt;/a&gt; support for &lt;a href=&quot;https://t.co/Zlj6FrYgBw&quot;&gt;https://t.co/Zlj6FrYgBw&lt;/a&gt; you now have reactive cells with Python code on &lt;a href=&quot;https://twitter.com/mybinderteam?ref_src=twsrc%5Etfw&quot;&gt;@mybinderteam&lt;/a&gt;! Give it a go &lt;a href=&quot;https://t.co/ToIuQPq0Fy&quot;&gt;https://t.co/ToIuQPq0Fy&lt;/a&gt; &lt;a href=&quot;https://t.co/Wjyf1kiH9B&quot;&gt;pic.twitter.com/Wjyf1kiH9B&lt;/a&gt;&lt;/p&gt;&amp;mdash; Tim Head (@betatim) &lt;a href=&quot;https://twitter.com/betatim/status/1062004432806785024?ref_src=twsrc%5Etfw&quot;&gt;12. November 2018&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;h2 id=&quot;summary-and-outlook&quot;&gt;Summary and outlook&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;Thanks for reading so far!&lt;/em&gt;
This blog post is a &lt;a href=&quot;https://github.com/minrk/nbstencilaproxy/issues/12&quot;&gt;long planned&lt;/a&gt; write-up of the history of the tool and decisions mostly relevant to developers, but also an demonstration of the power that the Open Source and Open Science community can foster.
Many people are working together on the (technological) challenges of science today towards full research transparency and reproducibility, even if we use computers to an unprecedented level.
Many small contributions on “side projects” such as these can make a difference, and connecting these two great projects hopefully helps to solve some problem in science down the road.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;What’s next?&lt;/em&gt;
While there are no concrete plans, there are of course some ideas listed on the &lt;a href=&quot;https://github.com/minrk/nbstencilaproxy/issues/&quot;&gt;project’s issue tracker&lt;/a&gt;, such as an automatic Jupyter notebook to Dar conversion when there is no Dar archive in a repository.
In any case you can keep an eye out on GitHub for projects being &lt;a href=&quot;https://github.com/search?q=topic%3Abinder+topic%3Astencila+org&amp;amp;type=Repositories&quot;&gt;tagged &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;stencila&lt;/code&gt; and &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;binder&lt;/code&gt;&lt;/a&gt; and join the public &lt;a href=&quot;https://gitter.im/stencila/stencila&quot;&gt;Stencila&lt;/a&gt; and &lt;a href=&quot;https://gitter.im/jupyterhub/binder&quot;&gt;binder&lt;/a&gt; chats to stay in touch or get help.
We look forward to see scientists using &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;nbstencilaproxy&lt;/code&gt; for communicating their work and new challenges that come with it.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;&lt;a href=&quot;https://twitter.com/hashtag/eLifeSprint?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#eLifeSprint&lt;/a&gt;-ers &lt;a href=&quot;https://twitter.com/minrk?ref_src=twsrc%5Etfw&quot;&gt;@minrk&lt;/a&gt; and &lt;a href=&quot;https://twitter.com/nordholmen?ref_src=twsrc%5Etfw&quot;&gt;@nordholmen&lt;/a&gt; are working to connect &lt;a href=&quot;https://twitter.com/hashtag/JupyterNotebooks?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#JupyterNotebooks&lt;/a&gt; / &lt;a href=&quot;https://twitter.com/hashtag/Binder?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#Binder&lt;/a&gt; with DAR / &lt;a href=&quot;https://twitter.com/hashtag/Texture?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#Texture&lt;/a&gt; / &lt;a href=&quot;https://twitter.com/stencila?ref_src=twsrc%5Etfw&quot;&gt;@Stencila&lt;/a&gt;, so that users can edit reproducible documents as part of a Binder project &lt;a href=&quot;https://t.co/2GoGNydsmX&quot;&gt;https://t.co/2GoGNydsmX&lt;/a&gt; (&lt;a href=&quot;https://twitter.com/mybinderteam?ref_src=twsrc%5Etfw&quot;&gt;@mybinderteam&lt;/a&gt; &lt;a href=&quot;https://twitter.com/ProjectJupyter?ref_src=twsrc%5Etfw&quot;&gt;@ProjectJupyter&lt;/a&gt; &lt;a href=&quot;https://twitter.com/_substance?ref_src=twsrc%5Etfw&quot;&gt;@_substance&lt;/a&gt;) &lt;a href=&quot;https://t.co/sZ8bbE9SsM&quot;&gt;pic.twitter.com/sZ8bbE9SsM&lt;/a&gt;&lt;/p&gt;&amp;mdash; eLife Innovation (@eLifeInnovation) &lt;a href=&quot;https://twitter.com/eLifeInnovation/status/994583390895697920?ref_src=twsrc%5Etfw&quot;&gt;10. Mai 2018&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

</content>
 </entry>
 
 <entry>
   <title>Demo server update</title>
   <link href="https://o2r.info/2018/08/14/demo-server-update/"/>
   <updated>2018-08-14T00:00:00+00:00</updated>
   <id>https://o2r.info/2018/08/14/demo-server-update</id>
   <content type="html">&lt;p&gt;We’ve been working on demonstrating our &lt;a href=&quot;/results&quot;&gt;reference-implementation&lt;/a&gt; during spring an managed to create a number of example workspaces.
We now decided to publish these workspaces on &lt;a href=&quot;https://o2r.uni-muenster.de/&quot;&gt;our demo server&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://o2r.uni-muenster.de/&quot;&gt;&lt;img src=&quot;/public/images/2018-08-14-demo/o2r-demo-listing.jpg&quot; alt=&quot;o2r screenshot 1: listing of compendia&quot; title=&quot;Screenshot 1: o2r reference implementation listing of published ERC&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Screenshot 1: o2r reference implementation &lt;em&gt;listing of published Executable Research Compendia&lt;/em&gt;. The right-hand side shows a metadata summary including original authors.&lt;/p&gt;

&lt;p&gt;The papers were originally published in &lt;!--more--&gt; &lt;a href=&quot;https://www.jstatsoft.org/&quot;&gt;Journal of Statistical Software&lt;/a&gt; or in a &lt;a href=&quot;https://publications.copernicus.org/&quot;&gt;Copernicus Publications&lt;/a&gt; journal under open licenses.
We have created an R Markdown document for each paper based on the included data and code following the &lt;a href=&quot;https://o2r.info/erc-spec/spec/&quot;&gt;ERC specification&lt;/a&gt; for naming core files, but only included data, an R Markdown document and a HTML display file.
The publication metadata, the runtime environment description (i.e. a &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;Dockerfile&lt;/code&gt;), and the runtime image (i.e. a Docker image tarball) were all created during the ERC creation process without any human interaction (see the used &lt;a href=&quot;https://github.com/o2r-project/erc-examples/blob/master/corpus/showcases.Rmd&quot;&gt;R code for upload&lt;/a&gt;), since required metadata were included in the R Markdown document’s front matter.&lt;/p&gt;

&lt;p&gt;The documents include selected figures or in some cases the whole paper, if runtime is not extremely long.
While the paper’s authors are correctly linked in the workspace metadata (see right hand side in &lt;em&gt;Screenshot 1&lt;/em&gt;), the “o2r author” of all papers is o2r team member Daniel since he made the uploads.
You can find all publications on his author page (this is the link you definitely want to try out!):&lt;/p&gt;

&lt;p&gt;❗ &lt;strong&gt;&lt;a href=&quot;https://o2r.uni-muenster.de/#!/author/0000-0002-0024-5046&quot;&gt;https://o2r.uni-muenster.de/#!/author/0000-0002-0024-5046&lt;/a&gt;&lt;/strong&gt; ❗&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2018-08-14-demo/o2r-demo-compendium.jpg&quot; alt=&quot;o2r screenshot 2: example compendium view&quot; title=&quot;Screenshot 2: o2r reference implementation display of a single ERC&quot; width=&quot;600&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Screenshot 2: o2r reference implementation &lt;em&gt;ERC detail page&lt;/em&gt; for compendium [SLVlQ](https://o2r.uni-muenster.de/#!/erc/5LVlQ). The link &quot;Article&quot; in the top left corner leads to the original article, the &quot;magnifying glass&quot; button takes you to a core feature: the reproduction result.&lt;/p&gt;

&lt;p&gt;You can get to the original publication by clicking the “Article” button in the top left corner (see &lt;em&gt;Screenshot 2&lt;/em&gt;).
The workspaces demonstrate a variety of issues and are a great source for future work on architecture and implementation.
Here are some examples of the power of a reproducible research service and publishing platform:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;The &lt;a href=&quot;https://o2r.uni-muenster.de/#!/erc/N4Jzp&quot;&gt;ERC for “Tidy Data” by Hadley Wickham&lt;/a&gt; completes the reproduction successfully, so no differences between the uploaded and reproduced HTML file were found! You can even download the image tarball (just bear with our demo - not production - server it it takes some time).&lt;/li&gt;
  &lt;li&gt;The &lt;a href=&quot;https://o2r.uni-muenster.de/#!/erc/Z4Hci&quot;&gt;ERC for “A question driven socio-hydrological modeling process” by Garcia et al.&lt;/a&gt; “fails” due to differences in the created figure. A human can now judge if these differences are minor, or the author can try to tweak rendering parameters to fix this. &lt;bf&gt;&lt;/bf&gt;&lt;img src=&quot;/public/images/2018-08-14-demo/o2r-demo-imagediff.jpg&quot; alt=&quot;o2r screenshot 3: image difference example&quot; title=&quot;Screenshot 3: image difference example of &amp;quot;failed&amp;quot; replication&quot; width=&quot;400&quot; /&gt;&lt;/li&gt;
  &lt;li&gt;A &lt;a href=&quot;https://o2r.uni-muenster.de/#!/erc/IKnWD&quot;&gt;demo ERC with randomised output&lt;/a&gt; shows how things can really go wrong. Feel free to click “Run Analysis” and see how the differences changes with each execution.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you want to go through the creation process yourself, register on the platform (this requires a short manual interaction by us) and upload one of selected workspaces, which you can find in our public demo share at &lt;a href=&quot;https://uni-muenster.sciebo.de/s/G8vxQ1h50V4HpuA&quot;&gt;https://uni-muenster.sciebo.de/s/G8vxQ1h50V4HpuA&lt;/a&gt; (just look for zip files starting with &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;corpus_..&lt;/code&gt;).
Please take care to choose appropriate licenses and be aware that we might remove compendia from the demo platform without prior notice.&lt;/p&gt;

&lt;p&gt;We welcome &lt;em&gt;your feedback&lt;/em&gt; &lt;a href=&quot;https://twitter.com/o2r_project/status/1029293814756851712&quot;&gt;on Twitter&lt;/a&gt;, in the &lt;a href=&quot;https://github.com/o2r-project/reference-implementation/issues/13&quot;&gt;reference implementation GitHub project&lt;/a&gt;, or in the comments below.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>New article published in PeerJ</title>
   <link href="https://o2r.info/2018/07/13/peerj-article-published/"/>
   <updated>2018-07-13T00:00:00+00:00</updated>
   <id>https://o2r.info/2018/07/13/peerj-article-published</id>
   <content type="html">&lt;p&gt;Today a new journal article lead by o2r team member &lt;a href=&quot;https://nordholmen.net/&quot;&gt;Daniel&lt;/a&gt; was published in the journal &lt;a href=&quot;https://peerj.com/&quot;&gt;PeerJ&lt;/a&gt;:&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;https://img.shields.io/badge/article-peer--reviewed-brightgreen.svg&quot; alt=&quot;publication badge&quot; class=&quot;publicationBadge&quot; /&gt;&lt;strong&gt;&lt;a href=&quot;https://doi.org/10.7717/peerj.5072&quot; title=&quot;CRIS entry of publication&quot;&gt;Reproducible research and GIScience: an evaluation using AGILE conference papers&lt;/a&gt;&lt;/strong&gt; by &lt;i&gt;&lt;a href=&quot;https://orcid.org/0000-0002-0024-5046&quot;&gt;Daniel Nüst&lt;/a&gt;, &lt;a href=&quot;https://orcid.org/0000-0003-1004-9695&quot;&gt;Carlos Granell&lt;/a&gt;, &lt;a href=&quot;https://orcid.org/0000-0001-7078-3766&quot;&gt;Barbara Hofer&lt;/a&gt;, &lt;a href=&quot;https://orcid.org/0000-0001-6651-0976&quot;&gt;Markus Konkol&lt;/a&gt;, &lt;a href=&quot;https://orcid.org/0000-0002-9317-8291&quot;&gt;Frank O. Ostermann&lt;/a&gt;, &lt;a href=&quot;https://orcid.org/0000-0002-8245-3016&quot;&gt;Rusne Sileryte&lt;/a&gt;, &lt;a href=&quot;https://orcid.org/0000-0002-9612-1581&quot;&gt;Valentina Cerutti&lt;/a&gt;&lt;/i&gt;
&lt;br /&gt;
&lt;i class=&quot;editor&quot;&gt;PeerJ. 2018.&lt;/i&gt;&lt;strong&gt;doi: &lt;a href=&quot;https://doi.org/10.7717/peerj.5072&quot;&gt;10.7717/peerj.5072&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The article is an outcome of a collaboration around the AGILE conference, see &lt;a href=&quot;https://o2r.info/reproducible-agile/&quot;&gt;https://o2r.info/reproducible-agile/&lt;/a&gt; for more information.
Please &lt;a href=&quot;https://twitter.com/f_ostermann/status/1017673264334766080&quot;&gt;retweet&lt;/a&gt; and spread the word!
&lt;a href=&quot;https://peerj.com/articles/5072/#questions&quot;&gt;Your questions &amp;amp; feedback&lt;/a&gt; are most welcome.&lt;/p&gt;

&lt;p&gt;Here is Daniel’s attempt at a &lt;strong&gt;&lt;a href=&quot;https://twitter.com/Protohedgehog/status/949315968903376896&quot;&gt;non-specialist summary&lt;/a&gt;&lt;/strong&gt;:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;More and more research use data and algorithms to answer a question.
That makes it harder for researchers to understand a scientific publication, because you need more than just the text to understand what is really going on.
You need the software and the data to be able to tell if everything is done correctly, and to be able to re-use new and exciting methods.
We took a look at the existing guides for such research and created our own criteria for research in sciences using environmental observations and maps.
We used the criteria to test how reproducible a set of papers from the AGILE conference actually are.
The conference is quite established and the papers are of high quality because they were all suggested for the “best paper” awards at the conference.&lt;/p&gt;

  &lt;p&gt;The results are quite bad!
We could not re-create any of the analyses.
Then we asked the authors of the papers we evaluated if they had considered that someone else might want to re-do their work.
While they all think the idea is great, many said they do not have the time for it.&lt;/p&gt;

  &lt;p&gt;The only way for researchers to have the time and resources to work in a way that is transparent to others and reusable openly is either to convince them of the importance or to force them.
We came up with a list of suggestions to publishers and scientific conference organisers to create enough reasons for researchers to publish science in a re-creatable way.&lt;/p&gt;
&lt;/blockquote&gt;
</content>
 </entry>
 
 <entry>
   <title>AGILE 2018 pre-conference workshop report</title>
   <link href="https://o2r.info/2018/06/21/agile-2018-pre-conference-workshop-report/"/>
   <updated>2018-06-21T11:47:00+00:00</updated>
   <id>https://o2r.info/2018/06/21/agile-2018-pre-conference-workshop-report</id>
   <content type="html">&lt;p&gt;Last week o2r team member &lt;a href=&quot;https://nordholmen.net/&quot;&gt;Daniel&lt;/a&gt; co-organised a workshop at the &lt;a href=&quot;http://agile-online.org/index.php/conference/conference-2018&quot;&gt;21st AGILE International Conference on Geographic Information Science&lt;/a&gt; in Lund, Sweden.
The workshop went very well and Daniel together with his colleagues was able to spread the word about reproducible research and Open Science.
They are pretty sure they convinced some new scientists to reconsider their habits!&lt;/p&gt;

&lt;p&gt;Daniel wrote a short report about the workshop: &lt;strong&gt;&lt;a href=&quot;https://o2r.info/reproducible-agile/2018/#workshop-report&quot;&gt;https://o2r.info/reproducible-agile/2018/#workshop-report&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;We are ready for the 2nd workshop on &lt;a href=&quot;https://twitter.com/hashtag/reproducibility?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#reproducibility&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/reproducibleresearch?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#reproducibleresearch&lt;/a&gt; at AGILE conference in Lund &lt;a href=&quot;https://twitter.com/hashtag/agileconf2018?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#agileconf2018&lt;/a&gt; &lt;a href=&quot;https://t.co/bbBok1SnRm&quot;&gt;pic.twitter.com/bbBok1SnRm&lt;/a&gt;&lt;/p&gt;&amp;mdash; Daniel Nüst (@nordholmen) &lt;a href=&quot;https://twitter.com/nordholmen/status/1006512760220418049?ref_src=twsrc%5Etfw&quot;&gt;12. Juni 2018&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;The workshop series will probably be continued at the next AGILE conference in Limassol, Cyprus.
For o2r participating in such a workshop is a great way to stay in touch with users of reproducibility tools and practices, and to give back to the communities not only with technology but with education.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Report from EGU 2018</title>
   <link href="https://o2r.info/2018/04/18/report-from-egu2018/"/>
   <updated>2018-04-18T00:00:00+00:00</updated>
   <id>https://o2r.info/2018/04/18/report-from-egu2018</id>
   <content type="html">&lt;p&gt;Last week &lt;a href=&quot;http://egu2018.eu/&quot;&gt;EGU General Assembly (GA) 2018&lt;/a&gt; took place in Vienna, Austria, and it was packed with interesting sessions and inspiring presentations.
The o2r team humbly tried to contribute to a massive conference: 15075 participants from &lt;a href=&quot;https://egu2018.eu/#CountryStatistics&quot;&gt;106&lt;/a&gt; countries gave 17323 presentations in 666 sessions (it’s been reported the programme committee briefly discussed adding a session…), taught 68 short courses, and collaborated in 294 side events.
Let’s go through the events with o2r participation in chronological order.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/egu2018-banner.png&quot; alt=&quot;EGU 2018 conference banner&quot; width=&quot;100%&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Image courtesy of EGU website.&lt;/p&gt;

&lt;p&gt;On &lt;em&gt;Monday&lt;/em&gt;, &lt;a href=&quot;https://orcid.org/0000-0002-0024-5046&quot;&gt;Daniel&lt;/a&gt; joined the first ever&lt;!--more--&gt; &lt;strong&gt;&lt;a href=&quot;http://eartharxiv.org/&quot;&gt;EarthArXiv&lt;/a&gt; &lt;a href=&quot;https://meetingorganizer.copernicus.org/EGU2018/session/29063&quot;&gt;townhall meeting&lt;/a&gt;&lt;/strong&gt;.
He was happy to share &lt;a href=&quot;https://www.generosity.com/community-fundraising/ten-thousand-eartharxiv-preprint-service-stickers&quot;&gt;his stickers&lt;/a&gt; with a small but engaged crowd and experienced an open-minded discussion about the young community-led EarthArXiv (already over 300 pre- and postprints after a little over 6 months), preprints, postprints, and the bigger picture of Open Access in the context of the two large conferences in the geosciences, EGU GA and the &lt;a href=&quot;https://fallmeeting.agu.org&quot;&gt;AGU Fall Meeting&lt;/a&gt;. AGU’s cooperation with &lt;a href=&quot;https://www.essoar.org/&quot;&gt;ESSOAr&lt;/a&gt; on abstracts and poster publications was presented at the meeting by &lt;a href=&quot;https://orcid.org/0000-0001-6230-7145&quot;&gt;Brooks Hanson&lt;/a&gt;.
The event went really well and it was fun to meet fellow Open Science enthusiasts &lt;a href=&quot;https://ethz.academia.edu/FriedrichHawemann&quot;&gt;Friedrich Hawemann&lt;/a&gt; and &lt;a href=&quot;https://about.me/geo.fernandez-blanco&quot;&gt;David Fernandez-Blanco&lt;/a&gt; (the mastermind behind the gif-loaden entertaining tweets by &lt;a href=&quot;https://twitter.com/EarthArXiv&quot;&gt;@EarthArXiv&lt;/a&gt;).&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Friedrich Hawemann making the case for preprints at the &lt;a href=&quot;https://twitter.com/EarthArXiv?ref_src=twsrc%5Etfw&quot;&gt;@EarthArXiv&lt;/a&gt; Townhall at &lt;a href=&quot;https://twitter.com/hashtag/EGU18?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#EGU18&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/preprint?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#preprint&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/postprint?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#postprint&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/openaccess?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#openaccess&lt;/a&gt; &lt;a href=&quot;https://t.co/TgfoPSVksD&quot;&gt;pic.twitter.com/TgfoPSVksD&lt;/a&gt;&lt;/p&gt;&amp;mdash; Daniel Nüst (@nordholmen) &lt;a href=&quot;https://twitter.com/nordholmen/status/983392981834182657?ref_src=twsrc%5Etfw&quot;&gt;9. April 2018&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;On &lt;em&gt;Tuesday&lt;/em&gt; the evening events continued with the always enjoyable &lt;strong&gt;&lt;a href=&quot;http://osgeo.org/&quot;&gt;OSGeo&lt;/a&gt; &lt;a href=&quot;https://meetingorganizer.copernicus.org/EGU2018/session/29320&quot;&gt;townhall meeting&lt;/a&gt;&lt;/strong&gt;.
Its theme was “Open Science demystified” and organiser &lt;a href=&quot;http://www.drloewe.eu/&quot;&gt;Peter Löwe&lt;/a&gt; nicely connected the spirit and goals of an Open Source organisation with Open Science.
As usual, it did not take long until newcomers could be helped with concrete advise on software, development, and transformation to &lt;a href=&quot;https://en.wikipedia.org/wiki/Foss&quot;&gt;FOSS&lt;/a&gt; for organisations by the attending mix of FOSS users, developers, contributors, and old-timers.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;It&amp;#39;s that time of year again: &lt;a href=&quot;https://twitter.com/OSGeo?ref_src=twsrc%5Etfw&quot;&gt;@OSGeo&lt;/a&gt;  townhall meeting at &lt;a href=&quot;https://twitter.com/hashtag/EGU18?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#EGU18&lt;/a&gt; &lt;a href=&quot;https://twitter.com/EuroGeosciences?ref_src=twsrc%5Etfw&quot;&gt;@EuroGeosciences&lt;/a&gt;&lt;a href=&quot;https://twitter.com/drpeterloewe?ref_src=twsrc%5Etfw&quot;&gt;@drpeterloewe&lt;/a&gt; continous his tremendous outreach activity (4th time convening?) and connects &lt;a href=&quot;https://twitter.com/hashtag/OpenScience?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#OpenScience&lt;/a&gt; with &lt;a href=&quot;https://twitter.com/hashtag/OpenSource?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#OpenSource&lt;/a&gt; - OSGeo is not limited to the latter! &lt;a href=&quot;https://t.co/UuFe0fAdxZ&quot;&gt;pic.twitter.com/UuFe0fAdxZ&lt;/a&gt;&lt;/p&gt;&amp;mdash; Daniel Nüst (@nordholmen) &lt;a href=&quot;https://twitter.com/nordholmen/status/983753702803673089?ref_src=twsrc%5Etfw&quot;&gt;10. April 2018&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;On &lt;em&gt;Wednesday&lt;/em&gt; Daniel had to shift his attention to the early morning.
In the PICO session &lt;a href=&quot;https://meetingorganizer.copernicus.org/EGU2018/session/27584&quot;&gt;IE4.4&lt;/a&gt;, &lt;strong&gt;“R and the benefit of low-cost solutions - democratic participation to face challenges in Earth science”&lt;/strong&gt;, he demonstrated the usefulness of &lt;a href=&quot;https://www.rocker-project.org/images/&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;rocker/geospatial&lt;/code&gt;&lt;/a&gt; for science with a number of showcases in a PICO presentation slot packed with exciting projects and software presentation.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Abstract: &lt;a href=&quot;https://meetingorganizer.copernicus.org/EGU2018/EGU2018-8500-1.pdf&quot;&gt;https://meetingorganizer.copernicus.org/EGU2018/EGU2018-8500-1.pdf&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Slides: &lt;a href=&quot;https://doi.org/10.5281/zenodo.1217911&quot;&gt;https://doi.org/10.5281/zenodo.1217911&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Thanks: &lt;a href=&quot;https://twitter.com/nordholmen/status/983730200373612544&quot;&gt;showcase authors&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;PICO uploaded! Don&amp;#39;t get to bed too late today or you&amp;#39;ll miss &amp;quot;rocker/geospatial: a flexible runtime environment for geoscientific data analysis&amp;quot; at &lt;a href=&quot;https://twitter.com/hashtag/EGU18?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#EGU18&lt;/a&gt; - PICO spot 4 tomorrow at 08:30 hrs. I showcase the community work headed by &lt;a href=&quot;https://twitter.com/cboettig?ref_src=twsrc%5Etfw&quot;&gt;@cboettig&lt;/a&gt; &amp;amp; &lt;a href=&quot;https://twitter.com/eddelbuettel?ref_src=twsrc%5Etfw&quot;&gt;@eddelbuettel&lt;/a&gt; for R in &lt;a href=&quot;https://twitter.com/Docker?ref_src=twsrc%5Etfw&quot;&gt;@Docker&lt;/a&gt; &lt;a href=&quot;https://t.co/F8KK453fFx&quot;&gt;pic.twitter.com/F8KK453fFx&lt;/a&gt;&lt;/p&gt;&amp;mdash; Daniel Nüst (@nordholmen) &lt;a href=&quot;https://twitter.com/nordholmen/status/983712891755991040?ref_src=twsrc%5Etfw&quot;&gt;10. April 2018&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;In the same session, &lt;a href=&quot;http://orcid.org/0000-0001-8049-7069&quot;&gt;Edzer&lt;/a&gt; presented “R vector and raster data cubes for openEO”, his latest work to continue the evolution for spatial data handling in R and connecting it to &lt;a href=&quot;http://openeo.org/&quot;&gt;openEO&lt;/a&gt;.
Both o2r team members could welcome many interested scientists at their PICO screens and had to stay until the very end answering questions and discussing the depths of the respective implementations.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Abstract: &lt;a href=&quot;https://meetingorganizer.copernicus.org/EGU2018/EGU2018-8198.pdf&quot;&gt;https://meetingorganizer.copernicus.org/EGU2018/EGU2018-8198.pdf&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;stars&lt;/code&gt; R package: &lt;a href=&quot;https://r-spatial.github.io/stars/&quot;&gt;https://r-spatial.github.io/stars/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Steadily growing crowd gathering at &lt;a href=&quot;https://twitter.com/hashtag/EGU18?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#EGU18&lt;/a&gt; session on &lt;a href=&quot;https://twitter.com/hashtag/R?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#R&lt;/a&gt; and the benefit if low-cost solutions - democratic participation to face challenges in Earth sciences &lt;a href=&quot;https://twitter.com/hashtag/rstats?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#rstats&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/PICO?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#PICO&lt;/a&gt; &lt;a href=&quot;https://twitter.com/EuroGeosciences?ref_src=twsrc%5Etfw&quot;&gt;@EuroGeosciences&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/rspatial?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#rspatial&lt;/a&gt; &lt;a href=&quot;https://t.co/MdgpJLnu4y&quot;&gt;pic.twitter.com/MdgpJLnu4y&lt;/a&gt;&lt;/p&gt;&amp;mdash; Daniel Nüst (@nordholmen) &lt;a href=&quot;https://twitter.com/nordholmen/status/983957403581415424?ref_src=twsrc%5Etfw&quot;&gt;11. April 2018&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;On &lt;em&gt;Thursday afternoon&lt;/em&gt; Daniel was joined by &lt;a href=&quot;https://orcid.org/0000-0001-6651-0976&quot;&gt;Markus&lt;/a&gt; and good friends of o2r from New York, &lt;a href=&quot;https://vickysteeves.com/&quot;&gt;Vicky&lt;/a&gt; and &lt;a href=&quot;http://remirampin.com/&quot;&gt;Remi&lt;/a&gt; from &lt;a href=&quot;https://datascience.nyu.edu/&quot;&gt;NYU Center for Data Science&lt;/a&gt; and &lt;a href=&quot;http://reprozip.org/&quot;&gt;ReproZip&lt;/a&gt;, to &lt;a href=&quot;/2017/05/03/egu-short-course-recap/&quot;&gt;continue the collaboration&lt;/a&gt; on teaching tools for Open Science and Reproducible Research at EGU.
They welcomed a large audience (70+ people) to the &lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2018/session/28650&quot;&gt;short course&lt;/a&gt; &lt;strong&gt;“Writing reproducible geoscience papers using R Markdown, Docker, and GitLab”&lt;/strong&gt;.
The course was hands-on, so participants worked with their own laptops.
Hopefully most of them arrived safely home with a working research environment for &lt;a href=&quot;http://r-project.org/&quot;&gt;R&lt;/a&gt; and &lt;a href=&quot;http://git-scm.com/&quot;&gt;git&lt;/a&gt;.
The course’s contents and speed are adjusted to accommodate the diverse previous knowledge from a multidisciplinary conference such as EGU.
Inspired by the great &lt;a href=&quot;https://carpentries.org/&quot;&gt;Carpentry courses&lt;/a&gt;, but considerably shorter and more dense, all conveners/teachers were active at the same time to lead through the instructions and help fixing the many little issues during software installations.
We tried hard to leave no one hanging behind and albeit being confronted with an estimated number of 6 operating systems the &lt;a href=&quot;https://www.rstudio.com/products/RStudio/&quot;&gt;RStudio&lt;/a&gt;-based instructions stood their ground excellently and we are glad to have received numerous positive feedbacks from participants.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Almost 70 people at our &lt;a href=&quot;https://twitter.com/hashtag/egu18repro?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#egu18repro&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/egu18?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#egu18&lt;/a&gt; session!! So many folks eager to learn about best practices for reproducible research in geoscience! &lt;a href=&quot;https://t.co/XSxc0s53uk&quot;&gt;https://t.co/XSxc0s53uk&lt;/a&gt;&lt;/p&gt;&amp;mdash; Vicky Steeves (joinmastodon.org) (@VickySteeves) &lt;a href=&quot;https://twitter.com/VickySteeves/status/984422094095208448?ref_src=twsrc%5Etfw&quot;&gt;12. April 2018&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;The &lt;em&gt;course material&lt;/em&gt; is available openly online at &lt;a href=&quot;https://vickysteeves.gitlab.io/repro-papers/&quot;&gt;&lt;strong&gt;https://vickysteeves.gitlab.io/repro-papers/&lt;/strong&gt;&lt;/a&gt; and if you could not be there, be sure to try and check out the Twitter hashtag &lt;a href=&quot;https://twitter.com/hashtag/egu18repro?src=hash&quot;&gt;&lt;strong&gt;#egu18repro&lt;/strong&gt;&lt;/a&gt; for some impressions.
The course is roughly split in two sessions à 90 minutes:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Introduction to Open Science, using git and GitLab&lt;/li&gt;
  &lt;li&gt;R Markdown for reproducible papers and rendering of R Markdown manuscripts with GitLab CI&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We sincerely thank the attendees for the useful questions and the positive atmosphere at the course!
People were helping each other and showed patience when little breaks had to be taken to solve individual issues.
We welcome comments, ideas and suggestions in the &lt;a href=&quot;https://gitlab.com/VickySteeves/repro-papers&quot;&gt;GitLab repository of the course&lt;/a&gt;.
We hope it’s not the last time we can use the material ourselves but also invite everybody to use it.
It contains numerous links to more detailed courses and we thank the R and Open Science communities for the breadth of existing tutorials and the inspiration they provide.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Our short course on writing reproducible geoscience papers is DONE! &lt;a href=&quot;https://twitter.com/hashtag/egu18repro?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#egu18repro&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/EGU18?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#EGU18&lt;/a&gt; &lt;a href=&quot;https://t.co/V3vwojpk11&quot;&gt;pic.twitter.com/V3vwojpk11&lt;/a&gt;&lt;/p&gt;&amp;mdash; Vicky Steeves (joinmastodon.org) (@VickySteeves) &lt;a href=&quot;https://twitter.com/VickySteeves/status/984454491176136704?ref_src=twsrc%5Etfw&quot;&gt;12. April 2018&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;The &lt;em&gt;evening&lt;/em&gt; belonged to yet another townhall meeting: &lt;strong&gt;&lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2018/session/29539&quot;&gt;“Research Software Engineers in the Geosciences”&lt;/a&gt;&lt;/strong&gt;.
Daniel initiated this meeting to bring together researchers developing software, or software developers doing research, to get to know the existing national chapters and initiatives as well as each other.
A diverse group came together from different countries and &lt;a href=&quot;https://www.egu.eu/structure/divisions/&quot;&gt;scientific divisions&lt;/a&gt; to share their experiences and to discuss how to improve the situation for RSEs in the geosciences (see &lt;a href=&quot;http://www.de-rse.org/en/aims.html&quot;&gt;de-RSE’s objectives&lt;/a&gt;).
A more detailed report from the townhall will follow in due course on the &lt;a href=&quot;http://www.de-rse.org/en/blog.html&quot;&gt;de-RSE Blog&lt;/a&gt;, until then see &lt;a href=&quot;https://twitter.com/nordholmen/status/984484030031843328&quot;&gt;Daniel’s full thread on Twitter&lt;/a&gt;.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;First research software engineers meeting at the EGU just started. Great to see people engaging with the role behind a crucial part of science. &lt;a href=&quot;https://twitter.com/hashtag/rse?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#rse&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/RSEng?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#RSEng&lt;/a&gt; &lt;a href=&quot;https://twitter.com/SoftwareSaved?ref_src=twsrc%5Etfw&quot;&gt;@SoftwareSaved&lt;/a&gt; &lt;a href=&quot;https://twitter.com/RSE_de?ref_src=twsrc%5Etfw&quot;&gt;@RSE_de&lt;/a&gt; &lt;a href=&quot;https://twitter.com/nordic_rse?ref_src=twsrc%5Etfw&quot;&gt;@nordic_rse&lt;/a&gt; &lt;a href=&quot;https://twitter.com/nl_rse?ref_src=twsrc%5Etfw&quot;&gt;@nl_rse&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/EGU18?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#EGU18&lt;/a&gt; &lt;a href=&quot;https://twitter.com/EGU_ESSI?ref_src=twsrc%5Etfw&quot;&gt;@EGU_ESSI&lt;/a&gt; &lt;a href=&quot;https://t.co/Y0lDsAtaae&quot;&gt;pic.twitter.com/Y0lDsAtaae&lt;/a&gt;&lt;/p&gt;&amp;mdash; Daniel Nüst (@nordholmen) &lt;a href=&quot;https://twitter.com/nordholmen/status/984479316699381760?ref_src=twsrc%5Etfw&quot;&gt;12. April 2018&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;On &lt;em&gt;Friday&lt;/em&gt; it was time for PICOs and posters. Daniel and Markus presented &lt;a href=&quot;https://meetingorganizer.copernicus.org/EGU2018/EGU2018-17461.pdf&quot;&gt;“Open Environmental Data Analysis”&lt;/a&gt; and &lt;a href=&quot;https://meetingorganizer.copernicus.org/EGU2018/EGU2018-19295-1.pdf&quot;&gt;“Reproducible research bindings”&lt;/a&gt; respectively in &lt;a href=&quot;https://meetingorganizer.copernicus.org/EGU2018/session/28036&quot;&gt;the session&lt;/a&gt; &lt;strong&gt;“Open Data, Reproducible Research, and Open Science”&lt;/strong&gt;.
Again we enjoyed fruitful discussions and missed out on the interesting other presentations as we were fortunate enough to be visited by interested people throughout the whole viewing time.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Daniel’s slides: &lt;a href=&quot;https://doi.org/10.5281/zenodo.1217912&quot;&gt;&lt;img src=&quot;https://zenodo.org/badge/DOI/10.5281/zenodo.1217912.svg&quot; alt=&quot;DOI&quot; /&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Last day at &lt;a href=&quot;https://twitter.com/hashtag/EGU18?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#EGU18&lt;/a&gt; and what a great week it has been so far &lt;a href=&quot;https://twitter.com/EGU_ESSI?ref_src=twsrc%5Etfw&quot;&gt;@EGU_ESSI&lt;/a&gt; &lt;a href=&quot;https://twitter.com/EuroGeosciences?ref_src=twsrc%5Etfw&quot;&gt;@EuroGeosciences&lt;/a&gt;. Now at PICO spot 1 in session &lt;a href=&quot;https://twitter.com/hashtag/OpenData?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#OpenData&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/OpenScience?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#OpenScience&lt;/a&gt; and &lt;a href=&quot;https://twitter.com/hashtag/ReproducibleResearch?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#ReproducibleResearch&lt;/a&gt; incl. presentation by &lt;a href=&quot;https://twitter.com/thomas_barto?ref_src=twsrc%5Etfw&quot;&gt;@thomas_barto&lt;/a&gt; and me on open env. analysis w/ &lt;a href=&quot;https://twitter.com/openSenseMap?ref_src=twsrc%5Etfw&quot;&gt;@openSenseMap&lt;/a&gt; &amp;amp; &lt;a href=&quot;https://twitter.com/SenseBox_De?ref_src=twsrc%5Etfw&quot;&gt;@SenseBox_De&lt;/a&gt; &lt;a href=&quot;https://t.co/tRglBkhiMv&quot;&gt;pic.twitter.com/tRglBkhiMv&lt;/a&gt;&lt;/p&gt;&amp;mdash; Daniel Nüst (@nordholmen) &lt;a href=&quot;https://twitter.com/nordholmen/status/984680761549901825?ref_src=twsrc%5Etfw&quot;&gt;13. April 2018&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;&lt;a href=&quot;https://twitter.com/MarkusKonkol?ref_src=twsrc%5Etfw&quot;&gt;@MarkusKonkol&lt;/a&gt; presents results from &lt;a href=&quot;https://twitter.com/o2r_project?ref_src=twsrc%5Etfw&quot;&gt;@o2r_project&lt;/a&gt; : reproducible research bindings, increasing research transparency and understanding. &lt;a href=&quot;https://twitter.com/hashtag/OpenScience?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#OpenScience&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/reproducibleresearch?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#reproducibleresearch&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/EGU18?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#EGU18&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/EGU18ESSI?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#EGU18ESSI&lt;/a&gt; &lt;a href=&quot;https://t.co/UY7PqU4sA2&quot;&gt;pic.twitter.com/UY7PqU4sA2&lt;/a&gt;&lt;/p&gt;&amp;mdash; Daniel Nüst (@nordholmen) &lt;a href=&quot;https://twitter.com/nordholmen/status/984689770474426368?ref_src=twsrc%5Etfw&quot;&gt;13. April 2018&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;Later that morning Edzer presented a poster on “openEO: an open API for cloud-based big Earth Observation processing platforms” (&lt;a href=&quot;https://meetingorganizer.copernicus.org/EGU2018/EGU2018-8198.pdf&quot;&gt;abstract&lt;/a&gt;) in the session &lt;a href=&quot;https://meetingorganizer.copernicus.org/EGU2018/session/28035&quot;&gt;“Data cubes of Big Earth Data - a new paradigm for accessing and processing Earth Science Data”&lt;/a&gt;.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Drawing a big crowd at &lt;a href=&quot;https://twitter.com/EGU_ESSI?ref_src=twsrc%5Etfw&quot;&gt;@EGU_ESSI&lt;/a&gt; poster session: &lt;a href=&quot;https://twitter.com/edzerpebesma?ref_src=twsrc%5Etfw&quot;&gt;@edzerpebesma&lt;/a&gt; presenting &lt;a href=&quot;https://twitter.com/open_EO?ref_src=twsrc%5Etfw&quot;&gt;@open_EO&lt;/a&gt; project, an open API for Earth observation data and processing. &lt;a href=&quot;https://twitter.com/hashtag/EGU18?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#EGU18&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/DataCubes?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#DataCubes&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/opensource?src=hash&amp;amp;ref_src=twsrc%5Etfw&quot;&gt;#opensource&lt;/a&gt; &lt;a href=&quot;https://t.co/1rDoexZgPJ&quot;&gt;pic.twitter.com/1rDoexZgPJ&lt;/a&gt;&lt;/p&gt;&amp;mdash; Daniel Nüst (@nordholmen) &lt;a href=&quot;https://twitter.com/nordholmen/status/984725790133751808?ref_src=twsrc%5Etfw&quot;&gt;13. April 2018&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;We are happy to thank the great people from &lt;a href=&quot;https://meetings.copernicus.org/&quot;&gt;Copernicus&lt;/a&gt;, the organisers of the conference and a great supporter of Open Science as well as a &lt;a href=&quot;/about&quot;&gt;partner of o2r&lt;/a&gt;, who we got to meet and catch up with.
The conference has been great and here we only scratch the surface of fun, entertaining and educational experiences where o2r team members presented or convened and lack the many times we met &lt;a href=&quot;https://twitter.com/nordholmen/status/984768359244890117&quot;&gt;new people and communities&lt;/a&gt;, colleagues, and friends to talk science.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Thanks for reading!&lt;/em&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Digitisation of Science @ WWU</title>
   <link href="https://o2r.info/2018/02/27/digitisation-of-science/"/>
   <updated>2018-02-27T00:00:00+00:00</updated>
   <id>https://o2r.info/2018/02/27/digitisation-of-science</id>
   <content type="html">&lt;p&gt;o2r Team member &lt;a href=&quot;htts://nordholmen.net&quot;&gt;Daniel&lt;/a&gt; was invited by the university’s press office to participate in a &lt;a href=&quot;https://www.uni-muenster.de/news/index.php?mod=archive&amp;amp;rubrik=pr-digitalisierung&amp;amp;lang=en&quot;&gt;series of interviews and articles on digitisation or “digitalisation” at the WWU Münster&lt;/a&gt;:&lt;/p&gt;

&lt;p&gt;The video is now &lt;a href=&quot;https://www.uni-muenster.de/news/view.php?cmdid=9388&quot;&gt;available online in German&lt;/a&gt; (embedded below) and &lt;a href=&quot;https://www.uni-muenster.de/news/view.php?cmdid=9395&quot;&gt;with English subtitles&lt;/a&gt;.
You can also watch it &lt;a href=&quot;https://www.facebook.com/wwumuenster/videos/10156084978130350/&quot;&gt;on Facebook&lt;/a&gt; or in the &lt;a href=&quot;https://www.uni-muenster.de/videoportal/digitalisierung.html#nuest&quot;&gt;WWU video portal&lt;/a&gt;.&lt;/p&gt;

&lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;https://www.youtube-nocookie.com/embed/07qp9xHYknY&quot; frameborder=&quot;0&quot; allow=&quot;encrypted-media&quot; allowfullscreen=&quot;&quot;&gt;&lt;/iframe&gt;

&lt;p&gt;Daniel wrote a brief summary for our blog and shares his experience:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Interview summary&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;First we talked about how digitisation is a familiar topic for computer scientists professionally (digital data, algorithms), but also something we encounter as citizens.&lt;!--more--&gt;
Next I explained the importance of reproducibility in science and when asked if that was not the case in the past, I outlined the new challenges of a completely digital research workflow.
I summarise the idea of the o2r project and use the term &lt;em&gt;“digital laboratory”&lt;/em&gt; as a metaphor for our Executable Research Compendium, which collects all research artefacts and opens them up in a transparent way and allows collaboration.
We then briefly touch on the fact that the concepts and ideas are relevant for all sciences, but how o2r (and geoinformatics) focuses on geoscience applications.
Looking ahead I mention our plans to bring our idea of a reproducible article into the publishing workflow of regular scientists.
Is digitisation a blessing or a curse? It’s both, because it creates new challenges and exciting applications in geoinformatics, but the amount of information in large datasets is not always clear and requires critical dealing.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href=&quot;https://www.uni-muenster.de/news/view.php?cmdid=9395&quot;&gt;&lt;img src=&quot;/public/images/2018-02_cover-video-en.jpg&quot; alt=&quot;screenshot of video with English subtitles&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What was it like?&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;Shooting the interview was fun and a great experience.
Having two cameras pointed at you and 4 people standing critically observing in the background could have been intimidating, but it wasn’t - big thanks to the team!&lt;/p&gt;

  &lt;p&gt;The film shooting took only about 40 minutes (some technical preparations, two full takes, a little break and small talk) and was prepared with a one-hour conversation some weeks ahead.
I wrote down answers to some questions I expected - but the actual questions were not shared, for the better I think because the spontaneity makes it a conversation and less of a lecture.
The video published online is from the second, shorter take.
I wish they would have used the first one, because it was longer (around 10 minutes, so double the target time) and I could make more good points and feel like I got the message across better.
Researchers can go on for hours about topics they care about, and I hope my enthusiasm about Open Science and Reproducible Research does come across.
Though I am partly unhappy with the content, I hope the brevity spikes interest by fellow researchers and students at University of Münster.
Next time you feel like cutting down your paper from 6000 to 5000 words is hard, try bringing it down to 2 minutes of talking to a non-expert :-).
A worthwhile excercise by the way.&lt;/p&gt;

  &lt;p&gt;Although in this case, a non-expert could very well be an experienced scientists!
The lack of a common terminology for reproducible/replicable etc. became very apparent during the preparations.
For the next video I’ll make every spectator read &lt;a href=&quot;https://arxiv.org/abs/1802.03311&quot;&gt;“Terminologies for Reproducible Research”&lt;/a&gt; first …&lt;/p&gt;

  &lt;p&gt;&lt;a href=&quot;https://de.wikipedia.org/wiki/Digitalisierung&quot;&gt;“Digitalisierung”&lt;/a&gt; is a very hot topic in Germany, both in &lt;a href=&quot;https://www.cnbc.com/2018/01/24/germanys-needs-to-modernize-and-embrace-digitization-merkel-says.html&quot;&gt;politics&lt;/a&gt; and &lt;a href=&quot;https://www.politico.eu/article/5-questions-for-germanys-digital-future/&quot;&gt;economy&lt;/a&gt;. It regularly makes it into national news and more and more also into small talk.
There is so much connected with digitisation I did not touch on, like artificial intelligence (AI). How can we ensure research transparency and reproducibility when we don’t even know how something works?
&lt;em&gt;The one thing I regret&lt;/em&gt; not saying in the interview is the fact that having studied computer science, I rarely grasp the difficulties non-programmers must have with digitisation.
While I do sometimes have to “explain computers” to friends and family, I don’t do it often enough, and must show more patience when I get the chance.
AI, web services, cloud computing - it is complex stuff!
Let’s help non-techies close to us more in understanding them (reading recommendation: &lt;a href=&quot;https://www.amazon.com/Tubes-Journey-Internet-Andrew-Blum/dp/0061994952&quot;&gt;“Tubes: A Journey to the Center of the Internet” by Andrew Blum&lt;/a&gt;) !&lt;/p&gt;

  &lt;p&gt;Formulating my view on digitisation in research and its impact on research reproducibility in “plain language” was a worthwhile challenge and I can only recommend every researcher to participate in public relations workshops et cetera to try it out.
You got to take every chance you can get to reach out to non-scientists (research resolution: &lt;a href=&quot;https://twitter.com/Protohedgehog/status/949315968903376896?s=09&quot;&gt;Make sure all papers have non-specialist summaries&lt;/a&gt;).
I applaud all bloggers and podcasters out there who do!&lt;/p&gt;
&lt;/blockquote&gt;
</content>
 </entry>
 
 <entry>
   <title>Open environmental data analysis</title>
   <link href="https://o2r.info/2018/01/12/sensebox-binder/"/>
   <updated>2018-01-12T00:00:00+00:00</updated>
   <id>https://o2r.info/2018/01/12/sensebox-binder</id>
   <content type="html">&lt;p&gt;&lt;em&gt;This article is cross-posted in German on the &lt;a href=&quot;https://sensebox.de/blog/2018-01-12-Offene-Forschung&quot;&gt;senseBox blog&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;It’s the time of the year to make resolutions and to see beyond one’s own nose.
For o2r team member Daniel, this meant to explore what he could do with his brand new &lt;em&gt;&lt;a href=&quot;https://sensebox.de/de/products&quot;&gt;senseBox:home&lt;/a&gt;&lt;/em&gt; and the awesome &lt;em&gt;&lt;a href=&quot;https://binderhub.readthedocs.io&quot;&gt;BinderHub&lt;/a&gt;&lt;/em&gt; instead of putting it on the back burner.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://media.giphy.com/media/l49JRjO65S0WQ1Kyk/giphy.gif&quot;&gt;&lt;img src=&quot;https://media.giphy.com/media/l49JRjO65S0WQ1Kyk/giphy.gif&quot; alt=&quot;screencast of senseBox-Binder analysis in RStudio running on mybinder.org&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://mybinder.org/v2/gh/nuest/sensebox-binder/master&quot;&gt;&lt;img src=&quot;http://mybinder.org/badge.svg&quot; alt=&quot;Binder&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Building on a deep stack of Open Hardware, Free and Open Source Software, and Open Data, he created &lt;!--more--&gt;a fully open analysis of particulate measurements at New Year’s Eve in Münster.
With just a few clicks you can open the exact computational environment which he utilized to retrieve historic sensor data from the openSenseMap API, and to analyse and visualise it with R.
And all that without installing any software to your computer, all you need is a web browser.&lt;/p&gt;

&lt;p&gt;The following screenshots show the RStudio and Jupyter Notebook renderings of the workflow.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;/public/images/2018-01_sensebox-binder-rstudio-screenshot.png&quot;&gt;&lt;img src=&quot;/public/images/2018-01_sensebox-binder-rstudio-screenshot.png&quot; alt=&quot;screenshot of senseBox-Binder analysis in RStudio&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;/public/images/2018-01_sensebox-binder-jupyter-screenshot.png&quot;&gt;&lt;img src=&quot;/public/images/2018-01_sensebox-binder-jupyter-screenshot.png&quot; alt=&quot;screenshot of senseBox-Binder analysis in Jupyter Notebook&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And of course he worried about reproducibility and put in several layers of backup! Learn all about it at the GitHub repository:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;https://github.com/nuest/sensebox-binder/&quot;&gt;https://github.com/nuest/sensebox-binder/&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Or get a peak at the output of the analysis here: &lt;a href=&quot;https://nuest.github.io/sensebox-binder/sensebox-analysis.html&quot;&gt;https://nuest.github.io/sensebox-binder/sensebox-analysis.html&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And we were not the only ones taking a look at particulate matter in Germany using R.
&lt;a href=&quot;https://johannesfriedrich.github.io/&quot;&gt;Johannes Friedrich&lt;/a&gt;, researcher at &lt;a href=&quot;http://www.lumi.uni-bayreuth.de/&quot;&gt;University of Bayreuth&lt;/a&gt;, used his R package &lt;a href=&quot;https://github.com/JohannesFriedrich/senseBox&quot;&gt;senseBox&lt;/a&gt; to download and plot data of over 400 senseBoxes. See &lt;a href=&quot;https://johannesfriedrich.github.io/2018-01-11-particular-matter-new-year/&quot;&gt;his blog&lt;/a&gt; for his findings.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Events in 2018: Call for participation</title>
   <link href="https://o2r.info/2018/01/05/events-2018/"/>
   <updated>2018-01-05T00:00:00+00:00</updated>
   <id>https://o2r.info/2018/01/05/events-2018</id>
   <content type="html">&lt;p&gt;As everyone is slowly coming back to work, the o2r team wishes &lt;em&gt;Happy New Year&lt;/em&gt;. What better way to start the year with planning some fun trips? Here are our recommendations for upcoming events:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;/2018/01/05/events-2018/#open-science-r-and-foss-sessions-at-egu-general-assembly-2018&quot;&gt;EGU sessions on Reproducible Research, R, and FOSS&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/2018/01/05/events-2018/#short-course-on-reproducible-papers-at-egu-general-assembly-2018&quot;&gt;EGU short course “Writing reproducible geoscience papers”&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/2018/01/05/events-2018/#reproducible-research-publications-at-agile-2018&quot;&gt;AGILE pre-conference workshop “Reproducible Research Publications”&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Please share this information with potentially interested parties (and &lt;a href=&quot;https://twitter.com/o2r_project/status/949296239589449729&quot;&gt;retweet&lt;/a&gt;).&lt;/em&gt;
&lt;!--more--&gt; &lt;em&gt;Thanks!&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Update!&lt;/strong&gt; Added two more sessions and the OSGeo Townhall.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/egu2018-banner.png&quot; alt=&quot;EGU 2018 conference banner&quot; width=&quot;100%&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Image courtesy of EGU website.&lt;/p&gt;

&lt;h2 id=&quot;open-science-r-and-foss-sessions-at-egu-general-assembly-2018&quot;&gt;Open Science, R, and FOSS sessions at EGU General Assembly 2018&lt;/h2&gt;

&lt;p&gt;The European Geophysical Union’s General Assembly (EGU GA) takes place once more in April in Vienna - &lt;a href=&quot;https://twitter.com/search?q=%23egu18&quot;&gt;#EGU18&lt;/a&gt;.
The deadline for abstracts is 10 Jan 2018, 13:00 CET, so don’t delay, &lt;strong&gt;&lt;a href=&quot;https://egu2018.eu/information/deadlines_and_milestones.html&quot;&gt;submit your abstract today&lt;/a&gt;&lt;/strong&gt; to one of the following sessions:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2018/session/28036&quot;&gt;Open Data, Reproducible Research, and Open Science&lt;/a&gt; (ESSI3.5)&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2018/session/27584&quot;&gt;R’s deliberate role in Earth sciences (PICO Session)&lt;/a&gt; (IE4.4/GM2.8/AS5.8/BG1.17/CL5.28/GD10.10/GMPV10.5/HS3.5/SSS13.77/TS11.12)&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2018/session/26511&quot;&gt;Free and Open Source Software (FOSS) for Geoinformatics and Geosciences&lt;/a&gt; (PICO Session, ESSI3.1)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Other sessions without o2r team members convening, but looking very interesting are&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2018/session/28043&quot;&gt;Leveraging data-driven workflows to accelerate Earth Science research&lt;/a&gt; (ESSI3.3)&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2018/session/28030&quot;&gt;Data science, Analytics and Visualization: The challenges and opportunities for Earth and Space Science&lt;/a&gt; (ESSI4.3)&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2018/session/26942&quot;&gt;Future of (hydrological) publishing (PICO session)&lt;/a&gt; (HS1.16)&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2018/session/28034&quot;&gt;Web-based Exchange and Processing of Environmental Data&lt;/a&gt; (ESSI2.6)&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2018/session/28668&quot;&gt;Emerging Computational Technology&lt;/a&gt; (PICO session, IE4.2/AS5.5/BG1.32/CL5.17)&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2018/session/26510&quot;&gt;Virtual Research Environments: creating online collaborative environments to support research in the Earth Sciences and beyond&lt;/a&gt; (co-organised with American Geophysical Union, ESSI2.4)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;After our &lt;a href=&quot;/2016/05/02/egu-review/&quot;&gt;previous&lt;/a&gt; &lt;a href=&quot;/2017/05/04/o2r-at-EGU/&quot;&gt;participations&lt;/a&gt; we look forward to yet another event with interesting presentations and great conversations.
If you’re going, too, make sure to join the &lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2018/session/29320&quot;&gt;&lt;strong&gt;OSGeo Townhall&lt;/strong&gt;: Open Science demystified&lt;/a&gt; (TM8, on Tuesday) and the townhall meetings &lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2018/session/29539&quot;&gt;&lt;strong&gt;“Research Software Engineers in the Geosciences”&lt;/strong&gt;&lt;/a&gt; (TM13, room L8 on Thursday) and &lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2018/session/29063&quot;&gt;&lt;strong&gt;“EarthArXiv - a preprint server for the Earth Sciences”&lt;/strong&gt;&lt;/a&gt; (TM4, room L2 on Monday).&lt;/p&gt;

&lt;p&gt;&lt;em&gt;See you at EGU!&lt;/em&gt;&lt;/p&gt;

&lt;h2 id=&quot;short-course-on-reproducible-papers-at-egu-general-assembly-2018&quot;&gt;Short course on reproducible papers at EGU General Assembly 2018&lt;/h2&gt;

&lt;p&gt;After organising a &lt;a href=&quot;/2017/05/03/egu-short-course-recap/&quot;&gt;workshop on reproducible computational research in the publication cycle&lt;/a&gt; last year, o2r is teaming up again with &lt;a href=&quot;https://reprozip.org/&quot;&gt;ReproZip&lt;/a&gt; to help geoscientists tackling the challenges of reproducible papers.
This year we organise the short course &lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2018/session/28650&quot;&gt;&lt;em&gt;SC1.13 - Writing reproducible geoscience papers using R Markdown, Docker, and GitLab&lt;/em&gt;&lt;/a&gt;.
We plan to go guide participants through the steps of writing an Open Science publication and managing its rendering, publication, and archival by using free and open online platforms.&lt;/p&gt;

&lt;p&gt;Let us know you’re interested to join with only two clicks: &lt;strong&gt;&lt;a href=&quot;https://doodle.com/poll/ngn9fqvhfkp3haui&quot;&gt;https://doodle.com/poll/ngn9fqvhfkp3haui&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Other short courses without o2r participation, but looking promising (they both use &lt;strong&gt;R&lt;/strong&gt;!), are&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;SC1.34 - &lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2018/session/29054&quot;&gt;Improving statistical evaluations in the geosciences&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;SC1.17 - &lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2018/session/28648&quot;&gt;Using R for natural hazard risk modelling, with applications to wildfire risk forecasting&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id=&quot;reproducible-research-publications-at-agile-2018&quot;&gt;Reproducible Research Publications at AGILE 2018&lt;/h2&gt;

&lt;p&gt;We are happy to announce another &lt;a href=&quot;/2017/05/10/o2r-at-AGILE/&quot;&gt;continuation&lt;/a&gt;, a pre-conference workshop at the &lt;a href=&quot;http://agile-online.org/index.php/conference/conference-2018&quot;&gt;21st AGILE International Conference on Geographic Information Science&lt;/a&gt; in Lund, Sweden: &lt;strong&gt;&lt;a href=&quot;https://o2r.info/reproducible-agile/&quot;&gt;“Reproducible Research Publications”&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;The half day workshop attempts to provides a hands-on introduction to reproducible research by reproducing a provided real-world publication. Together with the instructors they create a reproducible document from text, code, and data of a scholarly publication and publish it in a data repository.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The workshop is accepted and will be announced &lt;a href=&quot;https://agile-online.org/index.php/programme-2018/agile-workshops-2018&quot;&gt;on the conference website&lt;/a&gt; soon.
Please also check the &lt;a href=&quot;https://o2r.info/reproducible-agile/&quot;&gt;workshop website&lt;/a&gt; for detailed information on registration and scheduling.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;https://agile-online.org/images/conference_2018/images/slogan-agile18-7.jpg&quot; alt=&quot;agile conference banner&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Image courtesy of AGILE website.&lt;/p&gt;

&lt;p&gt;Submit your registration &lt;em&gt;both&lt;/em&gt; at the &lt;a href=&quot;https://agile-online.org/index.php/registration-2018&quot;&gt;conference website&lt;/a&gt; (will open soon!) and the workshop repository (see &lt;a href=&quot;https://o2r.info/reproducible-agile/#registration&quot;&gt;instructions&lt;/a&gt;): &lt;a href=&quot;https://github.com/o2r-project/reproducible-agile/issues/new&quot;&gt;https://github.com/o2r-project/reproducible-agile/issues/new&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The workshop is co-organized by o2r team members and Frank Osterman (ITC, Enschede), Barbara Hofer (Z_GIS), Carlos Granell (Jaume I), Valentina Cerutti (ITC), and Rusne Sileryte (OTB, TU Delft).
&lt;em&gt;We look forward to your registration!&lt;/em&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Reference Implementation - Try it out!</title>
   <link href="https://o2r.info/2017/10/31/reference-implementation/"/>
   <updated>2017-10-31T00:00:00+00:00</updated>
   <id>https://o2r.info/2017/10/31/reference-implementation</id>
   <content type="html">&lt;p&gt;&lt;em&gt;Post updated on March 15 2018 to reflect simplified run commands.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Our project is going into its final phase. We are &lt;a href=&quot;https://github.com/o2r-project/erc-spec/pull/48&quot;&gt;working on&lt;/a&gt; integrating our latest experiences and discussions into the &lt;a href=&quot;https://o2r.info/erc-spec&quot;&gt;ERC specification&lt;/a&gt; and constantly add new features to the &lt;a href=&quot;https://github.com/o2r-project&quot;&gt;implementation of the reproducibility service&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;We also try to keep our &lt;a href=&quot;/results/#implementation--demo&quot;&gt;demo server&lt;/a&gt; up to date.
&lt;em&gt;But what good is a reproducibility platform, when you can only try it online?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Inspired by the just passed &lt;a href=&quot;http://www.openaccessweek.org/&quot;&gt;Open Access Week&lt;/a&gt; (&lt;a href=&quot;https://twitter.com/hashtag/OAWeek?src=hash&quot;&gt;#oaweek&lt;/a&gt;), we’ve started &lt;a href=&quot;https://github.com/o2r-project/reference-implementation/issues&quot;&gt;a new repository &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;reference-implementation&lt;/code&gt;&lt;/a&gt; to expose our developments, which have been open source from the start, to the interested public.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2017-10-31-refimpl/o2r-refimpl-ubuntu.jpg&quot; alt=&quot;o2r screenshot: Ubuntu&quot; title=&quot;Screenshot: o2r reference implementation on Ubuntu&quot; width=&quot;600&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Screenshot: o2r reference implementation on &lt;em&gt;Ubuntu&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;It comprises documentation for &lt;!--more--&gt;run o2r software on a completely new machine:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/o2r-project/reference-implementation#download-images-and-run&quot;&gt;Run o2r locally with pre-build Docker images&lt;/a&gt; (the regular approach, let’s you easily update to later versions)&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/o2r-project/reference-implementation#build-images-from-source-and-run&quot;&gt;Download all source code, build Docker images, and then run o2r locally&lt;/a&gt; (the investigative approach)&lt;/li&gt;
  &lt;li&gt;Upload a &lt;a href=&quot;https://github.com/o2r-project/erc-examples&quot;&gt;demo workspace or ERC&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The only efforts besides a few commands on your computer is &lt;a href=&quot;https://support.orcid.org/knowledgebase/articles/343182-register-a-public-api-client-application&quot;&gt;registering a client application with ORCID&lt;/a&gt; to be able to log in, because there is no other way to authenticate within the o2r platform and microservices.
You may also &lt;a href=&quot;https://zenodo.org/login/?next=%2Faccount%2Fsettings%2Fapplications%2Ftokens%2Fnew%2F&quot;&gt;get an access token from Zenodo&lt;/a&gt; to “ship” your completed ERC.
Eventually this repository will be the basis for a citable package of our software.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2017-10-31-refimpl/o2r-refimpl-macos-x.jpg&quot; alt=&quot;o2r screenshot: OS X&quot; title=&quot;Screenshot: o2r reference implementation on Mac OS X&quot; width=&quot;600&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Screenshot: o2r reference implementation on &lt;em&gt;OS X&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;We look forward to &lt;a href=&quot;https://github.com/o2r-project/reference-implementation/issues&quot;&gt;your feedback&lt;/a&gt;!&lt;/p&gt;

&lt;h2 id=&quot;tldr&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;tl;dr&lt;/code&gt;&lt;/h2&gt;

&lt;ol&gt;
  &lt;li&gt;Install &lt;a href=&quot;https://www.docker.com/get-docker&quot;&gt;Docker&lt;/a&gt; and &lt;a href=&quot;https://docs.docker.com/compose/&quot;&gt;docker-compose&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Download the o2r reference implementation repository and run it with with &lt;br /&gt;
    &lt;ul&gt;
      &lt;li&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;git clone https://github.com/o2r-project/reference-implementation&lt;/code&gt;&lt;/li&gt;
      &lt;li&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;docker-compose up&lt;/code&gt;&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2017-10-31-refimpl/o2r-refimpl-windows10.jpg&quot; alt=&quot;o2r screenshot: Windows 10&quot; title=&quot;Screenshot: o2r reference implementation on Windows 10&quot; width=&quot;600&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Screenshot: o2r reference implementation on &lt;em&gt;Windows 10&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2017-10-31-refimpl/o2r-refimpl-windows10-toolbox.jpg&quot; alt=&quot;o2r screenshot: Windows 10 with Docker Toolbox&quot; title=&quot;Screenshot: o2r reference implementation on Windows 10 with Docker Toolbox&quot; width=&quot;600&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Screenshot: o2r reference implementation on &lt;em&gt;Windows 10&lt;/em&gt; (Docker Toolbox), contributed by Antonia - Thanks!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Reproducible Research Badges</title>
   <link href="https://o2r.info/2017/09/12/reproducible-research-badges/"/>
   <updated>2017-09-12T00:00:00+00:00</updated>
   <id>https://o2r.info/2017/09/12/reproducible-research-badges</id>
   <content type="html">&lt;p&gt;&lt;em&gt;This blog post presents work based on the study project &lt;a href=&quot;https://zivgitlab.uni-muenster.de/geocontainer-badges&quot;&gt;Badges for computational geoscience containers&lt;/a&gt; at &lt;a href=&quot;https://www.uni-muenster.de/Geoinformatics/&quot;&gt;ifgi&lt;/a&gt;. We thank the &lt;a href=&quot;https://github.com/o2r-project/o2r-badger#contributors&quot;&gt;project team&lt;/a&gt; for their valuable contributions!&lt;/em&gt;&lt;/p&gt;

&lt;div style=&quot;padding: 1em; border: 2px solid #008643; background: #f3f5f7;&quot;&gt;
This blog post was extended and presented and published as a peer-reviewed short paper at the &lt;a href=&quot;https://agile-online.org//conference-2019&quot;&gt;AGILE Conference 2019&lt;/a&gt;. &lt;b&gt;Find the article &lt;a title=&quot;article on EarthArXiv&quot; href=&quot;https://eartharxiv.org/xtsqh/&quot;&gt;here on EarthArXiv&lt;/a&gt; and the presentation &lt;a title=&quot;paper presentation slides&quot; href=&quot;https://osf.io/549a6/&quot;&gt;here on OSF&lt;/a&gt;&lt;/b&gt;. The citation is

&lt;pre&gt;Nüst, Daniel, Lukas Lohoff, Lasse Einfeldt, Nimrod Gavish, Marlena Götza, Shahzeib T. Jaswal, Salman Khalid, et al. 2019. “Guerrilla Badges for Reproducible Geospatial Data Science (AGILE 2019 Short Paper).” EarthArXiv. June 19. doi:10.31223/osf.io/xtsqh.&lt;/pre&gt;
&lt;/div&gt;

&lt;h2 id=&quot;introduction&quot;&gt;Introduction&lt;/h2&gt;

&lt;p&gt;Today badges are widely used in open source software repositories. They have a high recognition value and consequently provide an easy and efficient way to convey up-to-date metadata. Version numbers, download counts, test coverage or container image size are just a few examples. The website &lt;a href=&quot;https://shields.io&quot;&gt;Shields.io&lt;/a&gt; provides many types of such badges. It also has an API to generate custom ones.&lt;/p&gt;

&lt;p&gt;Now imagine similar badges, i.e. succinct, up-to-date information, not for software projects &lt;!--more--&gt;but for modern research publications. It answers questions such as:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;When was a research paper published?&lt;/li&gt;
  &lt;li&gt;Is the paper openly accessible?&lt;/li&gt;
  &lt;li&gt;Was the paper published in a peer reviewed journal?&lt;/li&gt;
  &lt;li&gt;What is the research’s area of interest?&lt;/li&gt;
  &lt;li&gt;Are the results reproducible?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These questions cover basic information for publications (date, open access, peer review) but also advanced concepts: the &lt;em&gt;research location&lt;/em&gt; describes the location a study is focusing on. A publication with &lt;em&gt;reproducible results&lt;/em&gt; contains a computation or analysis and the means to rerun it - ideally getting the same results again.&lt;/p&gt;

&lt;p&gt;We developed a back-end service providing badges for reproducible research papers.&lt;/p&gt;

&lt;h2 id=&quot;overview-of-badges-for-research&quot;&gt;Overview of badges for research&lt;/h2&gt;

&lt;p&gt;We are however not the first nor the only ones to do this: &lt;a href=&quot;https://www.scienceopen.com/&quot;&gt;ScienceOpen&lt;/a&gt; is a search engine for scientific publications. It has badges for open access publications, content type, views, comments and the &lt;a href=&quot;https://www.altmetric.com/&quot;&gt;Altmetric&lt;/a&gt; score as displayed in Figure 1.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2017-09-12-badges/scienceOpen.png&quot; alt=&quot;scienceopen badges&quot; title=&quot;Figure 1: ScienceOpen badges&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Figure 1: &lt;em&gt;ScienceOpen&lt;/em&gt; badges in a search result listing.&lt;/p&gt;

&lt;p&gt;These are helpful when using the ScienceOpen website, but they are not available for other websites. Additional issues are the inconsistent style and missing information relevant for reproducible geosciences, e.g. reproducibility status or the research location.&lt;/p&gt;

&lt;p&gt;Badges are also used directly on publications, without the search portal “middleman”. The published document, poster or presentation contains a badge along with the information needed to access the data or code.
The &lt;a href=&quot;https://cos.io/&quot;&gt;Center for Open Science&lt;/a&gt; &lt;a href=&quot;https://osf.io/tvyxz/wiki/home/&quot;&gt;designed badges&lt;/a&gt; for acknowledging open practices in scientific articles accompanied by guidelines for &lt;a href=&quot;https://osf.io/tvyxz/wiki/3.%20Incorporating%20Badges%20into%20Publication%20Workflow/&quot;&gt;incorporating them into journals’ peer review workflows&lt;/a&gt; and &lt;a href=&quot;https://osf.io/tvyxz/wiki/4.%20Incorporating%20Badge%20Visualization%20into%20Publications/&quot;&gt;adding them to published documents&lt;/a&gt;, including large colored and small black-and-white variants. The badges are for &lt;em&gt;Open Data&lt;/em&gt;, &lt;em&gt;Open Materials&lt;/em&gt;, and &lt;em&gt;Preregistration&lt;/em&gt; of studies (see Figure 2) and are adopted by over a dozen of journals to date (cf. &lt;a href=&quot;https://osf.io/tvyxz/wiki/5.%20Adoptions%20and%20Endorsements/&quot;&gt;Adoptions and Endorsements&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2017-09-12-badges/cos.png&quot; alt=&quot;COS badges&quot; title=&quot;Figure 2: COS badges&quot; width=&quot;400&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Figure 2: &lt;em&gt;COS&lt;/em&gt; badges.&lt;/p&gt;

&lt;p&gt;University of Washington’s &lt;a href=&quot;http://escience.washington.edu/&quot;&gt;eScience Institute&lt;/a&gt; created a peer-review process for open data and open materials badges &lt;a href=&quot;https://github.com/uwescience-open-badges/about&quot;&gt;https://github.com/uwescience-open-badges/about&lt;/a&gt; based on the COS badges. The service is meant for faculty members and students at the University of Washington, but external researchers can also apply. The initiative also has a list of relevant &lt;a href=&quot;https://github.com/uwescience-open-badges/about#where-can-i-read-more-about-this&quot;&gt;publications on the topic&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;A study by Kidwell et al. [&lt;a href=&quot;#kidwell&quot;&gt;1&lt;/a&gt;] demonstrates a positive effect by the introduction of open data badges in the journal &lt;em&gt;Psychological Science&lt;/em&gt;: After the journal started awarding badges for open data, more articles stating open data availability actually published data (cf. [&lt;a href=&quot;#baker&quot;&gt;2&lt;/a&gt;]). They see badges as a simple yet effective way to promote data publishing. The argument is very well summarized in the tweet below:&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Simple rewards are sufficient to see the change we want to occur &lt;a href=&quot;https://twitter.com/hashtag/SSP2017?src=hash&quot;&gt;#SSP2017&lt;/a&gt; &lt;a href=&quot;https://t.co/P1H4hpQeqN&quot;&gt;pic.twitter.com/P1H4hpQeqN&lt;/a&gt;&lt;/p&gt;&amp;mdash; David Mellor (@EvoMellor) &lt;a href=&quot;https://twitter.com/EvoMellor/status/870409694367666176&quot;&gt;1. Juni 2017&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;//platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;Peng [&lt;a href=&quot;#peng1&quot;&gt;3&lt;/a&gt;, &lt;a href=&quot;#peng2&quot;&gt;4&lt;/a&gt;] reports on the efforts the journal &lt;em&gt;Biostatistics&lt;/em&gt; is taking to promote reproducible research, including a set of &lt;em&gt;“kite marks”&lt;/em&gt;, which can easily be seen as minimalistic yet effective badges. &lt;em&gt;&lt;strong&gt;D&lt;/strong&gt;&lt;/em&gt; and &lt;em&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/em&gt; if data respectively code is provided, and &lt;em&gt;&lt;strong&gt;R&lt;/strong&gt;&lt;/em&gt; if results were successfully reproduced during the review process (implying D and C). Figure 3 shows the usage of &lt;strong&gt;R&lt;/strong&gt; on an article’s title page (cf. [&lt;a href=&quot;#lee&quot;&gt;5&lt;/a&gt;]).&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2017-09-12-badges/biostatistics-kitemark.png&quot; alt=&quot;Biostatistics badges&quot; title=&quot;Figure 3: Biostatistics kite marks&quot; width=&quot;400&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Figure 3: &lt;em&gt;Biostatistics&lt;/em&gt; kite mark &lt;b&gt;R&lt;/b&gt; rendering in the PDF version of the paper.&lt;/p&gt;

&lt;p&gt;The Association for Computing Machinery (&lt;a href=&quot;https://www.acm.org/&quot;&gt;ACM&lt;/a&gt;) provides a common terminology and standards for artifact review processes for its conferences and journals, see their policies website section on &lt;a href=&quot;https://www.acm.org/publications/policies/artifact-review-badging&quot;&gt;Artifact Review Badging&lt;/a&gt;. The have a system of three badges with several levels accompanied by specific criteria. They can be independently awarded:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;em&gt;Artifacts Evaluated&lt;/em&gt; means artifacts were made available to reviewers and awarded the level &lt;em&gt;Functional&lt;/em&gt; or &lt;em&gt;Reusable&lt;/em&gt;&lt;/li&gt;
  &lt;li&gt;&lt;em&gt;Artifacts Available&lt;/em&gt; means a deposition in a repository ensures permanent and open availability (no evaluation)&lt;/li&gt;
  &lt;li&gt;&lt;em&gt;Results Validated&lt;/em&gt; means a third party successfully obtained the same results as the author at the levels &lt;em&gt;Results Replicated&lt;/em&gt; (using, in part, artifacts provided by the author) or &lt;em&gt;Results Reproduced&lt;/em&gt; (without author-supplied artifacts)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Figure 4 shows a rendering of the ACM badges.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2017-09-12-badges/acm.png&quot; alt=&quot;ACM badges&quot; title=&quot;Figure 4: ACM badges&quot; width=&quot;500&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Figure 4: &lt;em&gt;ACM&lt;/em&gt; badges, from left to right: Artifacts Evaluated – Functional, Artifacts Evaluated – Reusable, Artifacts Available, Results Replicated, and Results Reproduced. (Copyright &amp;copy; 2017, ACM, Inc)&lt;/p&gt;

&lt;p&gt;Although these examples are limited to a specific journal, publisher, or institution, they show the potential of badges. They also show the diversity, limitations, and challenges in describing and awarding these badges.&lt;/p&gt;

&lt;p&gt;For this reason, our goal is to explore sophisticated and novel badge types (concerning an article’s reproducibility, research location, etc.) and to find out how to provide them independently from a specific journal, conference, or website.&lt;/p&gt;

&lt;h2 id=&quot;an-independent-api-for-research-badges&quot;&gt;An independent API for research badges&lt;/h2&gt;

&lt;p&gt;Advanced badges to answer the above questions are useful for literature research, because they open new ways of exploring research by allowing to quickly judge the relevance of a publication, and they can motivate efforts towards openness and reproducibility. Three questions remain: How can the required data for the badges be found, ideally automatically? How can the information be communicated? How can it be integrated across independent, even competitive, websites?&lt;/p&gt;

&lt;p&gt;Some questions on the data, such as the publication date, the peer review status and the open access status can already be answered by online research library APIs, for example those provided by &lt;a href=&quot;https://www.crossref.org/&quot;&gt;Crossref&lt;/a&gt; or &lt;a href=&quot;https://doaj.org/&quot;&gt;DOAJ&lt;/a&gt;.
The &lt;a href=&quot;https://o2r.info/api/&quot;&gt;o2r API&lt;/a&gt; can answer the remaining questions about reproducibility and location: Knowing if a publication is reproducible is a core part of the o2r project. Furthermore, the location on which a research paper focuses can be extracted from spatial files published with an Executable Research Compendium [&lt;a href=&quot;#nuest&quot;&gt;6&lt;/a&gt;]. The metadata extraction tool &lt;a href=&quot;https://github.com/o2r-project/o2r-meta&quot;&gt;o2r-meta&lt;/a&gt; provides the latter feature, while the &lt;a href=&quot;https://o2r.info/erc-spec&quot;&gt;ERC specification&lt;/a&gt; and &lt;a href=&quot;https://github.com/o2r-project/o2r-muncher&quot;&gt;o2r-muncher&lt;/a&gt; micro service enable the former.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;How can we integrate data from these different sources?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://github.com/o2r-project/o2r-badger&quot;&gt;o2r-badger&lt;/a&gt; is a &lt;em&gt;Node.js&lt;/em&gt; application based on the &lt;a href=&quot;https://expressjs.com/&quot;&gt;Express&lt;/a&gt; web application framework. It provides an API endpoint to serve badges for reproducible research integrating multiple online services into informative badges on scientific publications. Its &lt;a href=&quot;https://github.com/o2r-project/o2r-badger#api-documentation-version-02&quot;&gt;RESTful API&lt;/a&gt; has routes for five different badge types:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;em&gt;executable&lt;/em&gt;: Information about executability and reproducibility of a publication&lt;/li&gt;
  &lt;li&gt;&lt;em&gt;licence&lt;/em&gt;: licensing information&lt;/li&gt;
  &lt;li&gt;&lt;em&gt;spatial&lt;/em&gt;: a publication’s area of interest&lt;/li&gt;
  &lt;li&gt;&lt;em&gt;releasetime&lt;/em&gt;: publication date&lt;/li&gt;
  &lt;li&gt;&lt;em&gt;peerreview&lt;/em&gt;: if and by which process the publication was peer reviewed&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The API can be queried with URLs following the pattern &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;/api/1.0/badge/:type/:doi&lt;/code&gt;. &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;:type&lt;/code&gt; is one of the aforementioned types, and &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;:doi&lt;/code&gt; is a publication’s &lt;a href=&quot;https://en.wikipedia.org/wiki/Digital_object_identifier&quot;&gt;Digital object identifier&lt;/a&gt; (DOI).&lt;/p&gt;

&lt;p&gt;The badger currently provides badges using two methods: internally created SVG-based badges, and redirects to &lt;a href=&quot;https://shields.io/&quot;&gt;shields.io&lt;/a&gt;.
The redirects construct a simple shields.io URL.
The SVG-based badges are called &lt;em&gt;extended&lt;/em&gt; badges and contain more detailed information: the extended &lt;em&gt;license&lt;/em&gt; badge for example has three categories (&lt;em&gt;code&lt;/em&gt;, &lt;em&gt;data&lt;/em&gt; and &lt;em&gt;text&lt;/em&gt;, see Figure 5), which are &lt;a href=&quot;https://github.com/o2r-project/o2r-badger/blob/master/controllers/license/license.js#L312&quot;&gt;aggregated&lt;/a&gt; to single values (open, partially open, mostly open, closed) for the shields.io badge (see Figure 6).&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2017-09-12-badges/license_extended.svg&quot; alt=&quot;license badge&quot; title=&quot;Figure 4: An extended *licence* badge reporting open data, text and code&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Figure 5: An extended licence badge reporting open data, text and code.&lt;/p&gt;

&lt;p&gt;Extended badges are meant for websites or print publications of a single publication, e.g. an article’s title page. They can be resized and alternatively provided pre-rendered as a PNG image. In contrast, the standard shields.io badges are smaller, text based badges. They still communicate the most important piece of information:&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;https://img.shields.io/badge/licence-open-44cc11.svg&quot; alt=&quot;shields.io badge&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Figure 6: An shields.io based small badge, based on the URL &lt;a href=&quot;https://img.shields.io/badge/licence-open-44cc11.svg&quot;&gt;https://img.shields.io/badge/licence-open-44cc11.svg&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;They excel at applications where space is important, for example search engines listing many research articles. They are generated on the fly when a URL is requested (e.g. &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;https://img.shields.io/badge/licence-open-44cc11.svg&lt;/code&gt;) which specifies the text (e.g. &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;licence&lt;/code&gt; and &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;open&lt;/code&gt;) and the color (&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;44cc11&lt;/code&gt; is a &lt;a href=&quot;http://html-color-codes.info/&quot;&gt;HTML color code&lt;/a&gt; for green).&lt;/p&gt;

&lt;p&gt;Let’s look at another example of an &lt;em&gt;executable&lt;/em&gt; badge and how it is created.
The badge below is requested from the badger demo instance on the o2r server by providing the DOI of the publication for the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;:doi&lt;/code&gt; element in the above routes:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://o2r.uni-muenster.de/api/1.0/badge/executable/10.1126%2Fscience.1092666&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;https://o2r.uni-muenster.de/api/1.0/badge/executable/10.1126%2Fscience.1092666&lt;/code&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This URL requests a badge for the reproducibility status of the paper “Global Air Quality and Pollution” from &lt;em&gt;&lt;a href=&quot;http://science.sciencemag.org/&quot;&gt;Science&lt;/a&gt;&lt;/em&gt; magazine identified by the DOI &lt;a href=&quot;https://doi.org/10.1126/science.1092666&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;10.1126/science.1092666&lt;/code&gt;&lt;/a&gt;. When the request is sent, the following steps happen in o2r-badger:&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;The badger tries to find a reproducible research paper (called Executable Research Compendium (&lt;a href=&quot;https://o2r.info/erc-spec/spec/&quot;&gt;ERC&lt;/a&gt;) via the o2r API. Internally this searches the database for ERC connected to the given DOI.&lt;/li&gt;
  &lt;li&gt;If if finds an ERC, it looks for a matching &lt;em&gt;&lt;a href=&quot;https://o2r.info/api/job/&quot;&gt;job&lt;/a&gt;&lt;/em&gt;, a report of a reproduction analysis.&lt;/li&gt;
  &lt;li&gt;Depending on the reproduction result (&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;success&lt;/code&gt;, &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;running&lt;/code&gt;, or &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;failure&lt;/code&gt;) specified in the job, the badger generates a green, yellow or red badge. The badge also contains text indicating the reproducibility of the specified research publication.&lt;/li&gt;
  &lt;li&gt;The request is redirected to a &lt;a href=&quot;https://shields.io/&quot;&gt;shields.io&lt;/a&gt; URL link containing the color and textual information..&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The returned image contains the requested information, which is in this case a successful reproduction:&lt;/p&gt;

&lt;p&gt;URL: &lt;a href=&quot;https://img.shields.io/badge/executable-yes-44cc11.svg&quot;&gt;https://img.shields.io/badge/executable-yes-44cc11.svg&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Badge: &lt;img src=&quot;https://img.shields.io/badge/executable-yes-44cc11.svg&quot; alt=&quot;shields.io badge executable&quot; /&gt;&lt;/p&gt;

&lt;p&gt;If an extended badge is requested, the badger itself generates an SVG graphic instead.&lt;/p&gt;

&lt;p&gt;Badges for reproducibility, peer review status and license are color coded to provide visual aids. They indicate for example (un)successful reproduction, a public peer review process, or different levels of open licenses.
These badges get their information from their respective external sources: the information for peer review badges is requested from the external service &lt;em&gt;DOAJ&lt;/em&gt;, a community-based website for open access publications. The &lt;em&gt;Crossref&lt;/em&gt; API provides the dates for the releasetime badges. The spatial badge also uses the o2r services. The badger service converts the spatial information provided as coordinates into textual information, i.e. place names, using the &lt;a href=&quot;http://www.geonames.org/export/web-services.html&quot;&gt;Geonames API&lt;/a&gt;.&lt;/p&gt;

&lt;h2 id=&quot;spread-badges-over-the-web&quot;&gt;Spread badges over the web&lt;/h2&gt;

&lt;p&gt;There is a great badge server, and databases providing manifold badge information, but how to get them displayed online? The sustainable way would be for research website operators to agree on a common badge system and design, and then incorporate these badges on their platforms. But we know it is unrealistic this ever happens.
So instead of waiting, or instead of engaging in a lengthy discourse with all stakeholders, we decided to create a &lt;a href=&quot;https://developer.chrome.com/extensions&quot;&gt;Chrome extension&lt;/a&gt; and augment common research websites. The &lt;a href=&quot;https://github.com/o2r-project/o2r-extender&quot;&gt;o2r-extender&lt;/a&gt; automatically inserts badges into search results or publication pages using client-side browser scripting. It is &lt;a href=&quot;https://chrome.google.com/webstore/detail/opening-reproducible-rese/fhhfncpkfohlhphlcgpkbpialfhkmbil&quot;&gt;available in the Chrome Web Store&lt;/a&gt; and ready to be tried out.&lt;/p&gt;

&lt;p&gt;The extender currently supports the following research websites:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Google Scholar &lt;a href=&quot;https://scholar.google.de/&quot;&gt;https://scholar.google.de/&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;DOAJ.org &lt;a href=&quot;https://doaj.org/&quot;&gt;https://doaj.org/&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;ScienceDirect.com &lt;a href=&quot;http://www.sciencedirect.com/&quot;&gt;http://www.sciencedirect.com/&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;ScienceOpen.com &lt;a href=&quot;https://scienceopen.com/&quot;&gt;https://scienceopen.com/&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;PLOS.org &lt;a href=&quot;https://www.plos.org/&quot;&gt;https://www.plos.org/&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Microsoft Academic &lt;a href=&quot;https://academic.microsoft.com/&quot;&gt;https://academic.microsoft.com/&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Mendeley &lt;a href=&quot;https://www.mendeley.com/&quot;&gt;https://www.mendeley.com/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For each article display on these websites, the extender requests a set of badges from the badger server. These are then inserted into the page’s HTML code after rendering the regular website as shown exemplary in the screenshot in Figure 7.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2017-09-12-badges/google_scholar_badges.png&quot; alt=&quot;google scholar badges&quot; title=&quot;Figure 7: Badges integrated into Google Scholar search results&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Figure 7: Badges integrated into &lt;em&gt;Google Scholar&lt;/em&gt; search results (partial screenshot).&lt;/p&gt;

&lt;p&gt;When the badger does not find information for a certain DOI, it returns a grey “not available” - badge instead. This is shown in the screenshot above for the outermost license and peer review badges.&lt;/p&gt;

&lt;p&gt;The extender consists of a content script, similar to a &lt;a href=&quot;http://techsupportguides.com/what-is-a-userscript/&quot;&gt;userscript&lt;/a&gt;, adjusted to each target website. The content scripts insert badges at suitable positions in the view. A set of common functions defined in the Chrome extension for generating HTML, getting metadata based on DOIs, and inserting badges are used for the specific insertions. A good part of the extender code is used to extract the respetive DOIs from the information included in the page, which is a lot trickier than interacting with an API. Take a look at the source code &lt;a href=&quot;https://github.com/o2r-project/o2r-extender/tree/master/extension&quot;&gt;on GitHub&lt;/a&gt; for details.&lt;/p&gt;

&lt;p&gt;But the extender is not limited to inserting static information. The results of searches can also be filtered based on badge value and selected badge types can be turned on or off directly from the website with controls inserted into the pages’ navigation menus (see left hand side of Figure 8).&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2017-09-12-badges/doaj_badges.png&quot; alt=&quot;doaj filtering&quot; title=&quot;Figure 8: Filtering search results on DOAJ&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Figure 8: Filtering search results on &lt;em&gt;DOAJ&lt;/em&gt;. Results not matching the filter or articles where the DOI could not be detected are greyed out.&lt;/p&gt;

&lt;p&gt;The extender is easily configurable: it can be enabled and disabled with a click on the icon in the browser toolbar. You can select the badge types to be displayed in the extension settings. Additionally it contains links to local info pages (“Help” and “About”, see Figure 9).&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2017-09-12-badges/extender_configuration.png&quot; alt=&quot;extender config&quot; title=&quot;Figure 9: *o2r-extender* configuration&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Figure 9: extender configuration.&lt;/p&gt;

&lt;h2 id=&quot;outlook-action-integrations&quot;&gt;Outlook: Action integrations&lt;/h2&gt;

&lt;p&gt;The &lt;em&gt;extender&lt;/em&gt; also has a feature unrelated to badges. In the context of open science and reproducible research, the reproducibility service connects to other services in a larger context as described in the &lt;a href=&quot;https://o2r.info/architecture/&quot;&gt;o2r architecture&lt;/a&gt; (see section Business context).&lt;/p&gt;

&lt;p&gt;Two core connections are loading research workspaces from cloud storage and connecting to suitable data repositories for actual storage of ERCs.
To facilitate these for users, the extender can also augment the user interfaces of the non-commercial cloud storage service &lt;a href=&quot;http://sciebo.de/&quot;&gt;Sciebo&lt;/a&gt; and the scientific data repository &lt;a href=&quot;https://zenodo.org/&quot;&gt;Zenodo&lt;/a&gt; with reproducibility service functionality.&lt;/p&gt;

&lt;p&gt;When using &lt;em&gt;Sciebo&lt;/em&gt;, a button is added to a file’s or directory’s context menu. It allows direct interaction with the o2r platform to upload a new reproducible research paper (ERC) from the current file or directory as shown in Figure 10.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2017-09-12-badges/sciebo_integration.png&quot; alt=&quot;sciebo integration&quot; title=&quot;Figure 10: *Sciebo* upload integration&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Figure 10: &lt;em&gt;Sciebo&lt;/em&gt; upload integration.&lt;/p&gt;

&lt;p&gt;When you are viewing an &lt;em&gt;Executable Research Compendium&lt;/em&gt; on &lt;em&gt;Zenodo&lt;/em&gt;, a small badge links directly to the corresponding inspection view in the o2r platform (see Figure 11):&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2017-09-12-badges/zenodo_integration.png&quot; alt=&quot;zenodo integration&quot; title=&quot;Figure 11: Zenodo inspection integration&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Figure 11: Link to inspection view and tag &quot;ERC&quot; on &lt;em&gt;Zenodo&lt;/em&gt;.&lt;/p&gt;

&lt;h2 id=&quot;discussion&quot;&gt;Discussion&lt;/h2&gt;

&lt;p&gt;The study project &lt;a href=&quot;https://zivgitlab.uni-muenster.de/geocontainer-badges&quot;&gt;Badges for computational geoscience containers&lt;/a&gt; initially implemented eight microservices responsible for six different badges types, badge scaling and testing. A microservice architecture using Docker containers was not chosen because of the need for immense scaling capabilities, but for another reason: developing independent microservices makes work organization much easier. This is especially true for a study project where students prefer different programming languages and have different skill sets.&lt;/p&gt;

&lt;p&gt;However, for o2r the microservices were integrated into a single microservice for easier maintainability. This required refactoring, rewriting and bug fixing.
Now, when a badge is requested, a &lt;a href=&quot;https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/then&quot;&gt;promise chain&lt;/a&gt; is executed (see &lt;a href=&quot;https://github.com/o2r-project/o2r-badger/blob/master/controllers/executability/executability.js#L83&quot;&gt;source code example&lt;/a&gt;). The chain reuses functions across all badges where possible, which were refactored from the study project code into small chunks to avoid &lt;a href=&quot;http://callbackhell.com/&quot;&gt;callback hell&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;A critical feature of extender is the detection of the DOI from the website’s markup. For some websites, such as &lt;em&gt;DOAJ.org&lt;/em&gt; or &lt;em&gt;ScienceOpen.com&lt;/em&gt;, this is not hard because they provide the DOI directly for each entry.
When the DOI is not directly provided, the extender tries to retrieve the DOI from a request to &lt;em&gt;CrossRef.org&lt;/em&gt; using the paper title (see &lt;a href=&quot;https://github.com/o2r-project/o2r-extender/blob/master/extension/BaseImplementation.js#L447&quot;&gt;source code for the DOI detection&lt;/a&gt;). This is not always successful or may find incorrect results.&lt;/p&gt;

&lt;p&gt;The Chrome extension supports nine different websites. If there are changes to one of these, the extender has to be updated as well. For example, &lt;a href=&quot;http://sciebo.de/&quot;&gt;Sciebo&lt;/a&gt; (based on &lt;a href=&quot;https://owncloud.org/&quot;&gt;ownCloud&lt;/a&gt;) recently changed their URLs to include a “fileid” parameter which resulted in an error when parsing the current folder path.&lt;/p&gt;

&lt;p&gt;As discussed above, in an ideal world the Chrome extension would not be necessary. While there are a few tricky parts with a workaround like this, it nevertheless allows o2r as a research project to easily demonstrate ideas and prototypes stretching beyond the project’s own code to even third party websites.
Moreover, the combination of extender client and badger service is suitable for embedding a common science badge across multiple online platforms. It demonstrates a technical solution how the scientific community can create and maintain a cross-publisher, cross-provider solution for research badges. What it clearly lacks is a well-designed and transparent workflow for awarding and scrutinizing badges.&lt;/p&gt;

&lt;h2 id=&quot;future-work&quot;&gt;Future Work&lt;/h2&gt;

&lt;p&gt;One of the biggest source of issues for &lt;em&gt;badger&lt;/em&gt; currently is the dependence on external services such as &lt;em&gt;Crossref&lt;/em&gt; and &lt;em&gt;DOAJ&lt;/em&gt;. While this cannot be directly resolved, it can be mitigated by requesting multiple alternative back-end services, which can provide the same information (e.g. &lt;em&gt;DOAJ&lt;/em&gt; for example also offers licence information at least for publications), or even by caching.
Furthermore, the newness of the o2r platform itself is another issue: &lt;em&gt;licence&lt;/em&gt;, &lt;em&gt;executable&lt;/em&gt;, and &lt;em&gt;spatial&lt;/em&gt; badges are dependent on an existing ERC, which must be linked via DOI to a publication. If a research paper has not been made available as an ERC then a users will get a lot of “n/a” badges.&lt;/p&gt;

&lt;p&gt;The &lt;em&gt;extender&lt;/em&gt; is only available for Google Chrome and Chromium. But since Firefox is switching to &lt;a href=&quot;https://developer.mozilla.org/en-US/Add-ons/WebExtensions&quot;&gt;WebExtensions&lt;/a&gt; and moving away from their old “add-ons” completely with &lt;a href=&quot;https://developer.mozilla.org/en-US/Add-ons/Overlay_Extensions/Firefox_addons_developer_guide&quot;&gt;Firefox 57&lt;/a&gt;, a port from a Chrome Extension to the open &lt;em&gt;WebExtensions&lt;/em&gt; makes the extender available for more users. The port should be possible with a few changes due to only minor differences between the two types of extensions.&lt;/p&gt;

&lt;p&gt;Other ideas for further development and next steps include:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Interactive badges can provide additional information when hovering over them or when the badges are clicked, most importantly why and by who the badge was assigned.&lt;/li&gt;
  &lt;li&gt;Provide the information behind the badges via an API.&lt;/li&gt;
  &lt;li&gt;Create a common design for extended badges.&lt;/li&gt;
  &lt;li&gt;Conduct a user study on extended and basic badges within a discovery scenario.&lt;/li&gt;
  &lt;li&gt;Evaluating usage of badges in print applications and for visually impaired people (cf. COS badges)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For more see the GitHub issues pages of &lt;a href=&quot;https://github.com/o2r-project/o2r-badger/issues&quot;&gt;o2r-badger&lt;/a&gt; and &lt;a href=&quot;https://github.com/o2r-project/o2r-extender/issues&quot;&gt;o2r-extender&lt;/a&gt;. Any feedback and ideas are appreciated, either on the GitHub repositories or in &lt;a href=&quot;https://groups.google.com/d/topic/reproducible-research/AP0k_xi69AA/discussion&quot;&gt;this discussion thread&lt;/a&gt; in the Google Group &lt;a href=&quot;https://groups.google.com/forum/#!forum/reproducible-research&quot;&gt;&lt;em&gt;Scientists for Reproducible Research&lt;/em&gt;&lt;/a&gt;. We thank the group members for pointing to some of the resources referenced in this post.&lt;/p&gt;

&lt;h2 id=&quot;references&quot;&gt;References&lt;/h2&gt;

&lt;p&gt;&lt;a name=&quot;kidwell&quot;&gt;&lt;/a&gt;[1] Kidwell, Mallory C., et al. 2016. Badges to Acknowledge Open Practices: A Simple, Low-Cost, Effective Method for Increasing Transparency. &lt;em&gt;PLOS Biology&lt;/em&gt; 14(5):e1002456. doi:&lt;a href=&quot;https://doi.org/10.1371/journal.pbio.1002456&quot;&gt;https://doi.org/10.1371/journal.pbio.1002456&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a name=&quot;baker&quot;&gt;&lt;/a&gt;[2] Baker, Monya, 2016. Digital badges motivate scientists to share data. &lt;em&gt;Nature News&lt;/em&gt;. doi:&lt;a href=&quot;https://doi.org/10.1038/nature.2016.19907&quot;&gt;10.1038/nature.2016.19907&lt;/a&gt;.
&lt;!-- https://www.nature.com/news/digital-badges-motivate-scientists-to-share-data-1.19907 --&gt;&lt;/p&gt;

&lt;p&gt;&lt;a name=&quot;peng1&quot;&gt;&lt;/a&gt;[3] Peng, Roger D. 2009. Reproducible research and Biostatistics. Biostatistics, Volume 10, Issue 3, Pages 405–408. doi:&lt;a href=&quot;https://doi.org/10.1093/biostatistics/kxp014&quot;&gt;10.1093/biostatistics/kxp014&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a name=&quot;peng2&quot;&gt;&lt;/a&gt;[4] Peng, Roger D. 2011. Reproducible Research in Computational Science. Science 334 (6060): 1226–27. doi:&lt;a href=&quot;https://doi.org/10.1126/science.1213847&quot;&gt;10.1126/science.1213847&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a name=&quot;lee&quot;&gt;&lt;/a&gt;[5] Lee, Duncan, Ferguson, Claire, and Mitchell, Richard. 2009. Air pollution and health in Scotland: a multicity study. Biostatistics, Volume 10, Issue 3, Pages 409–423, doi:&lt;a href=&quot;https://doi.org/10.1093/biostatistics/kxp010&quot;&gt;10.1093/biostatistics/kxp010&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a name=&quot;nuest&quot;&gt;&lt;/a&gt;[6] Nüst, D., Konkol, M., Pebesma, E., Kray, C., Schutzeichel, M., Przibytzin, H., and Lorenz, J. Opening the Publication Process with Executable Research Compendia. D-Lib Magazine. 2017. doi:&lt;a href=&quot;https://doi.org/10.1045/january2017-nuest&quot;&gt;10.1045/january2017-nuest&lt;/a&gt;.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>useR!2017</title>
   <link href="https://o2r.info/2017/07/07/useR2017/"/>
   <updated>2017-07-07T00:00:00+00:00</updated>
   <id>https://o2r.info/2017/07/07/useR2017</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;https://user2017.brussels/images/logo.jpg&quot; alt=&quot;useR!2017 conference logo&quot; title=&quot;conference logo&quot; width=&quot;400&quot; /&gt;&lt;/p&gt;

&lt;p&gt;This o2r team members &lt;a href=&quot;https://orcid.org/0000-0002-0024-5046&quot;&gt;Daniel&lt;/a&gt; and &lt;a href=&quot;https://orcid.org/0000-0001-8049-7069&quot;&gt;Edzer&lt;/a&gt; had the pleasure to participate in the largest conference of R developers and users, &lt;a href=&quot;https://ser2017.brussels/&quot;&gt;useR!2017&lt;/a&gt; in Brüssels, Belgium.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Daniel Nüst &lt;a href=&quot;https://twitter.com/nordholmen&quot;&gt;@nordholmen&lt;/a&gt; presenting containerit, creates a docker img from an R session to archive reproducibly &lt;a href=&quot;https://twitter.com/o2r_project&quot;&gt;@o2r_project&lt;/a&gt; &lt;a href=&quot;https://twitter.com/cboettig&quot;&gt;@cboettig&lt;/a&gt; &lt;a href=&quot;https://t.co/o65O8s8jXY&quot;&gt;pic.twitter.com/o65O8s8jXY&lt;/a&gt;&lt;/p&gt;&amp;mdash; Edzer Pebesma (@edzerpebesma) &lt;a href=&quot;https://twitter.com/edzerpebesma/status/882909374951424001&quot;&gt;6. Juli 2017&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;//platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;Daniel presented a new R extension package, &lt;a href=&quot;https://github.com/o2r-project/containerit/&quot;&gt;&lt;code&gt;containerit&lt;/code&gt;&lt;/a&gt;, in the &lt;em&gt;Data reproducibility&lt;/em&gt; session.
It can &lt;!--more--&gt;automatically create a container manifest, i.e. a Dockerfile, from different sources, such as sessions or scripts.&lt;/p&gt;

&lt;p&gt;If you want to learn more about &lt;code&gt;containerit&lt;/code&gt;, read &lt;a href=&quot;/2017/05/30/containerit-package/&quot;&gt;this blog post&lt;/a&gt; and take a look at Daniel’s presentation (also on &lt;a href=&quot;https://doi.org/10.5281/zenodo.824006&quot;&gt;Zenodo&lt;/a&gt;).&lt;/p&gt;

&lt;iframe src=&quot;//www.slideshare.net/slideshow/embed_code/key/fA7jwdlV83YqZe&quot; width=&quot;595&quot; height=&quot;485&quot; frameborder=&quot;0&quot; marginwidth=&quot;0&quot; marginheight=&quot;0&quot; scrolling=&quot;no&quot; style=&quot;border:1px solid #CCC; border-width:1px; margin-bottom:5px; max-width: 100%;&quot; allowfullscreen=&quot;&quot;&gt; &lt;/iframe&gt;
&lt;div style=&quot;margin-bottom:5px; font-size: 75%;&quot;&gt; &lt;strong&gt; &lt;a href=&quot;//www.slideshare.net/nuest/containerit-at-user2017-conference-brussels&quot; title=&quot;containerit at useR!2017 conference, Brussels&quot; target=&quot;_blank&quot;&gt;containerit at useR!2017 conference, Brussels&lt;/a&gt; &lt;/strong&gt; from &lt;strong&gt;&lt;a target=&quot;_blank&quot; href=&quot;https://www.slideshare.net/nuest&quot;&gt;Daniel Nüst&lt;/a&gt;&lt;/strong&gt; &lt;/div&gt;

&lt;p&gt;Fortunately the presentation was very well-attended and assured our understanding that the importance of reproducibility is wide-spread in the R community.
The interest in using containers for this challenge is growing, as shown by the numerous questions Daniel received after the session and the remainder of the conference.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;containerit&lt;/code&gt; is Open Source Software and we invite you to &lt;a href=&quot;https://github.com/o2r-project/containerit/blob/master/README.md&quot;&gt;try it out&lt;/a&gt;, &lt;a href=&quot;https://github.com/o2r-project/containerit/issues/new&quot;&gt;inform us about bugs&lt;/a&gt;,and even &lt;a href=&quot;https://github.com/o2r-project/containerit/projects/1&quot;&gt;participate in the development&lt;/a&gt;.
In the near future, we will use the package to automatically create &lt;a href=&quot;https://doi.org/10.1045/january2017-nuest&quot;&gt;Executable Research Compendia&lt;/a&gt; in our &lt;a href=&quot;https://o2r.info/architecture&quot;&gt;reproducibility service&lt;/a&gt;, but the package also has an &lt;a href=&quot;https://github.com/o2r-project/containerit/projects/1&quot;&gt;independent roadmap&lt;/a&gt; and it hopefully proves useful for many useRs outside of our project.&lt;/p&gt;

&lt;p&gt;The workshop presentations were recorded and are published &lt;a href=&quot;https://channel9.msdn.com/Events/useR-international-R-User-conferences/useR-International-R-User-2017-Conference&quot;&gt;on Channel 9&lt;/a&gt;, including &lt;a href=&quot;https://channel9.msdn.com/Events/useR-international-R-User-conferences/useR-International-R-User-2017-Conference/Automatically-archiving-reproducible-studies-with-Docker&quot;&gt;Daniel’s talk&lt;/a&gt;:&lt;/p&gt;

&lt;iframe src=&quot;https://channel9.msdn.com/Events/useR-international-R-User-conferences/useR-International-R-User-2017-Conference/Automatically-archiving-reproducible-studies-with-Docker/player?format=html5&quot; width=&quot;560&quot; height=&quot;315&quot; allowfullscreen=&quot;&quot; frameborder=&quot;0&quot;&gt;&lt;/iframe&gt;
</content>
 </entry>
 
 <entry>
   <title>C4RR workshop in Cambridge</title>
   <link href="https://o2r.info/2017/06/28/o2r-at-C4RR/"/>
   <updated>2017-06-28T00:00:00+00:00</updated>
   <id>https://o2r.info/2017/06/28/o2r-at-C4RR</id>
   <content type="html">&lt;p&gt;Today o2r team member &lt;a href=&quot;https://orcid.org/0000-0002-0024-5046&quot;&gt;Daniel&lt;/a&gt; had the pleasure to present work from the o2r project at the two day &lt;a href=&quot;https://www.software.ac.uk/c4rr&quot;&gt;Docker Containers for Reproducible Research Workshop&lt;/a&gt; held in Cambridge, UK.&lt;/p&gt;

&lt;p&gt;It was a full packed &lt;a href=&quot;https://www.software.ac.uk/c4rr/agenda&quot;&gt;two days of talks and demos&lt;/a&gt; (see also &lt;a href=&quot;https://twitter.com/hashtag/C4RR?src=hash&quot;&gt;#C4RR&lt;/a&gt;).
People from a large &lt;a href=&quot;https://www.software.ac.uk/c4rr/talks&quot;&gt;variety of disciplines&lt;/a&gt; shared how they use containers for making research transparent, scalable, transferable, and reproducible.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Getting ready for two exciting days at &lt;a href=&quot;https://twitter.com/hashtag/C4RR?src=hash&quot;&gt;#C4RR&lt;/a&gt; workshop in Cambridge. &lt;a href=&quot;https://twitter.com/nordholmen&quot;&gt;@nordholmen&lt;/a&gt; presenting o2r tomorrow afternoon. &lt;a href=&quot;https://twitter.com/SoftwareSaved&quot;&gt;@SoftwareSaved&lt;/a&gt; &lt;a href=&quot;https://t.co/IhYqmjddPD&quot;&gt;pic.twitter.com/IhYqmjddPD&lt;/a&gt;&lt;/p&gt;&amp;mdash; o2r (@o2r_project) &lt;a href=&quot;https://twitter.com/o2r_project/status/879632038126661632&quot;&gt;27. Juni 2017&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;//platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;Unlike the workshop’s title, Docker was not the only container solution. &lt;a href=&quot;http://singularity.lbl.gov/&quot;&gt;Singularity&lt;/a&gt; made some important appearances, especially with the different groups working with clusters of thousands of nodes in HPC (high performance computing) and GPGPUs (general processing on graphical processing units). Further topics included deep learning, statistical reports by governments, using containers for teaching, scientific workflows in the cloud, virtual clusters and “best before” dates for software.&lt;/p&gt;

&lt;p&gt;Daniel had the hard job of giving the final presentation. After all the previous talks, which comprises many different aspects of reproducible research also somehow part of o2r, this was a threatening task and felt a bit like like “imposters syndrome”. However, the commonalities in motivation, challenges, and ideas are also a sign of the increasing popularity for using containers across &lt;a href=&quot;https://www.software.ac.uk/c4rr/who-is-attending&quot;&gt;diverse domains&lt;/a&gt;. Eventually it is a very positive fact an event such as C4RR took place in Europe and had more than 50 people in attendance!&lt;/p&gt;

&lt;p&gt;Take a look and Daniel’s slides and a video recording below.&lt;/p&gt;

&lt;iframe src=&quot;//www.slideshare.net/slideshow/embed_code/key/qYhO5hTorgqPcu&quot; width=&quot;425&quot; height=&quot;355&quot; frameborder=&quot;0&quot; marginwidth=&quot;0&quot; marginheight=&quot;0&quot; scrolling=&quot;no&quot; style=&quot;border:1px solid #CCC; border-width:1px; margin-bottom:5px; max-width: 100%;&quot; allowfullscreen=&quot;&quot;&gt;
&lt;/iframe&gt;
&lt;div style=&quot;margin-bottom: 10px; font-size: 80%;&quot;&gt; &lt;strong&gt; &lt;a href=&quot;//www.slideshare.net/nuest/creating-executable-research-compendia-to-improve-reproducibility-in-the-geosciences&quot; title=&quot;Creating Executable Research Compendia to Improve Reproducibility in the Geosciences&quot; target=&quot;_blank&quot;&gt;Creating Executable Research Compendia to Improve Reproducibility in the Geosciences&lt;/a&gt; &lt;/strong&gt; from &lt;strong&gt;&lt;a target=&quot;_blank&quot; href=&quot;//www.slideshare.net/nuest&quot;&gt;Daniel Nüst&lt;/a&gt;&lt;/strong&gt;
&lt;/div&gt;

&lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;https://www.youtube-nocookie.com/embed/cJ1Vehh3J88?rel=0&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;&quot;&gt;&lt;/iframe&gt;

&lt;p&gt;The workshop was a great experience and very well organized by the &lt;a href=&quot;https://www.software.ac.uk/&quot;&gt;Software Sustainability Institute&lt;/a&gt;. We learned about both related and quite similar projects, but also acknowledged that o2r’s focus on “Desktop-sized” data and computing as well as supporting the geosciences domain does set us apart.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-conversation=&quot;none&quot; data-lang=&quot;de&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Thanks for a great workshop to &lt;a href=&quot;https://twitter.com/SoftwareSaved&quot;&gt;@SoftwareSaved&lt;/a&gt;  &lt;a href=&quot;https://twitter.com/rgaiacs&quot;&gt;@rgaiacs&lt;/a&gt; &lt;a href=&quot;https://twitter.com/StephenEglen&quot;&gt;@StephenEglen&lt;/a&gt; Taking home stickers and many new ideas &lt;a href=&quot;https://twitter.com/hashtag/C4RR?src=hash&quot;&gt;#C4RR&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/reproducibleresearch?src=hash&quot;&gt;#reproducibleresearch&lt;/a&gt; &lt;a href=&quot;https://t.co/tEMG34drgp&quot;&gt;pic.twitter.com/tEMG34drgp&lt;/a&gt;&lt;/p&gt;&amp;mdash; o2r (@o2r_project) &lt;a href=&quot;https://twitter.com/o2r_project/status/880115594116440067&quot;&gt;28. Juni 2017&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;//platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

</content>
 </entry>
 
 <entry>
   <title>Generating Dockerfiles for reproducible research with R</title>
   <link href="https://o2r.info/2017/05/30/containerit-package/"/>
   <updated>2017-05-30T00:00:00+00:00</updated>
   <id>https://o2r.info/2017/05/30/containerit-package</id>
   <content type="html">&lt;p&gt;&lt;em&gt;This post is the draft of the vignette for a new R package by o2r team members &lt;a href=&quot;https://github.com/MatthiasHinz&quot;&gt;Matthias&lt;/a&gt; and &lt;a href=&quot;https://github.com/nuest&quot;&gt;Daniel&lt;/a&gt;. Find the original file &lt;a href=&quot;https://github.com/o2r-project/containerit/blob/master/vignettes/containerit.Rmd&quot;&gt;in the package repository on GitHub&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;#introduction&quot;&gt;1. Introduction&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;#creating-a-dockerfile&quot;&gt;2. Creating a Dockerfile&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;#including-resources&quot;&gt;3. Including resources&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;#image-metadata&quot;&gt;4. Image metadata&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;#further-customization&quot;&gt;5. Further customization&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;#cli&quot;&gt;6. CLI&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;#challenges&quot;&gt;7. Challenges&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;#conclusions-and-future-work&quot;&gt;8. Conclusions and future work&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;#metadata&quot;&gt;Metadata&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id=&quot;1-introduction&quot;&gt;1. Introduction&lt;/h2&gt;

&lt;p&gt;Even though R is designed for open and reproducible research, users who
want to share their work with others are facing challenges. Sharing
merely the R script or R Markdown document should warrant
reproducibility, but many analyses rely on additional resources and
specific third party software as well. An R script may &lt;!--more--&gt;produce
unexpected results or errors when executed under a different version of
R or another platform. Reproduciblility is only assured by providing
complete setup instructions and resources. Long-term reproducibility can
be achieved by either regular maintenance of the code, i.e. keeping it
always working with the latest package versions from CRAN. It can be
supported by packages such as
&lt;a href=&quot;https://rstudio.github.io/packrat/&quot;&gt;packrat&lt;/a&gt; and platforms such as
&lt;a href=&quot;https://mran.microsoft.com/&quot;&gt;MRAN&lt;/a&gt;, which provide means to capture a
specific combination of R packages. An alternative to updating or
managing packages explicitly is providing the full runtime environment
in its original state, using &lt;a href=&quot;https://en.wikipedia.org/wiki/Virtual_machine&quot;&gt;virtual
machines&lt;/a&gt; or &lt;a href=&quot;https://en.wikipedia.org/wiki/Operating-system-level_virtualization&quot;&gt;software
containers&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The R extension package &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;containerit&lt;/code&gt; aims to facilitate the latter
approach by making reproducible and archivable research with containers
easier. The development is supported by the DFG-funded project Opening
Reproducible Research (o2r, &lt;a href=&quot;https://o2r.info&quot;&gt;https://o2r.info&lt;/a&gt;). &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;containerit&lt;/code&gt; relies on
&lt;a href=&quot;http://docker.com/&quot;&gt;Docker&lt;/a&gt; and automatically generates a container
manifest, or “recipe”, with setup instructions to recreate a runtime
environment based on a given R session, R script, R Markdown file or
workspace directory. The resulting
&lt;a href=&quot;https://docs.docker.com/engine/reference/builder/&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;Dockerfile&lt;/code&gt;&lt;/a&gt; can
not only be read and understood by humans, but also be interpreted by
the Docker engine to create a software container containing all the R
packages and their system dependencies. This way all requirements of an
R workflow are packaged in an executable format.&lt;/p&gt;

&lt;p&gt;The created Dockerfiles are based on the
&lt;a href=&quot;https://github.com/rocker-org/rocker&quot;&gt;Rocker&lt;/a&gt; project (&lt;a href=&quot;https://hub.docker.com/u/rocker/&quot;&gt;Rocker on
Docker Hub&lt;/a&gt;,
&lt;a href=&quot;http://dirk.eddelbuettel.com/blog/2014/10/23/#introducing_rocker&quot;&gt;introduction&lt;/a&gt;).
Using the stack of version-stable Rocker images, it is possible to match
the container’s R version with the local R installation or any R version
the user requires. &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;containerit&lt;/code&gt; executes the provided input workspace
or file first locally on the host machine in order to detect all
dependencies. For determining external software dependencies of attached
packages, &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;containerit&lt;/code&gt; relies (a) on the &lt;a href=&quot;https://sysreqs.r-hub.io/&quot;&gt;sysreqs
database&lt;/a&gt; and makes use of the corresponding
web API and R package, and (b) on internally defined rule sets for
challenging configurations.&lt;/p&gt;

&lt;p&gt;The Dockerfile created by &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;containerit&lt;/code&gt; can then be used to build a
Docker image. Running the image will start an R session that closely
resembles the creating systems runtime environment. The image can be
shared and archived and works anywhere with a compatible Docker version.&lt;/p&gt;

&lt;p&gt;To build images and run containers, the package integrates with the
&lt;a href=&quot;https://github.com/wch/harbor&quot;&gt;harbor&lt;/a&gt; package and adds a few
convenience functions for interacting with Docker images and containers.
For concrete details on reading, loading, or installing the &lt;em&gt;exact&lt;/em&gt;
versions of R packages including their system dependencies/libraries,
this project focuses on the geospatial domain. &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;containerit&lt;/code&gt; uses the
package
&lt;a href=&quot;https://cran.r-project.org/web/packages/futile.logger/&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;futile.logger&lt;/code&gt;&lt;/a&gt;
to provide information to the user at a configurable level of detail,
see &lt;a href=&quot;https://cran.r-project.org/web/packages/futile.logger/README.html&quot;&gt;futile.logger
documentation&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;In the remainder of this vignette, we first introduce the main usage
scenarios for &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;containerit&lt;/code&gt; and document current challenges as well as
directions for future work.&lt;/p&gt;

&lt;h2 id=&quot;2-creating-a-dockerfile&quot;&gt;2. Creating a Dockerfile&lt;/h2&gt;

&lt;h3 id=&quot;21-basics&quot;&gt;2.1 Basics&lt;/h3&gt;

&lt;p&gt;The easiest way to generate a Dockerfile is to run an analysis in an
interactive R session and create a Dockerfile for this session by
loading &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;containerit&lt;/code&gt; and calling the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;dockerfile()&lt;/code&gt;- method with
default parameters. As shown in the example below, the result can be
pretty-printed and written to a file. If no &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;file&lt;/code&gt; argument is supplied
to &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;write()&lt;/code&gt;, the Dockerfile is written to the current working directory
as &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;./Dockerfile&lt;/code&gt;, following the typical naming convention of Docker.&lt;/p&gt;

&lt;p&gt;When packaging any resources, it is essential that the R working
directory is the same as the build context, to which the Dockerfile
refers. All resources must be located below this directory so that they
can be refered to by relative paths (e.g. for copy instructions). This
must also be considered when packaging R scripts that use relative
paths, e.g. for reading a file or sourcing another R script.&lt;/p&gt;

&lt;h3 id=&quot;22-packaging-an-interactive-session&quot;&gt;2.2 Packaging an interactive session&lt;/h3&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;library(&quot;containerit&quot;)

## 
## Attaching package: &apos;containerit&apos;

## The following object is masked from &apos;package:base&apos;:
## 
##     Arg

# do stuff, based on demo(&quot;krige&quot;)
library(&quot;gstat&quot;)
library(&quot;sp&quot;)

data(meuse)
coordinates(meuse) = ~x+y
data(meuse.grid)
gridded(meuse.grid) = ~x+y
v &amp;lt;- variogram(log(zinc)~1, meuse)
m &amp;lt;- fit.variogram(v, vgm(1, &quot;Sph&quot;, 300, 1))
plot(v, model = m)

# create Dockerfile representation
dockerfile_object &amp;lt;- dockerfile()

## INFO [2017-05-30 14:49:20] Trying to determine system requirements for the package(s) &apos;sp, gstat, knitr, Rcpp, intervals, lattice, FNN, spacetime, zoo, digest, rprojroot, futile.options, backports, magrittr, evaluate, stringi, futile.logger, xts, rmarkdown, lambda.r, stringr, yaml, htmltools&apos; from sysreq online DB
## INFO [2017-05-30 14:49:21] Adding CRAN packages: sp, gstat, knitr, Rcpp, intervals, lattice, FNN, spacetime, zoo, digest, rprojroot, futile.options, backports, magrittr, evaluate, stringi, futile.logger, xts, rmarkdown, lambda.r, stringr, yaml, htmltools
## INFO [2017-05-30 14:49:21] Created Dockerfile-Object based on sessionInfo
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;The representation of a Dockerfile in R is an instance of the S4 class
&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;Dockerfile&lt;/code&gt;.&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;dockerfile_object

## An object of class &quot;Dockerfile&quot;
## Slot &quot;image&quot;:
## An object of class &quot;From&quot;
## Slot &quot;image&quot;:
## [1] &quot;rocker/r-ver&quot;
## 
## Slot &quot;postfix&quot;:
## An object of class &quot;Tag&quot;
## [1] &quot;3.4.0&quot;
## 
## 
## Slot &quot;maintainer&quot;:
## An object of class &quot;Label&quot;
## Slot &quot;data&quot;:
## $maintainer
## [1] &quot;daniel&quot;
## 
## 
## Slot &quot;multi_line&quot;:
## [1] FALSE
## 
## 
## Slot &quot;instructions&quot;:
## [[1]]
## An object of class &quot;Run_shell&quot;
## Slot &quot;commands&quot;:
## [1] &quot;export DEBIAN_FRONTEND=noninteractive; apt-get -y update&quot;
## [2] &quot;apt-get install -y pandoc \\\n\tpandoc-citeproc&quot;         
## 
## 
## [[2]]
## An object of class &quot;Run&quot;
## Slot &quot;exec&quot;:
## [1] &quot;install2.r&quot;
## 
## Slot &quot;params&quot;:
##  [1] &quot;-r &apos;https://cloud.r-project.org&apos;&quot; &quot;sp&quot;                              
##  [3] &quot;gstat&quot;                            &quot;knitr&quot;                           
##  [5] &quot;Rcpp&quot;                             &quot;intervals&quot;                       
##  [7] &quot;lattice&quot;                          &quot;FNN&quot;                             
##  [9] &quot;spacetime&quot;                        &quot;zoo&quot;                             
## [11] &quot;digest&quot;                           &quot;rprojroot&quot;                       
## [13] &quot;futile.options&quot;                   &quot;backports&quot;                       
## [15] &quot;magrittr&quot;                         &quot;evaluate&quot;                        
## [17] &quot;stringi&quot;                          &quot;futile.logger&quot;                   
## [19] &quot;xts&quot;                              &quot;rmarkdown&quot;                       
## [21] &quot;lambda.r&quot;                         &quot;stringr&quot;                         
## [23] &quot;yaml&quot;                             &quot;htmltools&quot;                       
## 
## 
## [[3]]
## An object of class &quot;Workdir&quot;
## Slot &quot;path&quot;:
## [1] &quot;/payload/&quot;
## 
## 
## 
## Slot &quot;cmd&quot;:
## An object of class &quot;Cmd&quot;
## Slot &quot;exec&quot;:
## [1] &quot;R&quot;
## 
## Slot &quot;params&quot;:
## [1] NA
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;The printout below shows the rendered Dockerfile. Its instructions
follow a pre-defined order:&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;define the base image&lt;/li&gt;
  &lt;li&gt;define the maintainer label&lt;/li&gt;
  &lt;li&gt;install system dependencies and external software&lt;/li&gt;
  &lt;li&gt;install the R packages themselves&lt;/li&gt;
  &lt;li&gt;set the working directory&lt;/li&gt;
  &lt;li&gt;copy instructions and metadata labels (see examples in
later sections)&lt;/li&gt;
  &lt;li&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;CMD&lt;/code&gt; instruction (final line) defines the default command when
running the container&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Note that the maintainer label as well as the R version of the base
image are detected from the runtime environment, if not set to different
values manually.&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;print(dockerfile_object)

FROM rocker/r-ver:3.4.0
LABEL maintainer=&quot;daniel&quot;
RUN export DEBIAN_FRONTEND=noninteractive; apt-get -y update \
 &amp;amp;&amp;amp; apt-get install -y pandoc \
    pandoc-citeproc
RUN [&quot;install2.r&quot;, &quot;-r &apos;https://cloud.r-project.org&apos;&quot;, &quot;sp&quot;, &quot;gstat&quot;, &quot;knitr&quot;, &quot;Rcpp&quot;, &quot;intervals&quot;, &quot;lattice&quot;, &quot;FNN&quot;, &quot;spacetime&quot;, &quot;zoo&quot;, &quot;digest&quot;, &quot;rprojroot&quot;, &quot;futile.options&quot;, &quot;backports&quot;, &quot;magrittr&quot;, &quot;evaluate&quot;, &quot;stringi&quot;, &quot;futile.logger&quot;, &quot;xts&quot;, &quot;rmarkdown&quot;, &quot;lambda.r&quot;, &quot;stringr&quot;, &quot;yaml&quot;, &quot;htmltools&quot;]
WORKDIR /payload/
CMD [&quot;R&quot;]
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Instead of printing out to the console, you can also write to a file:&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;write(dockerfile_object, file = tempfile(fileext = &quot;.dockerfile&quot;))

## INFO [2017-05-30 14:49:21] Writing dockerfile to /tmp/Rtmp25OKLi/file1a9726e56459.dockerfile
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h3 id=&quot;23-packaging-an-external-session&quot;&gt;2.3 Packaging an external session&lt;/h3&gt;

&lt;p&gt;Packaging an interactive session has the disadvantage that unnecessary
dependencies might be added to the Dockerfile and subsequently to the
container. For instance the package &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;futile.logger&lt;/code&gt; is a dependency of
&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;containerit&lt;/code&gt;, and it will be added to the container because it was
loaded into the same session were the analyses was executed. It cannot
be removed by default, because other packages in the session &lt;em&gt;might&lt;/em&gt; use
it as well (even unintentionally in case of generic methods). Therefore,
it is safer not to tamper with the current session, but to run the
analysis in an isolated &lt;em&gt;vanilla&lt;/em&gt; session, which does not have
&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;containerit&lt;/code&gt; in it. The latter will batch-execute the commands in a
seperate instance of R and retrieves an object of class &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;sessionInfo&lt;/code&gt;.
The session info is then used as input to &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;dockerfile()&lt;/code&gt;. This is also
how &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;dockerfile()&lt;/code&gt; works internally when packaging either expressions,
scripts or R markdown files.&lt;/p&gt;

&lt;p&gt;The following code creates a Dockerfile for a list of expressions in a
vanilla session.&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;exp &amp;lt;- c(expression(library(sp)),
         expression(data(meuse)), 
         expression(mean(meuse[[&quot;zinc&quot;]])))
session &amp;lt;- clean_session(exp, echo = TRUE)

## INFO [2017-05-30 14:49:21] Creating an R session with the following arguments:
##   R  --silent --vanilla -e &quot;library(sp)&quot; -e &quot;data(meuse)&quot; -e &quot;mean(meuse[[\&quot;zinc\&quot;]])&quot; -e &quot;info &amp;lt;- sessionInfo()&quot; -e &quot;save(list = \&quot;info\&quot;, file = \&quot;/tmp/Rtmp25OKLi/rdata-sessioninfo1a9714893e92\&quot;)&quot;

dockerfile_object &amp;lt;- dockerfile(from = session)

## INFO [2017-05-30 14:49:23] Trying to determine system requirements for the package(s) &apos;sp, lattice&apos; from sysreq online DB
## INFO [2017-05-30 14:49:24] Adding CRAN packages: sp, lattice
## INFO [2017-05-30 14:49:24] Created Dockerfile-Object based on sessionInfo

print(dockerfile_object)

FROM rocker/r-ver:3.4.0
LABEL maintainer=&quot;daniel&quot;
RUN [&quot;install2.r&quot;, &quot;-r &apos;https://cloud.r-project.org&apos;&quot;, &quot;sp&quot;, &quot;lattice&quot;]
WORKDIR /payload/
CMD [&quot;R&quot;]
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h3 id=&quot;24-packaging-an-r-script&quot;&gt;2.4 Packaging an R script&lt;/h3&gt;

&lt;p&gt;R scripts are packaged by just supplying the file path or paths to the
arguement &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;from&lt;/code&gt; of &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;dockerfile()&lt;/code&gt;. They are automatically copied into
the container’s working directory. In order to run the R script on
start-up, rather than an interactive R session, a CMD instruction can be
added by providing the value of the helper function &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;CMD_Rscript()&lt;/code&gt; as
an argument to &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;cmd&lt;/code&gt;.&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;# create simple script file
scriptFile &amp;lt;- tempfile(pattern = &quot;containerit_&quot;, fileext = &quot;.R&quot;)
writeLines(c(&apos;library(rgdal)&apos;,
             &apos;nc &amp;lt;- rgdal::readOGR(system.file(&quot;shapes/&quot;, package=&quot;maptools&quot;), &quot;sids&quot;, verbose = FALSE)&apos;,
             &apos;proj4string(nc) &amp;lt;- CRS(&quot;+proj=longlat +datum=NAD27&quot;)&apos;,
             &apos;plot(nc)&apos;), scriptFile)

# use a custom startup command
scriptCmd &amp;lt;- CMD_Rscript(basename(scriptFile))

# create Dockerfile for the script
dockerfile_object &amp;lt;- dockerfile(from = scriptFile, silent = TRUE, cmd = scriptCmd)

print(dockerfile_object)

FROM rocker/r-ver:3.4.0
LABEL maintainer=&quot;daniel&quot;
RUN export DEBIAN_FRONTEND=noninteractive; apt-get -y update \
 &amp;amp;&amp;amp; apt-get install -y gdal-bin \
    libgdal-dev \
    libproj-dev
RUN [&quot;install2.r&quot;, &quot;-r &apos;https://cloud.r-project.org&apos;&quot;, &quot;rgdal&quot;, &quot;sp&quot;, &quot;lattice&quot;]
WORKDIR /payload/
COPY [&quot;.&quot;, &quot;.&quot;]
CMD [&quot;R&quot;, &quot;--vanilla&quot;, &quot;-f&quot;, &quot;containerit_1a977e2dcdea.R&quot;]
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h3 id=&quot;25-packaging-an-r-markdown-file&quot;&gt;2.5 Packaging an R Markdown file&lt;/h3&gt;

&lt;p&gt;Similarly to scripts, R Markdown files can be passed to the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;from&lt;/code&gt;
argument. In the following example, a vignette from the Simple Features
package &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;sf&lt;/code&gt; is packaged in a container. To render the document at
startup, the Dockerfile’s &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;CMD&lt;/code&gt; instruction must be changed. To do this,
the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;cmd&lt;/code&gt; argument passed to &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;dockerfile()&lt;/code&gt; is constructed using the
function &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;CMD_Render&lt;/code&gt;. Note that, as shown in the Dockerfile, the GDAL
library has to be build from source for &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;sf&lt;/code&gt; to work properly, because a
quite recent version of GDAL is required. This adaptation of the
installation instruction is based on an internal ruleset for the package
&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;sf&lt;/code&gt;.&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;response &amp;lt;- file.copy(from = system.file(&quot;doc/sf3.Rmd&quot;,package = &quot;sf&quot;),
                        to = temp_workspace, recursive = TRUE)
vignette &amp;lt;- &quot;sf3.Rmd&quot;

dockerfile_object &amp;lt;- dockerfile(from = vignette, silent = TRUE, cmd = CMD_Render(vignette))

## Loading required namespace: sf

print(dockerfile_object)

FROM rocker/r-ver:3.4.0
LABEL maintainer=&quot;daniel&quot;
RUN export DEBIAN_FRONTEND=noninteractive; apt-get -y update \
 &amp;amp;&amp;amp; apt-get install -y gdal-bin \
    libgeos-dev \
    libproj-dev \
    libudunits2-dev \
    make \
    pandoc \
    pandoc-citeproc \
    wget
WORKDIR /tmp/gdal
RUN wget http://download.osgeo.org/gdal/2.1.3/gdal-2.1.3.tar.gz \
 &amp;amp;&amp;amp; tar zxf gdal-2.1.3.tar.gz \
 &amp;amp;&amp;amp; cd gdal-2.1.3 \
 &amp;amp;&amp;amp; ./configure \
 &amp;amp;&amp;amp; make \
 &amp;amp;&amp;amp; make install \
 &amp;amp;&amp;amp; ldconfig \
 &amp;amp;&amp;amp; rm -r /tmp/gdal
RUN [&quot;install2.r&quot;, &quot;-r &apos;https://cloud.r-project.org&apos;&quot;, &quot;dplyr&quot;, &quot;sf&quot;, &quot;Rcpp&quot;, &quot;assertthat&quot;, &quot;digest&quot;, &quot;rprojroot&quot;, &quot;R6&quot;, &quot;DBI&quot;, &quot;backports&quot;, &quot;magrittr&quot;, &quot;evaluate&quot;, &quot;units&quot;, &quot;rlang&quot;, &quot;stringi&quot;, &quot;rmarkdown&quot;, &quot;udunits2&quot;, &quot;stringr&quot;, &quot;yaml&quot;, &quot;htmltools&quot;, &quot;knitr&quot;, &quot;tibble&quot;]
WORKDIR /payload/
COPY [&quot;sf3.Rmd&quot;, &quot;sf3.Rmd&quot;]
CMD [&quot;R&quot;, &quot;--vanilla&quot;, &quot;-e&quot;, &quot;rmarkdown::render(\&quot;sf3.Rmd\&quot;, output_format = rmarkdown::html_document())&quot;]
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h3 id=&quot;26-packaging-a-workspace-directory&quot;&gt;2.6 Packaging a workspace directory&lt;/h3&gt;

&lt;p&gt;A typical case expected to be interesting for &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;containerit&lt;/code&gt; users is
packaging a local directory with a collection of data and code files. If
providing a directory path to the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;dockerfile()&lt;/code&gt; function, the package
searches for the first occurence of an R script, or otherwise the first
occurence of an R markdown file. It then proceeds to package this file
along with all other resources in the directory, as shown in the next
section.&lt;/p&gt;

&lt;h2 id=&quot;3-including-resources&quot;&gt;3. Including resources&lt;/h2&gt;

&lt;p&gt;Analyses in R often rely on external files and resources that are
located located in the workspace. When scripts or R markdown files are
packaged, they are copied by default into the same location relative to
the working directory. The argument &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;copy&lt;/code&gt; influences how &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;dockefile()&lt;/code&gt;
behaves in this matter. It can either have the values &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;script&lt;/code&gt; (default
behaviour), &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;script_dir&lt;/code&gt; (copies the complete directory in which the
input file is located), or a custom list of files and directories inside
the current working directory&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;response &amp;lt;- file.copy(from = system.file(&quot;simple_test_script_resources/&quot;, 
                                         package = &quot;containerit&quot;),
                      to = temp_workspace, recursive = TRUE)


dockerfile_object &amp;lt;- dockerfile(&quot;simple_test_script_resources/&quot;,
              copy = &quot;script_dir&quot;,
              cmd = CMD_Rscript(&quot;simple_test_script_resources/simple_test.R&quot;))

print(dockerfile_object)

FROM rocker/r-ver:3.4.0
LABEL maintainer=&quot;daniel&quot;
WORKDIR /payload/
COPY [&quot;simple_test_script_resources&quot;, &quot;simple_test_script_resources/&quot;]
CMD [&quot;R&quot;, &quot;--vanilla&quot;, &quot;-f&quot;, &quot;simple_test_script_resources/simple_test.R&quot;]
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Including R objects works similar to resources, using the argument
&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;save_image&lt;/code&gt;. The argument can be set to &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;TRUE&lt;/code&gt; to save &lt;em&gt;all&lt;/em&gt; objects of
the current workspace to an .RData file, which is then copied to the
container’s working directory and loaded on startup (based on
&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;save.image()&lt;/code&gt;).&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;df &amp;lt;- dockerfile(save_image = TRUE)
print(df)

FROM rocker/r-ver:3.4.0
LABEL maintainer=&quot;daniel&quot;
RUN export DEBIAN_FRONTEND=noninteractive; apt-get -y update \
 &amp;amp;&amp;amp; apt-get install -y gdal-bin \
    libgeos-dev \
    libproj-dev \
    libudunits2-dev \
    make \
    pandoc \
    pandoc-citeproc \
    wget
WORKDIR /tmp/gdal
RUN wget http://download.osgeo.org/gdal/2.1.3/gdal-2.1.3.tar.gz \
 &amp;amp;&amp;amp; tar zxf gdal-2.1.3.tar.gz \
 &amp;amp;&amp;amp; cd gdal-2.1.3 \
 &amp;amp;&amp;amp; ./configure \
 &amp;amp;&amp;amp; make \
 &amp;amp;&amp;amp; make install \
 &amp;amp;&amp;amp; ldconfig \
 &amp;amp;&amp;amp; rm -r /tmp/gdal
RUN [&quot;install2.r&quot;, &quot;-r &apos;https://cloud.r-project.org&apos;&quot;, &quot;sp&quot;, &quot;gstat&quot;, &quot;knitr&quot;, &quot;Rcpp&quot;, &quot;magrittr&quot;, &quot;units&quot;, &quot;lattice&quot;, &quot;rjson&quot;, &quot;FNN&quot;, &quot;udunits2&quot;, &quot;stringr&quot;, &quot;xts&quot;, &quot;DBI&quot;, &quot;lambda.r&quot;, &quot;futile.logger&quot;, &quot;htmltools&quot;, &quot;intervals&quot;, &quot;yaml&quot;, &quot;rprojroot&quot;, &quot;digest&quot;, &quot;sf&quot;, &quot;futile.options&quot;, &quot;evaluate&quot;, &quot;rmarkdown&quot;, &quot;stringi&quot;, &quot;backports&quot;, &quot;spacetime&quot;, &quot;zoo&quot;]
WORKDIR /payload/
COPY [&quot;./.RData&quot;, &quot;./&quot;]
CMD [&quot;R&quot;]
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Alternatively, a object names as well as other arguments can be passed
as a list, which then are passed to the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;save()&lt;/code&gt; function.&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;require(fortunes)

## Loading required package: fortunes

rm(list = ls())
calculation &amp;lt;- 41 + 1
frtn &amp;lt;- fortunes::fortune()
original_sessionInfo &amp;lt;- sessionInfo()

df &amp;lt;- dockerfile(silent = TRUE,
                 save_image = list(&quot;original_sessionInfo&quot;, &quot;frtn&quot;))

print(df)

FROM rocker/r-ver:3.4.0
LABEL maintainer=&quot;daniel&quot;
RUN export DEBIAN_FRONTEND=noninteractive; apt-get -y update \
 &amp;amp;&amp;amp; apt-get install -y gdal-bin \
    libgeos-dev \
    libproj-dev \
    libudunits2-dev \
    make \
    pandoc \
    pandoc-citeproc \
    wget
WORKDIR /tmp/gdal
RUN wget http://download.osgeo.org/gdal/2.1.3/gdal-2.1.3.tar.gz \
 &amp;amp;&amp;amp; tar zxf gdal-2.1.3.tar.gz \
 &amp;amp;&amp;amp; cd gdal-2.1.3 \
 &amp;amp;&amp;amp; ./configure \
 &amp;amp;&amp;amp; make \
 &amp;amp;&amp;amp; make install \
 &amp;amp;&amp;amp; ldconfig \
 &amp;amp;&amp;amp; rm -r /tmp/gdal
RUN [&quot;install2.r&quot;, &quot;-r &apos;https://cloud.r-project.org&apos;&quot;, &quot;fortunes&quot;, &quot;sp&quot;, &quot;gstat&quot;, &quot;knitr&quot;, &quot;Rcpp&quot;, &quot;magrittr&quot;, &quot;units&quot;, &quot;lattice&quot;, &quot;rjson&quot;, &quot;FNN&quot;, &quot;udunits2&quot;, &quot;stringr&quot;, &quot;xts&quot;, &quot;DBI&quot;, &quot;lambda.r&quot;, &quot;futile.logger&quot;, &quot;htmltools&quot;, &quot;intervals&quot;, &quot;yaml&quot;, &quot;rprojroot&quot;, &quot;digest&quot;, &quot;sf&quot;, &quot;futile.options&quot;, &quot;evaluate&quot;, &quot;rmarkdown&quot;, &quot;stringi&quot;, &quot;backports&quot;, &quot;spacetime&quot;, &quot;zoo&quot;]
WORKDIR /payload/
COPY [&quot;./payload.RData&quot;, &quot;./payload.RData&quot;]
CMD [&quot;R&quot;]
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2 id=&quot;4-image-metadata&quot;&gt;4. Image metadata&lt;/h2&gt;

&lt;p&gt;Metadata can be added to Docker images using &lt;a href=&quot;https://docs.docker.com/engine/reference/builder/#label&quot;&gt;Label
instructions&lt;/a&gt;.
Label instructions are key-value pairs of arbitrary content. A dublicate
key overwrites existing ones. Although it is up to the user how many
labels are created, it is recommended to bundle them into one Label
instruction in the Dockerfile. Each use of the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;Label()&lt;/code&gt; function
creates a seperate instruction in the Dockerfile.&lt;/p&gt;

&lt;p&gt;As shown in section 2, the maintainer label is set by default to the top
as the dockerfile and contains the username of the current host system.
The maintainer can be changed with the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;maintainer&lt;/code&gt; argument of
&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;dockerfile()&lt;/code&gt;:&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;labeled_dockerfile &amp;lt;- dockerfile(from = clean_session(), maintainer = &quot;Jon_Doe@example.com&quot;)
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Labels can be applied to the existing Dockerfile object using the
&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;addInstructions()&lt;/code&gt; function, which adds any newly created instructions
to the end of the Dockerfile but before the CMD statement. The &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;Label()&lt;/code&gt;
constructor can be used for creating labels of arbitrary content and
works similar to creating named lists in R.&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;# A simple label that occupies one line:
label1 &amp;lt;- Label(key1 = &quot;this&quot;, key2 = &quot;that&quot;, otherKey = &quot;content&quot;)
addInstruction(labeled_dockerfile) &amp;lt;- label1

#label with fixed namespace for all keys
label2 &amp;lt;- Label(&quot;name&quot;=&quot;A name&quot;, &quot;description&quot; = &quot;A description&quot;, label_ns = &quot;my.label.ns.&quot;)

# A multiline label with one key/value pair per line
label3 &amp;lt;- Label(&quot;info.o2r.name&quot; = &quot;myProject_ImageName&quot;, &quot;org.label-schema.name&quot;=&quot;ImageName&quot;, 
                &quot;yet.another_labelname&quot;=&quot;true&quot;, multi_line = TRUE)
addInstruction(labeled_dockerfile) &amp;lt;- list(label2, label3)
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Metadata according to the &lt;a href=&quot;http://label-schema.org/rc1/&quot;&gt;Label Schema&lt;/a&gt;
conventions can be created with a function constructed by the helper
factory &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;LabelSchemaFactory()&lt;/code&gt;.&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;Label_LabelSchema &amp;lt;- LabelSchemaFactory()
label &amp;lt;- Label_LabelSchema(name = &quot;ImageName&quot;, description = &quot;Description of the image&quot;, build_date = Sys.time())
addInstruction(labeled_dockerfile) &amp;lt;- label
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;You can also put session information, using either base R or &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;devtools&lt;/code&gt;,
into a label as plain text or as json:&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;addInstruction(labeled_dockerfile) &amp;lt;- Label_SessionInfo(session = clean_session())
addInstruction(labeled_dockerfile) &amp;lt;- Label_SessionInfo(session = devtools::session_info(), as_json = TRUE)
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;The resulting Dockerfile with all the labels:&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;print(labeled_dockerfile)

FROM rocker/r-ver:3.4.0
LABEL maintainer=&quot;Jon_Doe@example.com&quot;
WORKDIR /payload/
LABEL key1=&quot;this&quot; key2=&quot;that&quot; otherKey=&quot;content&quot;
LABEL my.label.ns.name=&quot;A name&quot; my.label.ns.description=&quot;A description&quot;
LABEL info.o2r.name=&quot;myProject_ImageName&quot; \
    org.label-schema.name=&quot;ImageName&quot; \
    yet.another_labelname=&quot;true&quot;
LABEL org.label-schema.schema-version=&quot;1.0.0-rc.1&quot; \
    org.label-schema.build-date=&quot;2017-05-30T14:49:39+0200&quot; \
    org.label-schema.name=&quot;ImageName&quot; \
    org.label-schema.description=&quot;Description of the image&quot;
LABEL R.session-info=&quot;R version 3.4.0 (2017-04-21)\nPlatform: x86_64-pc-linux-gnu (64-bit)\nRunning under: Ubuntu 16.04.2 LTS\n\nMatrix products: default\nBLAS: /usr/lib/libblas/libblas.so.3.6.0\nLAPACK: /usr/lib/lapack/liblapack.so.3.6.0\n\nlocale:\n [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              \n [3] LC_TIME=en_GB.UTF-8        LC_COLLATE=en_US.UTF-8    \n [5] LC_MONETARY=en_GB.UTF-8    LC_MESSAGES=en_US.UTF-8   \n [7] LC_PAPER=en_GB.UTF-8       LC_NAME=C                 \n [9] LC_ADDRESS=C               LC_TELEPHONE=C            \n[11] LC_MEASUREMENT=en_GB.UTF-8 LC_IDENTIFICATION=C       \n\nattached base packages:\n[1] stats     graphics  grDevices utils     datasets  methods   base     \n\nloaded via a namespace (and not attached):\n[1] compiler_3.4.0&quot;
LABEL R.session-info=&quot;{\&quot;platform\&quot;:{\&quot;version\&quot;:\&quot;R version 3.4.0 (2017-04-21)\&quot;,\&quot;system\&quot;:\&quot;x86_64, linux-gnu\&quot;,\&quot;ui\&quot;:\&quot;X11\&quot;,\&quot;language\&quot;:\&quot;en\&quot;,\&quot;collate\&quot;:\&quot;en_US.UTF-8\&quot;,\&quot;tz\&quot;:\&quot;Europe/Berlin\&quot;,\&quot;date\&quot;:\&quot;2017-05-30\&quot;},\&quot;packages\&quot;:{\&quot;package\&quot;:[\&quot;backports\&quot;,\&quot;base\&quot;,\&quot;compiler\&quot;,\&quot;containerit\&quot;,\&quot;datasets\&quot;,\&quot;DBI\&quot;,\&quot;devtools\&quot;,\&quot;digest\&quot;,\&quot;evaluate\&quot;,\&quot;FNN\&quot;,\&quot;fortunes\&quot;,\&quot;futile.logger\&quot;,\&quot;futile.options\&quot;,\&quot;graphics\&quot;,\&quot;grDevices\&quot;,\&quot;grid\&quot;,\&quot;gstat\&quot;,\&quot;htmltools\&quot;,\&quot;intervals\&quot;,\&quot;knitr\&quot;,\&quot;lambda.r\&quot;,\&quot;lattice\&quot;,\&quot;magrittr\&quot;,\&quot;memoise\&quot;,\&quot;methods\&quot;,\&quot;Rcpp\&quot;,\&quot;rjson\&quot;,\&quot;rmarkdown\&quot;,\&quot;rprojroot\&quot;,\&quot;sf\&quot;,\&quot;sp\&quot;,\&quot;spacetime\&quot;,\&quot;stats\&quot;,\&quot;stringi\&quot;,\&quot;stringr\&quot;,\&quot;tools\&quot;,\&quot;udunits2\&quot;,\&quot;units\&quot;,\&quot;utils\&quot;,\&quot;withr\&quot;,\&quot;xts\&quot;,\&quot;yaml\&quot;,\&quot;zoo\&quot;],\&quot;*\&quot;:[\&quot;\&quot;,\&quot;*\&quot;,\&quot;\&quot;,\&quot;*\&quot;,\&quot;*\&quot;,\&quot;\&quot;,\&quot;\&quot;,\&quot;\&quot;,\&quot;\&quot;,\&quot;\&quot;,\&quot;*\&quot;,\&quot;\&quot;,\&quot;\&quot;,\&quot;*\&quot;,\&quot;*\&quot;,\&quot;\&quot;,\&quot;*\&quot;,\&quot;\&quot;,\&quot;\&quot;,\&quot;*\&quot;,\&quot;\&quot;,\&quot;\&quot;,\&quot;\&quot;,\&quot;\&quot;,\&quot;*\&quot;,\&quot;\&quot;,\&quot;\&quot;,\&quot;\&quot;,\&quot;\&quot;,\&quot;\&quot;,\&quot;*\&quot;,\&quot;\&quot;,\&quot;*\&quot;,\&quot;\&quot;,\&quot;\&quot;,\&quot;\&quot;,\&quot;\&quot;,\&quot;\&quot;,\&quot;*\&quot;,\&quot;\&quot;,\&quot;\&quot;,\&quot;\&quot;,\&quot;\&quot;],\&quot;version\&quot;:[\&quot;1.0.5\&quot;,\&quot;3.4.0\&quot;,\&quot;3.4.0\&quot;,\&quot;0.2.0\&quot;,\&quot;3.4.0\&quot;,\&quot;0.6-1\&quot;,\&quot;1.13.1\&quot;,\&quot;0.6.12\&quot;,\&quot;0.10\&quot;,\&quot;1.1\&quot;,\&quot;1.5-4\&quot;,\&quot;1.4.3\&quot;,\&quot;1.0.0\&quot;,\&quot;3.4.0\&quot;,\&quot;3.4.0\&quot;,\&quot;3.4.0\&quot;,\&quot;1.1-5\&quot;,\&quot;0.3.6\&quot;,\&quot;0.15.1\&quot;,\&quot;1.16\&quot;,\&quot;1.1.9\&quot;,\&quot;0.20-35\&quot;,\&quot;1.5\&quot;,\&quot;1.1.0\&quot;,\&quot;3.4.0\&quot;,\&quot;0.12.11\&quot;,\&quot;0.2.15\&quot;,\&quot;1.5\&quot;,\&quot;1.2\&quot;,\&quot;0.4-3\&quot;,\&quot;1.2-4\&quot;,\&quot;1.2-0\&quot;,\&quot;3.4.0\&quot;,\&quot;1.1.5\&quot;,\&quot;1.2.0\&quot;,\&quot;3.4.0\&quot;,\&quot;0.13\&quot;,\&quot;0.4-4\&quot;,\&quot;3.4.0\&quot;,\&quot;1.0.2\&quot;,\&quot;0.9-7\&quot;,\&quot;2.1.14\&quot;,\&quot;1.8-0\&quot;],\&quot;date\&quot;:[\&quot;2017-01-18\&quot;,\&quot;2017-04-21\&quot;,\&quot;2017-04-21\&quot;,\&quot;2017-05-30\&quot;,\&quot;2017-04-21\&quot;,\&quot;2017-04-01\&quot;,\&quot;2017-05-13\&quot;,\&quot;2017-01-27\&quot;,\&quot;2016-10-11\&quot;,\&quot;2013-07-31\&quot;,\&quot;2016-12-29\&quot;,\&quot;2016-07-10\&quot;,\&quot;2010-04-06\&quot;,\&quot;2017-04-21\&quot;,\&quot;2017-04-21\&quot;,\&quot;2017-04-21\&quot;,\&quot;2017-03-12\&quot;,\&quot;2017-04-28\&quot;,\&quot;2015-08-27\&quot;,\&quot;2017-05-18\&quot;,\&quot;2016-07-10\&quot;,\&quot;2017-03-25\&quot;,\&quot;2014-11-22\&quot;,\&quot;2017-04-21\&quot;,\&quot;2017-04-21\&quot;,\&quot;2017-05-22\&quot;,\&quot;2014-11-03\&quot;,\&quot;2017-04-26\&quot;,\&quot;2017-01-16\&quot;,\&quot;2017-05-15\&quot;,\&quot;2016-12-22\&quot;,\&quot;2016-09-03\&quot;,\&quot;2017-04-21\&quot;,\&quot;2017-04-07\&quot;,\&quot;2017-02-18\&quot;,\&quot;2017-04-21\&quot;,\&quot;2016-11-17\&quot;,\&quot;2017-04-20\&quot;,\&quot;2017-04-21\&quot;,\&quot;2016-06-20\&quot;,\&quot;2014-01-02\&quot;,\&quot;2016-11-12\&quot;,\&quot;2017-04-12\&quot;],\&quot;source\&quot;:[\&quot;CRAN (R 3.4.0)\&quot;,\&quot;local\&quot;,\&quot;local\&quot;,\&quot;local\&quot;,\&quot;local\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;local\&quot;,\&quot;local\&quot;,\&quot;local\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;cran (@1.16)\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;CRAN (R 3.3.3)\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;local\&quot;,\&quot;cran (@0.12.11)\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;local\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;local\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;local\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;CRAN (R 3.4.0)\&quot;,\&quot;CRAN (R 3.4.0)\&quot;]}}&quot;
CMD [&quot;R&quot;]
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2 id=&quot;5-further-customization&quot;&gt;5. Further customization&lt;/h2&gt;

&lt;p&gt;The &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;dockerfile()&lt;/code&gt; function allows further customization regarding the R
version or the used base image (cf. Rocker stack). Note that while
choosing an R version for the Dockerfile explicitly is possible, the
session to generate the required information (i.e. which packages are
attached etc.) is still running the R version of the generating machine.&lt;/p&gt;

&lt;p&gt;The following examples show usage of these options and the respective
&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;FROM&lt;/code&gt; statements in the Dockerfile.&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;df_custom &amp;lt;- dockerfile(from = NULL, r_version = &quot;3.1.0&quot;, silent = TRUE)
print(df_custom@image)

FROM rocker/r-ver:3.1.0

df_custom &amp;lt;- dockerfile(from = NULL, image = &quot;rocker/geospatial&quot;, silent = TRUE)
print(df_custom@image)

FROM rocker/geospatial

df_custom &amp;lt;- dockerfile(from = NULL, image = &quot;rocker/verse:3.0.0&quot;, silent = TRUE)@image
print(df_custom@image)

[1] &quot;rocker/verse&quot;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2 id=&quot;6-cli&quot;&gt;6. CLI&lt;/h2&gt;

&lt;p&gt;A command line interface to the package functions is also available for
Linux based on &lt;a href=&quot;https://github.com/docopt/docopt.R&quot;&gt;docopt.R&lt;/a&gt;. This
allows integration into workflows and tools written in other programming
languages than R.&lt;/p&gt;

&lt;p&gt;You can make the command &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;containerit&lt;/code&gt; available on your maching by
linking the R script file delivered with the package as follows:&lt;/p&gt;

&lt;p&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;ln -s $(Rscript -e &quot;cat(system.file(\&quot;cli/container_it.R\&quot;, package=\&quot;containerit\&quot;))&quot;) /usr/local/bin/containerit&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;CLI Examples:&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;  containerit --help
  
  # runs the first R markdown or R script file locally 
  # prints Dockerfile without writing a file
  containerit dir -p --no-write  
  
  # Packages R-script 
  # saves a workspace image (-i parameter)
  # Writes Dockerfile (overwrite with -f)
  # execute the script on start-up
  containerit file -ifp --cmd-R-file path/example.R

  # Creates an empty R session with the given R commands
  # Set R version of the container to 3.3.0
  containerit session -p -e &quot;library(sp)&quot; -e &quot;demo(meuse, ask=FALSE)&quot; --r_version 3.3.0
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2 id=&quot;7-challenges&quot;&gt;7. Challenges&lt;/h2&gt;

&lt;p&gt;We encountered several challenges during &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;containerit&lt;/code&gt;’s development.
First and foremost, a well known limitation is that R packages don’t
define system dependencies and do not provide explicit versions for R
package dependencies. The &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;sysreqs&lt;/code&gt; package is a promising approach
towards handling system requirements, but so far lists package names but
does not provide version information. The
&lt;a href=&quot;https://github.com/rstudio/shinyapps-package-dependencies&quot;&gt;shinyapps-package-dependencies&lt;/a&gt;
demonstrate a (currently system dependent) alternative. The high value
of R might well lie in the fact that “packages currently on CRAN” should
work well with each other.&lt;/p&gt;

&lt;p&gt;An unmet challenge so far is the installation of specific versions of
external libraries (see
&lt;a href=&quot;https://github.com/o2r-project/containerit/issues/46&quot;&gt;issue&lt;/a&gt;). A
package like &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;sf&lt;/code&gt; relies on well-tested and powerful system libraries,
see &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;sf::sf_extSoftVersion()&lt;/code&gt;, which ideally should be matched in the
created container.&lt;/p&gt;

&lt;p&gt;And of course users may do things that &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;containerit&lt;/code&gt; cannot capture from
the session state “after the analysis is completed”, such as detaching
packages or removing relevant files, and unknown side-effects might
occur.&lt;/p&gt;

&lt;p&gt;All software is presumed to be installed and run on the host system.
Although it is possible to use deviating versions of R or even create
Dockerfiles using sessionInfo-objects created on a different host, this
may lead to unexpected errors because the setup cannot be tested
locally.&lt;/p&gt;

&lt;h2 id=&quot;8-conclusions-and-future-work&quot;&gt;8. Conclusions and future work&lt;/h2&gt;

&lt;p&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;containerit&lt;/code&gt; alows to create and costumize Dockerfiles with minimal
effort, which are suitable for packaging R analyses in the persistant
runtime environment of a software container. So far, we were able to
reproduce complete R sessions regarding loaded and attached packages and
mitigate some challenges towards reproducible computational research.&lt;/p&gt;

&lt;p&gt;Although we are able to package different versions of R, we still do not
fully support the installation of specific versions of R packages and
external software libraries, which R itself does not support. This
should be tested in the future by evaluating version-stable package
repositories like MRAN and GRAN or utility packages such as packrat –
see the &lt;a href=&quot;https://github.com/o2r-project/containerit/issues/new&quot;&gt;GitHub
issues&lt;/a&gt; for the
status of these plans or provide your own ideas there.&lt;/p&gt;

&lt;p&gt;Related to installing specific versions is support for other package
repositories, such as Bioconductor, git, BitBucket, or even local files.
For now, it is recommended that users have all software up-to-date when
building a software container, as the latest version are installed from
CRAN during the image build, to have matching package versions between
the creation runtime environment and the container. All Dockerfiles and
instructions are adjusted to the Rocker image stack and assume a
Debian/Linux operating system. As we are not yet supporting the build of
Docker images from scratch, we are restricted to this setup.&lt;/p&gt;

&lt;p&gt;The package is a first prototype available via GitHub. While a
publication on CRAN is a goal, it should be preceded by feedback from
the user community and ideally be accompanied by related packages, such
as &lt;a href=&quot;https://github.com/wch/harbor/issues/5&quot;&gt;harbor&lt;/a&gt;, being available on
CRAN, too. The prototype of &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;containerit&lt;/code&gt; was developed and tested only
on Ubuntu/Linux, which should be extended before releasing a stable
version on CRAN.&lt;/p&gt;

&lt;p&gt;As part of the o2r project, it is planned to integrate &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;containerit&lt;/code&gt; in
a &lt;a href=&quot;https://o2r.info/architecture&quot;&gt;web service&lt;/a&gt; for creating archivable
research in form of &lt;a href=&quot;https://doi.org/10.1045/january2017-nuest&quot;&gt;Executable Research Compendia
(ERC)&lt;/a&gt;. Making &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;containerit&lt;/code&gt;
itself easier to use for end-users is a secondary but worthwhile goal, for example by
building a graphical user interface for metadata creation. Country
locales are also not supported yet. We may want to support other
container OS (e.g. windows container or other Linux distributions) or
even containerization solutions such as
&lt;a href=&quot;http://singularity.lbl.gov/&quot;&gt;Singularity&lt;/a&gt; or the &lt;a href=&quot;https://www.opencontainers.org/&quot;&gt;Open Container
Initiative&lt;/a&gt;’s (OCI) &lt;a href=&quot;https://github.com/opencontainers/image-spec&quot;&gt;Image
Format&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Feedback and contributions are highly welcome &lt;a href=&quot;https://github.com/o2r-project/containerit/issues&quot;&gt;on
GitHub&lt;/a&gt; or
&lt;a href=&quot;https://twitter.com/o2r_project&quot;&gt;o2r_project&lt;/a&gt; on Twitter.&lt;/p&gt;

&lt;h2 id=&quot;metadata&quot;&gt;Metadata&lt;/h2&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;sessionInfo()

## R version 3.4.0 (2017-04-21)
## Platform: x86_64-pc-linux-gnu (64-bit)
## Running under: Ubuntu 16.04.2 LTS
## 
## Matrix products: default
## BLAS: /usr/lib/libblas/libblas.so.3.6.0
## LAPACK: /usr/lib/lapack/liblapack.so.3.6.0
## 
## locale:
##  [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
##  [3] LC_TIME=en_GB.UTF-8        LC_COLLATE=en_US.UTF-8    
##  [5] LC_MONETARY=en_GB.UTF-8    LC_MESSAGES=en_US.UTF-8   
##  [7] LC_PAPER=en_GB.UTF-8       LC_NAME=C                 
##  [9] LC_ADDRESS=C               LC_TELEPHONE=C            
## [11] LC_MEASUREMENT=en_GB.UTF-8 LC_IDENTIFICATION=C       
## 
## attached base packages:
## [1] stats     graphics  grDevices utils     datasets  methods   base     
## 
## other attached packages:
## [1] fortunes_1.5-4    sp_1.2-4          gstat_1.1-5       containerit_0.2.0
## [5] knitr_1.16       
## 
## loaded via a namespace (and not attached):
##  [1] Rcpp_0.12.11         rstudioapi_0.6       magrittr_1.5        
##  [4] devtools_1.13.1      units_0.4-4          lattice_0.20-35     
##  [7] rjson_0.2.15         FNN_1.1              udunits2_0.13       
## [10] stringr_1.2.0        tools_3.4.0          xts_0.9-7           
## [13] grid_3.4.0           DBI_0.6-1            withr_1.0.2         
## [16] lambda.r_1.1.9       futile.logger_1.4.3  htmltools_0.3.6     
## [19] intervals_0.15.1     yaml_2.1.14          rprojroot_1.2       
## [22] digest_0.6.12        sf_0.4-3             futile.options_1.0.0
## [25] memoise_1.1.0        evaluate_0.10        rmarkdown_1.5       
## [28] stringi_1.1.5        compiler_3.4.0       backports_1.0.5     
## [31] spacetime_1.2-0      zoo_1.8-0
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
</content>
 </entry>
 
 <entry>
   <title>State of the project and next steps</title>
   <link href="https://o2r.info/2017/05/17/2nd-workshop-external-partners/"/>
   <updated>2017-05-17T00:00:00+00:00</updated>
   <id>https://o2r.info/2017/05/17/2nd-workshop-external-partners</id>
   <content type="html">&lt;p&gt;Yesterday the &lt;a href=&quot;/about&quot;&gt;o2r team&lt;/a&gt; met &lt;a href=&quot;/2016/06/07/workshop-external-partners/&quot;&gt;for the second time&lt;/a&gt; with a group of experts to request feedback on the state of the project.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2017-05_o2r-workshop.jpg&quot; alt=&quot;workshop participants&quot; title=&quot;o2r external partner workshop participants. image license: CC BY-NC-ND&quot; width=&quot;500&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Image is licensed under a &lt;a href=&quot;https://creativecommons.org/licenses/by-nc-nd/4.0/&quot; title=&quot;Creative Commons Attribution Non-Commercial No-Derivatives 4.0 International License&quot;&gt;CC BY-NC-ND 4.0 International&lt;/a&gt; license.&lt;/p&gt;

&lt;p&gt;Thanks to the valuable questions and comments by our external partners, the project tasks were assessed and refocussed. On top of it, we agreed to collaborate even further and sketched first ideas for putting o2r’s prototypes into real-world settings.&lt;/p&gt;

&lt;p&gt;This workshop &lt;!--more--&gt;was only possible thanks to our partner’s commitment, enthusiasm, and continued interest in the project. Our heartfelt thanks go to&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://twitter.com/xeniavanedig&quot;&gt;Xenia van Edig&lt;/a&gt;, Business Development Manager, &lt;a href=&quot;http://www.copernicus.org/about_us.html&quot;&gt;Copernicus Publications&lt;/a&gt;,&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://www.linkedin.com/in/maarten-cleeren-3bb39032/&quot;&gt;Maarten Cleeren&lt;/a&gt;, Director of Product Management, Enriched Content at &lt;a href=&quot;https://www.elsevier.com/&quot;&gt;Elsevier&lt;/a&gt;, and&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://twitter.com/LinkedScience&quot;&gt;Tomi Kauppinen&lt;/a&gt; from the &lt;a href=&quot;http://cs.aalto.fi/en/&quot;&gt;Department of Computer Science at Aalto University&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;As last year, the full day meeting took place in the countryside at the lovely Wersehaus. Unlike last year, we skipped lightning talks and profited from the existing understanding of the project. Instead we dove right into the project’s significant progress: survey results which motivated our design decisions, a critical view on the project schedule and completed/open tasks, the &lt;a href=&quot;https://o2r.info/erc-spec&quot;&gt;specification for executable research compendia (ERC)&lt;/a&gt;, our &lt;a href=&quot;https://o2r.info/architecture/&quot;&gt;architecture&lt;/a&gt;, the &lt;a href=&quot;https://o2r.info/api/&quot;&gt;API&lt;/a&gt;, and most importantly the Open Source &lt;a href=&quot;https://github.com/o2r-project&quot;&gt;reference implementation&lt;/a&gt; and its integration with &lt;a href=&quot;http://sciebo.de/&quot;&gt;Sciebo&lt;/a&gt; and &lt;a href=&quot;http://zenodo.org/&quot;&gt;Zenodo&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Just as intented these topics were merely started as presentations and led to an active discussion. They were evaluated and connected to the partners perspectives, not the least by putting more ambitious goals (&lt;em&gt;“let’s completely change the way scholarly publishing works!”&lt;/em&gt;) into perspective and defining concrete steps ahead to (i) spread understanding of reproducible research, and (ii) show the potential for enhancements by computational reproducibility with ERC. Many valuable insights will keep the o2r team busy in the following weeks.&lt;/p&gt;

&lt;p&gt;In the &lt;a href=&quot;/2016/06/07/workshop-external-partners/&quot;&gt;blog post of the first workshop&lt;/a&gt;, we included some statements on &lt;em&gt;what will we understand in two years time that we do not know now?&lt;/em&gt;, and here is the original (left) and updated version:&lt;/p&gt;

&lt;div style=&quot;font-size: 90%&quot;&gt;
&lt;table&gt;
  &lt;tr&gt;
    &lt;td&gt;&lt;i&gt;We have a good understanding of how far the process of creating research compendia can be automated, and what efforts remain for authors or preservationists that must be counterbalanced with incentives.&lt;/i&gt;&lt;/td&gt;
    &lt;td&gt;Our understanding is consolidated in specifications, in well-defined user workflows, and is demonstrated by a reference implementation. On the topic of incentives, the need for a cultural change (_&quot;it takes a generation&quot;_) was re-stated at the workshop but we can better communicate o2r&apos;s actual contributions.&lt;/td&gt;
  &lt;/tr&gt;
  &lt;tr&gt;
    &lt;td&gt;&lt;i&gt;We know the potential of user interface bindings as the connecting entity of research compendia.&lt;/i&gt;&lt;/td&gt;
    &lt;td&gt;By conducting a survey and interviews with geoscientists, we identified promising use cases for UI bindings. e.g. change an analysis variable and update a diagram. The conceptual description (an ontology) underlying these use cases is in progress. It is an open question if we can realise a generic solution to generate UI bindings automatically, and how much effort by the author is required.&lt;/td&gt;
  &lt;/tr&gt;
  &lt;tr&gt;
    &lt;td&gt;&lt;i&gt;We show the improvements in discovery and understanding of research when all aspects of research are explicitly linked in a meaningful way.&lt;/i&gt;&lt;/td&gt;
    &lt;td&gt;Thanks to feedback by last year&apos;s workshop and continued interaction with other researchers at conferences and workshops, we decided to concentrate on these challenging topics first: easily packaging research into ERC, integrating with data repositories, and interacting with ERC. Therefore discovery is a topic for the second half of 2017, including a recently started master thesis.&lt;/td&gt;
  &lt;/tr&gt;
  &lt;tr&gt;
    &lt;td&gt;&lt;i&gt;We get to know the common language as well as points of contact for the involved parties as we create a closer connection between research, preservation, and publication communities.&lt;/i&gt;&lt;/td&gt;
    &lt;td&gt;Success! The prototypes are received well by all of the parties. They provide unifying concepts and workflows and are even seen as ready for pilot studies.&lt;/td&gt;
  &lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;

&lt;p&gt;We hope to have another inspirational meeting like this in 2018! To keep in touch, follow us on &lt;a href=&quot;https://twitter.com/o2r_project&quot;&gt;Twitter&lt;/a&gt; or &lt;a href=&quot;https://github.com/o2r-project&quot;&gt;GitHub&lt;/a&gt;.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Opening Reproducible Research at AGILE 2017 conference in Wageningen</title>
   <link href="https://o2r.info/2017/05/10/o2r-at-AGILE/"/>
   <updated>2017-05-10T00:00:00+00:00</updated>
   <id>https://o2r.info/2017/05/10/o2r-at-AGILE</id>
   <content type="html">&lt;p&gt;This week o2r participates in another conference, which is partly a repetition but also a contrast to the last one:&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Again&lt;/em&gt;, o2r team members (&lt;a href=&quot;https://orcid.org/0000-0001-6651-0976&quot;&gt;Markus&lt;/a&gt; and &lt;a href=&quot;https://orcid.org/0000-0002-0024-5046&quot;&gt;Daniel&lt;/a&gt;) are fortunate to co-organize a workshop about reproducible research: &lt;a href=&quot;/agile-2017/&quot;&gt;“Reproducible Geosciences Discussion Forum”&lt;/a&gt; at the &lt;a href=&quot;https://agile-online.org/index.php/home-2017&quot;&gt;20th AGILE International Conference on Geographic Information Science&lt;/a&gt; in Wageningen, The Netherlands, took place yesterday. &lt;strong&gt;Read the short recap on the &lt;a href=&quot;/agile-2017/&quot;&gt;workshop website&lt;/a&gt;&lt;/strong&gt;.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;en&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Thx! Fun, educational &amp;amp; productive workshop today on &lt;a href=&quot;https://twitter.com/hashtag/reproducible?src=hash&quot;&gt;#reproducible&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/geosciences?src=hash&quot;&gt;#geosciences&lt;/a&gt; at &lt;a href=&quot;https://twitter.com/hashtag/agilewag2017?src=hash&quot;&gt;#agilewag2017&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/agile2017nl?src=hash&quot;&gt;#agile2017nl&lt;/a&gt; Report soon via &lt;a href=&quot;https://twitter.com/o2r_project&quot;&gt;@o2r_project&lt;/a&gt; &lt;a href=&quot;https://t.co/MjrWPQyoQ2&quot;&gt;pic.twitter.com/MjrWPQyoQ2&lt;/a&gt;&lt;/p&gt;&amp;mdash; Daniel Nüst (@nordholmen) &lt;a href=&quot;https://twitter.com/nordholmen/status/861966842373472256&quot;&gt;May 9, 2017&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;//platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;Daniel will also present&lt;!--more--&gt; a poster on o2r titled &lt;em&gt;“An Architecture for Reproducible Computational Geosciences”&lt;/em&gt;. &lt;strong&gt;Please visit the AGILE 2017 poster session tomorrow at 15:00&lt;/strong&gt; and discuss with us how our &lt;a href=&quot;https://doi.org/10.1045/january2017-nuest&quot;&gt;ERC&lt;/a&gt; fits into the geosciences landscape.&lt;/p&gt;

&lt;p&gt;&lt;span style=&quot;color: red; font-wight: bold;&quot;&gt;Update:&lt;/span&gt; Download the &lt;a href=&quot;https://agile-online.org/images/conference_2017/Proceedings2017/posters/108_PosterAbstract_in_PDF.pdf&quot;&gt;abstract&lt;/a&gt; and the &lt;a href=&quot;https://doi.org/10.5281/zenodo.1478542&quot;&gt;poster&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;https://agile-online.org/images/stories/banner/AGILE2017-Wageningen.png&quot; alt=&quot;agile conference banner&quot; width=&quot;500&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Image courtesy of AGILE website.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Completely different&lt;/em&gt; is the scale of this weeks conference: unlike &lt;a href=&quot;/2017/05/03/2017_o2r-at-EGU/&quot;&gt;EGU general assembly&lt;/a&gt;, AGILE is a small conference with an informal feeling. While the attendees represent diverse topics, the common connection to GI Science is strong and while the programme is packed at times (5 parallel tracks - hard to choose!), there is ample room to focus, for example in the single track keynote or poster sessions, but also to chat and learn, which we hope to do by spreading questions on reproducibility of the works presented at AGILE.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Opening Reproducible Research at EGU General Assembly 2017</title>
   <link href="https://o2r.info/2017/05/04/o2r-at-EGU/"/>
   <updated>2017-05-04T00:00:00+00:00</updated>
   <id>https://o2r.info/2017/05/04/o2r-at-EGU</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;http://blogs.egu.eu/geolog/files/2017/04/EGU-17-700x400.jpg&quot; alt=&quot;EGU logo&quot; title=&quot;European Geophysical Union General Assembly 2017&quot; width=&quot;300&quot; class=&quot;img rightfloat&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Last week the largest European geosciences conference of the year took place in Vienna: the &lt;a href=&quot;http://www.egu2017.eu/&quot; title=&quot;EGU General Assembly 2017 Website&quot;&gt;European Geophysical Union General Assembly 2017&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;o2r took part by co-organising a &lt;a href=&quot;/2017/05/03/egu-short-course-recap/&quot;&gt;workshop on reproducible research&lt;/a&gt; and co-convening the session &lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2017/session/23924&quot; title=&quot;poster session description&quot;&gt;&lt;em&gt;IE2.4/ESSI3.10 Open Data, Reproducible Research, and Open Science&lt;/em&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;o2r team member &lt;a href=&quot;https://orcid.org/0000-0002-0024-5046&quot;&gt;Daniel Nüst&lt;/a&gt; presented the abstract &lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2017/EGU2017-7215.pdf&quot; title=&quot;abstract PDF download&quot;&gt;&lt;em&gt;“Executable research compendia in geoscience research infrastructures”&lt;/em&gt;&lt;/a&gt; (&lt;a href=&quot;http://presentations.copernicus.org/EGU2017-7215_presentation.pdf&quot; title=&quot;poster PDF download&quot;&gt;download poster&lt;/a&gt;) and supported &lt;a href=&quot;https://orcid.org/0000-0001-5281-3896&quot;&gt;Marius Appel&lt;/a&gt; and &lt;a href=&quot;http://orcid.org/0000-0001-8049-7069&quot;&gt;Edzer Pebesma&lt;/a&gt; in their work on &lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2017/EGU2017-8525.pdf&quot; title=&quot;abstract PDF download&quot;&gt;&lt;em&gt;“Reproducible Earth observation analytics: challenges, ideas, and a study case on containerized land use change detection”&lt;/em&gt;&lt;/a&gt; (&lt;a href=&quot;http://presentations.copernicus.org/EGU2017-8525_presentation.pdf&quot; title=&quot;poster PDF download&quot;&gt;download poster&lt;/a&gt;) in the ESSI3.10’s poster session.&lt;/p&gt;

&lt;p&gt;It was a great experience to&lt;!--more--&gt;meet fellow scientists interested in, and worried about, reproducibility of scholarly works.
We got useful feedback on our practical work and are encouraged again to continue spreading the word on the general topic of reproducibility alongside our research.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;en&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Poster in EGU17 final session is ready for business. Come to X4.123 at 17:00 and talk &lt;a href=&quot;https://twitter.com/hashtag/openscience?src=hash&quot;&gt;#openscience&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/reproduciblersearch?src=hash&quot;&gt;#reproduciblersearch&lt;/a&gt; Survey going well! &lt;a href=&quot;https://t.co/at2eem44Md&quot;&gt;pic.twitter.com/at2eem44Md&lt;/a&gt;&lt;/p&gt;&amp;mdash; o2r (@o2r_project) &lt;a href=&quot;https://twitter.com/o2r_project/status/857962352196681728&quot;&gt;April 28, 2017&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;//platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

</content>
 </entry>
 
 <entry>
   <title>Reproducible Research at EGU GA - A short course recap</title>
   <link href="https://o2r.info/2017/05/03/egu-short-course-recap/"/>
   <updated>2017-05-03T00:00:00+00:00</updated>
   <id>https://o2r.info/2017/05/03/egu-short-course-recap</id>
   <content type="html">&lt;p&gt;At last week’s &lt;a href=&quot;http://egu2017.eu/&quot;&gt;EGU general assembly&lt;/a&gt; members of the &lt;a href=&quot;https://o2r.info&quot;&gt;o2r&lt;/a&gt; and &lt;a href=&quot;https://reprozip.org/&quot;&gt;ReproZip&lt;/a&gt; projects organized the short course &lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2017/session/25726&quot;&gt;&lt;em&gt;“Reproducible computational research in the publication cycle”&lt;/em&gt;&lt;/a&gt;. This post is a recap of the course by &lt;a href=&quot;http://danielnuest.de/&quot;&gt;Daniel Nüst&lt;/a&gt;, &lt;a href=&quot;https://vickysteeves.com/&quot;&gt;Vicky Steeves&lt;/a&gt;, and &lt;a href=&quot;https://remirampin.com/&quot;&gt;Rémi Rampin&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2017-05_egu-01.jpg&quot; alt=&quot;short course room photo&quot; title=&quot;Ready to start - the short course room filling up&quot; width=&quot;300&quot; class=&quot;img rightfloat&quot; /&gt;&lt;/p&gt;

&lt;p&gt;All &lt;strong&gt;materials for the course are published in an Open Science Framework repository at &lt;a href=&quot;https://osf.io/umy6g/&quot;&gt;https://osf.io/umy6g/&lt;/a&gt;&lt;/strong&gt; and you can learn about the motivation for the course in the &lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2017/session/25726&quot;&gt;course page at EGU&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The short was divided into two parts:&lt;!--more--&gt; a practical introduction to selected tools supporting computational reproducibility, and talks by stakeholders in the scientific publication process followed by a lively panel discussion.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;In the first part&lt;/strong&gt;, Daniel and Vicky began with sharing some literature on reproducible research (RR) with the roughly 30 participants. After all, the participants should take home something useful, so a reading list seems reasonable for RR newcomers but also for researchers writing about the reproducibility aspects in upcoming papers.&lt;/p&gt;

&lt;p&gt;Then Daniel fired up a console and took a deep dive into &lt;strong&gt;using containers to encapsulate environments for reproducible computational research&lt;/strong&gt;. He started with a very quick introduction to Docker and then demonstrated some containers useful to researchers, i.e. Jupyter Notebook and RStudio.&lt;/p&gt;

&lt;p&gt;The material presented by Daniel is a &lt;a href=&quot;https://nuest.github.io/docker-reproducible-research/&quot;&gt;starting point for an Author Carpentry lesson&lt;/a&gt;, which is currently &lt;a href=&quot;https://github.com/nuest/docker-reproducible-research&quot;&gt;developed on GitHub&lt;/a&gt;, so he highly appreciates any feedback, especially by shourt course attendees. We were surprised to learn a good portion of the participants had already some experience with Docker. But even better was realizing a few actually hacked along as Daniel raced through command-line interface examples! This “raw” approach to packaging research in containers was contrasted in the second section.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;en&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;.&lt;a href=&quot;https://twitter.com/nordholmen&quot;&gt;@nordholmen&lt;/a&gt; forked author carpentry to make a lesson for us today! About to look at rstudio &amp;amp; jupyter notebooks w/ Docker!  &lt;a href=&quot;https://twitter.com/hashtag/egu2017?src=hash&quot;&gt;#egu2017&lt;/a&gt; &lt;a href=&quot;https://t.co/ekgYuJPkS6&quot;&gt;pic.twitter.com/ekgYuJPkS6&lt;/a&gt;&lt;/p&gt;&amp;mdash; Vicky Steeves (@VickySteeves) &lt;a href=&quot;https://twitter.com/VickySteeves/status/856475174165721088&quot;&gt;April 24, 2017&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;//platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;Under the title &lt;strong&gt;“ReproZip for geospatial analyses”&lt;/strong&gt;, Vicky and Rémi showcased &lt;a href=&quot;https://reprozip.org&quot;&gt;ReproZip&lt;/a&gt;, a tool for automatically tracing and packaging scientific analyses for easily achieved computational reproducibility. The resulting file is a ReproZip package (&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;.rpz&lt;/code&gt;), which can be easily shared due to it’s small size, and contains everything necessary to reproduce research (input files, environmental information etc.) across different operating systems. They demonstrated their various unpackers and showed how these &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;.rpz&lt;/code&gt; files can be used for reproducibility and archiving. They also demoed they brand new user interface for the first time in Europe.&lt;/p&gt;

&lt;p&gt;The materials presented by Vicky and Rémi are also available on both the Open Science Framework &lt;a href=&quot;https://osf.io/umy6g/&quot;&gt;here&lt;/a&gt; and on the &lt;a href=&quot;https://examples.reprozip.org&quot;&gt;ReproZip examples website&lt;/a&gt;.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-conversation=&quot;none&quot; data-lang=&quot;en&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;&lt;a href=&quot;https://twitter.com/edzerpebesma&quot;&gt;@edzerpebesma&lt;/a&gt; &lt;a href=&quot;https://twitter.com/benmarwick&quot;&gt;@benmarwick&lt;/a&gt; &lt;a href=&quot;https://twitter.com/o2r_project&quot;&gt;@o2r_project&lt;/a&gt; And &lt;a href=&quot;https://twitter.com/VickySteeves&quot;&gt;@VickySteeves&lt;/a&gt;  and  &lt;a href=&quot;https://twitter.com/remram44&quot;&gt;@remram44&lt;/a&gt; showing &lt;a href=&quot;https://twitter.com/hashtag/reprozip?src=hash&quot;&gt;#reprozip&lt;/a&gt; &lt;a href=&quot;https://t.co/4hxpEsmqPN&quot;&gt;pic.twitter.com/4hxpEsmqPN&lt;/a&gt;&lt;/p&gt;&amp;mdash; Daniel Nüst (@nordholmen) &lt;a href=&quot;https://twitter.com/nordholmen/status/856488328190930944&quot;&gt;April 24, 2017&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;//platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;The practical demonstrations paved the way for the &lt;strong&gt;second part&lt;/strong&gt; of the short course, which was more abstract yet proofed to excellently demonstrate the breadth of reproducible research. Selected speakers provided their perspectives on the topic of reproducing scientific papers in the broader context of the scientific publication cycle. In short talks they wore a specific role of the scholarly publication process and shared their experience as as researcher, infrastructure provider, publisher, reviewer, librarian, or editor. The speakers:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://orcid.org/0000-0001-8049-7069&quot;&gt;Edzer Pebesma&lt;/a&gt; talked about his experiences as journal editor for &lt;a href=&quot;http://jstatsoft.org/&quot;&gt;JStatSoft&lt;/a&gt; as well as &lt;a href=&quot;http://www.journals.elsevier.com/computers-and-geosciences/&quot;&gt;Computers &amp;amp; Geosciences&lt;/a&gt;, and his original motivation to enter the area of reproducible research with &lt;a href=&quot;http://pebesma.staff.ifgi.de/epic.pdf&quot;&gt;his prize-winning “one-click reproduce” concept&lt;/a&gt; and initiator of &lt;a href=&quot;https://o2r.info&quot;&gt;o2r&lt;/a&gt;: annoyance by not being able to share the full integrated material of his works easily.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://www.dkrz.de/about/Organisation/mitarbeiter/TobiasWeigel&quot;&gt;Tobias Weigel&lt;/a&gt; from the &lt;a href=&quot;https://www.dkrz.de/dkrz-en?set_language=en&amp;amp;cl=en&quot;&gt;german national climate computing center&lt;/a&gt; introduced the challenges and limitations for a supercomputer facility which provides crucial resources for reproducibility.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://orcid.org/0000-0001-9545-9110&quot;&gt;David Ham&lt;/a&gt; shared the priorities of the &lt;a href=&quot;http://www.geoscientific-model-development.net/&quot;&gt;journal Geoscientific Model Development (GMD)&lt;/a&gt; where he is editor, when it comes to reproducibility and the issues they face. Proper provenance and citations are examples for the former, the ephemerality of code and data for the latter.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://orcid.org/0000-0003-2510-0529&quot;&gt;Xenia van Edig&lt;/a&gt; lead us through the stages of Open Access that &lt;a href=&quot;http://publications.copernicus.org/&quot;&gt;Copernicus&lt;/a&gt; went and is going through as a publisher: from public data (1.0) via interactive articles and public peer review (2.0) to the future of open science and executable papers (3.0)&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://vickysteeves.com/&quot;&gt;Vicky Steeves&lt;/a&gt; advertised the expertise of librarians worldwide in supporting research in all aspects, including reproducibility, writing grants, or data management plans, but also pointed out the necessity to support scientists with proper tools and teach the required skills.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://danielnuest.de/&quot;&gt;Daniel Nüst&lt;/a&gt; (research software engineer perspective)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2017-05_egu-01.jpg&quot; alt=&quot;short course discussion panel&quot; title=&quot;panel discussion photo&quot; width=&quot;300&quot; class=&quot;img rightfloat&quot; /&gt;&lt;/p&gt;

&lt;p&gt;All speakers touched on the topic of &lt;em&gt;scientific culture&lt;/em&gt;, which was seen in a process of changing towards more openness, but with still quite some way to go. The cultural aspects and larger scale challenges were a recurring topic in the panel discussion after the short talks. These aspects included resistance to share supplemental material, so that journals cannot make sharing everything mandatory, for example because of unwillingness (fear of stealing) or because authors might not be allowed to do so. A member of the audience could share that in their experience as a publisher, requiring data and software publication did not result in a decrease in submissions when accompanied by transparent and helpful author guidelines. Such guidelines for both data and code are lacking for many journals but are a means to improve the overall situation - and make the lives of editors simpler.
When the progress of the last years on Open &lt;em&gt;Data&lt;/em&gt; was pointed out as largely a top down political endeavour, the contrast to &lt;em&gt;Open Source&lt;/em&gt; as a bottom-up grassroots initiative became clear. Nevertheless, the hope was phrased that with the success of Open Data, things might go smoother with Open Source in science.&lt;/p&gt;

&lt;p&gt;A further topic the discussion covered for some time was &lt;em&gt;creditation&lt;/em&gt;, and the need to update the ways researchers get &lt;em&gt;and give&lt;/em&gt; credit as part of grant-based funding and publishing scholarly articles. Though it was pointed out that RR is also about “doing the right thing”. Credit and culture were seen as closely linked topics, which can only be tackled by improving the education of scientists, both as authors and reviewers(!), and spreading the word about the importance of reproducibility for all of science, not least in the light of the marches for sciences taking place just a few days before the short course.&lt;/p&gt;

&lt;p&gt;While one could say we were mostly preaching to the choir, it was great to see an interest in the topic of reproducible research amongst EGU attendees. &lt;strong&gt;This workshop being the first of its kind at the EGU general assembly hopefully was a step towards even higher visibility and interest for RR as a crucial topic in today’s research.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;We thank the short course attendees and invited speakers for turning the first afternoon of EGU 2017 into an instructive and diverting few hours. &lt;em&gt;Will there be a reproducible research short course next year at EGU?&lt;/em&gt; We don’t know yet, but please do get in touch if you would like to support the planning. It could be worth providing a longer course targeted as &lt;a href=&quot;http://www.egu.eu/ecs/&quot;&gt;early career scientists&lt;/a&gt;, giving the &lt;a href=&quot;https://deevybee.blogspot.de/2017/05/reproducible-practices-are-future-for.html&quot;&gt;next generation&lt;/a&gt; the tools to work reproducibly.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Docker for GEOBIA - new article published</title>
   <link href="https://o2r.info/2017/03/30/remote-sensing-article-published/"/>
   <updated>2017-03-30T00:00:00+00:00</updated>
   <id>https://o2r.info/2017/03/30/remote-sensing-article-published</id>
   <content type="html">&lt;p&gt;&lt;a href=&quot;http://dx.doi.org/10.3390/rs9030290&quot;&gt;&lt;img src=&quot;/public/images/2017-03_rs-article.jpg&quot; alt=&quot;article cover screenshot&quot; title=&quot;screenshot of article at Remote Sensing journal&quot; width=&quot;300&quot; class=&quot;img rightfloat&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We are happy to announce that o2r team member &lt;a href=&quot;https://orcid.org/0000-0002-0024-5046&quot;&gt;Daniel&lt;/a&gt; published a new article together with &lt;a href=&quot;https://orcid.org/0000-0003-0797-7853&quot;&gt;Christian Knoth&lt;/a&gt; in the journal Remote Sensing. The special issue &lt;a href=&quot;http://www.mdpi.com/journal/remotesensing/special_issues/GEOBIA2016&quot;&gt;“Advances in Object-Based Image Analysis—Linking with Computer Vision and Machine Learning”&lt;/a&gt; comprising six papers was published in connection with the 6th &lt;a href=&quot;https://www.geobia2016.com/&quot;&gt;GEOBIA conference (2016)&lt;/a&gt;, where Daniel and Christian’s work was previously honoured with the best student paper award.&lt;/p&gt;

&lt;p&gt;The article &lt;strong&gt;Reproducibility and Practical Adoption of GEOBIA with Open-Source Software in Docker Containers&lt;/strong&gt; is available as Open Access: &lt;strong&gt;&lt;a href=&quot;http://dx.doi.org/10.3390/rs9030290&quot;&gt;doi:10.3390/rs9030290&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;script type=&quot;text/javascript&quot; src=&quot;https://d1bxh8uas1mnw7.cloudfront.net/assets/embed.js&quot;&gt;&lt;/script&gt;

&lt;div data-badge-popover=&quot;right&quot; data-badge-type=&quot;donut&quot; data-doi=&quot;10.3390/rs9030290&quot; class=&quot;altmetric-embed&quot; style=&quot;float:left; margin: 0.5em 1em 0 0&quot;&gt;&lt;/div&gt;
&lt;p&gt;Knoth, C., Nüst, D., 2017. Reproducibility and Practical Adoption of GEOBIA with Open-Source Software in Docker Containers. Remote Sensing 9, 290. doi:10.3390/rs9030290&lt;/p&gt;

&lt;div style=&quot;clear: both;&quot;&gt;&lt;/div&gt;
</content>
 </entry>
 
 <entry>
   <title>o2r @ Open Science Conference 2017, Berlin</title>
   <link href="https://o2r.info/2017/03/24/open-science-conference/"/>
   <updated>2017-03-24T00:00:00+00:00</updated>
   <id>https://o2r.info/2017/03/24/open-science-conference</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;https://www.open-science-conference.eu/wp-content/uploads/2019/12/Open_Science_logo_600.png&quot; alt=&quot;open science conference banner&quot; width=&quot;500&quot; /&gt;&lt;/p&gt;
&lt;div style=&quot;font-size: 0.6em; color: rgba(67,69,83,1); margin: -1em 0 1em 0; padding: 0;&quot;&gt;Foto: open-science-conference.eu&lt;/div&gt;

&lt;p&gt;Due to the overall topic of our project, we felt the &lt;a href=&quot;https://www.open-science-conference.eu/&quot;&gt;Open Science Conference&lt;/a&gt; (&lt;a href=&quot;http://twitter.com/search?q=%23osc2017&quot;&gt;#osc2017&lt;/a&gt;) taking place this week in Berlin would be a great chance to share our ideas and meet like-minded folks. We were happy about the notification that our poster was accepted and even made it into the top ten (of altogether 57 submissions), which allowed o2r team member Markus to give a three-minute &lt;a href=&quot;https://www.open-science-conference.eu/wp-content/uploads/2016/02/04_Talk.pdf&quot;&gt;lightning talk&lt;/a&gt; and present a project &lt;a href=&quot;https://www.open-science-conference.eu/wp-content/uploads/2017/03/04_Poster.pdf&quot;&gt;poster&lt;/a&gt;. Both days included interesting talks given by international speakers (see &lt;a href=&quot;https://www.open-science-conference.eu/programme/&quot;&gt;full programme&lt;/a&gt;) and in this post Markus reports on the trip.
&lt;!--more--&gt;
The first day covered several topics related to o2r, for example, data infrastructures (see &lt;a href=&quot;https://ec.europa.eu/research/openscience/index.cfm?pg=open-science-cloud&quot;&gt;European Open Science Cloud&lt;/a&gt;). Speakers also mentioned social challenges such as a new reward system and incentives required to motivate scientists to conduct Open Science – a key issue in the Executable Research Compendium-concept as well. In times of &lt;em&gt;fake news&lt;/em&gt; and the &lt;em&gt;credibility crisis&lt;/em&gt;, &lt;a href=&quot;https://www.open-science-conference.eu/&quot;&gt;keynote&lt;/a&gt; speaker Prof. Johannes Vogel strongly encouraged in his opening talk to set a good example in the field of Open Science and convincingly put scientists in charge of the issue.&lt;/p&gt;

&lt;p&gt;A few people I talked to liked the idea of making the dataset the actual publication and the paper being “only” the supplementary material. It might be interesting to play around with some thoughts on that: Will institutes focus on publishing datasets instead of papers? Is “data collector” a new job title?&lt;/p&gt;

&lt;p&gt;The lightning talks and the poster session were a success. Several visitors were keen to ask questions and to get explanations on technical and conceptual details. I hope that I was able to answer all of them in sufficient detail. If you think I didn’t, please don’t hesitate to ask me or in case of doubts, my colleagues Docker Daniel and Metadata Marc. You should also take a look at &lt;a href=&quot;http://conquaire.uni-bielefeld.de/&quot;&gt;Conquaire&lt;/a&gt;, an interesting project in the context of reproducible research.&lt;/p&gt;

&lt;p&gt;One highlight was a visit by &lt;a href=&quot;http://www.openscienceradio.de/&quot;&gt;Open Science Radio&lt;/a&gt;, who also published &lt;a href=&quot;http://www.openscienceradio.de/2017/03/22/osr079-opening-reproducible-research-poster-session-osc2017-en/&quot;&gt;a short interview on opening reproducible research&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;In the evening, we had a wonderful dinner next to dinosaurs (I am not talking about the scientists 😉) organized by &lt;a href=&quot;https://www.naturkundemuseum.berlin/&quot;&gt;Museum für Naturkunde Berlin&lt;/a&gt;, a museum of natural science. In this impressive atmosphere, we were able to network a bit and to continue discussions.&lt;/p&gt;

&lt;p&gt;The second day was rather education-driven. However, we do also want to enhance and extend the understanding of scientists when examining a paper by using our ERC. Why not addressing students, too? We still dream of a reproducible and interactive atlas.&lt;/p&gt;

&lt;p&gt;It was interesting to see that the great majority of guests and speakers focused on open data when discussing challenges in Open Science. Mentioning source-code was rather the exception although reproducibility was perceived as being part of Open Science. For this reason, I think that our contribution to the conference was relevant as we treat (open) code and software as being equally important. I mentioned this aspect in my lightning talk, too, and tried to highlight the importance of source code during the poster presentation. One might argue that open code is implicitly included in open data or open methodology. However, we should not rely on vague interpretations and make explicit what is required to rerun analyses. In the future, submitting, for example, analysis scripts should be as mandatory as it is demanded for datasets.&lt;/p&gt;

&lt;p&gt;To conclude, here a few &lt;strong&gt;take home messages&lt;/strong&gt;:&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Rewards and incentives that motivate to conduct Open Science are key issues&lt;/li&gt;
  &lt;li&gt;We have to engage people from society to increase trust in scientific results (tackle credibility crisis)&lt;/li&gt;
  &lt;li&gt;Problems are social – not technical. BUT: we have to provide scientists with working examples, otherwise they don’t know why to use it and how.&lt;/li&gt;
  &lt;li&gt;Open Science strongly focuses on data and educational aspects.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;P.S. The next time you read about guidelines, recommendations on open data, try to replace it by source code. The argument still works, right?&lt;/p&gt;

</content>
 </entry>
 
 <entry>
   <title>EGU short course scheduled and session programme upcoming</title>
   <link href="https://o2r.info/2017/02/14/egu-short-course-and-session/"/>
   <updated>2017-02-14T00:00:00+00:00</updated>
   <id>https://o2r.info/2017/02/14/egu-short-course-and-session</id>
   <content type="html">&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;en&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Join our short course &amp;quot;&lt;a href=&quot;https://twitter.com/hashtag/Reproducible?src=hash&quot;&gt;#Reproducible&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/computational?src=hash&quot;&gt;#computational&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/research?src=hash&quot;&gt;#research&lt;/a&gt; in the publication cycle&amp;quot; at &lt;a href=&quot;https://twitter.com/hashtag/EGU2017?src=hash&quot;&gt;#EGU2017&lt;/a&gt; &lt;a href=&quot;https://twitter.com/hashtag/SC81?src=hash&quot;&gt;#SC81&lt;/a&gt; &lt;a href=&quot;https://t.co/zPbvGUDsCy&quot;&gt;https://t.co/zPbvGUDsCy&lt;/a&gt;&lt;/p&gt;&amp;mdash; o2r (@o2r_project) &lt;a href=&quot;https://twitter.com/o2r_project/status/823508737809858560&quot;&gt;January 23, 2017&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;//platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;The short course &lt;strong&gt;Reproducible computational research in the publication cycle&lt;/strong&gt; (SC81) at the &lt;a href=&quot;http://www.egu2017.eu/&quot;&gt;EGU general assembly&lt;/a&gt; was accepted by the short course programme group and scheduled &lt;strong&gt;Monday, April 24th, 2017&lt;/strong&gt; in the afternoon. Thanks!&lt;/p&gt;

&lt;p&gt;We are grateful for the change to share our work on reproducible research together with members of the &lt;a href=&quot;https://www.reprozip.org/&quot;&gt;ReproZip&lt;/a&gt; team in a practical, hands-on short course.
Afterwards we welcome a number of esteemed speakers to share their views &lt;!--more--&gt;on reproducibility as researcher, reviewer, editor, publisher, and preservationist.&lt;/p&gt;

&lt;p&gt;See the &lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2017/session/25726&quot;&gt;full session description&lt;/a&gt; in the EGU programme.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Please register for the short course for free&lt;/em&gt; by filling in your name and email in this Doodle poll: &lt;a href=&quot;http://doodle.com/poll/2yvi7y9tine2x3pf&quot;&gt;http://doodle.com/poll/2yvi7y9tine2x3pf&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Earlier this year we also announced a &lt;a href=&quot;/2016/11/09/egu-ga-session-call/&quot;&gt;call for a session on reproducibility at EGU general assembly&lt;/a&gt;.
The contributions to this session was merged with other sessions to create the session &lt;strong&gt;IE2.4/ESSI3.10 Open Data, Reproducible Research, and Open Science&lt;/strong&gt;, see &lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2017/session/23924&quot;&gt;session description in the EGU GA programme&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The session programme will be published March 1st, 2017, so stay tuned for the official announcements.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>D-Lib Magazine Article Published</title>
   <link href="https://o2r.info/2017/01/16/dlib-magazine-article-published/"/>
   <updated>2017-01-16T00:00:00+00:00</updated>
   <id>https://o2r.info/2017/01/16/dlib-magazine-article-published</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;/public/images/2017-01_d-lib-magazine-cover.jpg&quot; alt=&quot;article cover screenshot&quot; title=&quot;screenshot of article at D-Lib Magazine website&quot; width=&quot;300&quot; class=&quot;img rightfloat&quot; /&gt;&lt;/p&gt;

&lt;p&gt;We are happy to announce that our article &lt;strong&gt;Opening the Publication Process with Executable Research Compendia&lt;/strong&gt; is now published in D-Lib Magazine’s &lt;a href=&quot;https://doi.org/10.1045/january2017-editorial&quot;&gt;current issue&lt;/a&gt;:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;https://doi.org/10.1045/january2017-nuest&quot;&gt;https://doi.org/10.1045/january2017-nuest&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This paper was originally presented at the &lt;a href=&quot;/2016/09/23/repscience-workshop-tpdl-hannover/&quot;&gt;RepScience Workshop&lt;/a&gt; in September 2016 and was peer-reviewed as part of the workshop submission. It is published as Open Access along with &lt;a href=&quot;http://www.dlib.org/dlib/january17/01contents.html&quot;&gt;other papers from the conference&lt;/a&gt;.&lt;/p&gt;

&lt;div class=&quot;attribution&quot;&gt;Nüst, D., Konkol, M., Pebesma, E., Kray, C., Schutzeichel, M., Przibytzin, H., Lorenz, J., 2017. Opening the Publication Process with Executable Research Compendia. D-Lib Magazine 23. doi:10.1045/january2017-nuest&lt;/div&gt;

&lt;div style=&quot;clear: both;&quot;&gt;&lt;/div&gt;
</content>
 </entry>
 
 <entry>
   <title>Reproducible Computational Geosciences Workshop at AGILE Conference</title>
   <link href="https://o2r.info/2017/01/05/agile-conference-workshop-reproducibility/"/>
   <updated>2017-01-05T00:00:00+00:00</updated>
   <id>https://o2r.info/2017/01/05/agile-conference-workshop-reproducibility</id>
   <content type="html">&lt;p&gt;We are happy to announce that a pre-conference workshop &lt;a href=&quot;https://o2r.info/agile-2017/&quot;&gt;“Reproducible Computational Geosciences”&lt;/a&gt; at the &lt;a href=&quot;https://agile-online.org/index.php/home-2017&quot;&gt;20th AGILE International Conference on Geographic Information Science&lt;/a&gt; will be held on May 9 2017 in Wageningen, The Netherlands.&lt;/p&gt;

&lt;p&gt;With this half day workshop we want to introduce the topic of reproducible research to the AGILE conference series, the most prominent and long-standing GIScience and GIS conference in Europe.
The 3-day conference is accompanied by &lt;a href=&quot;https://agile-online.org/index.php/programme-2017/agile-workshops-2017&quot;&gt;&lt;em&gt;13&lt;/em&gt; workshops on diverse topics&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;https://agile-online.org/images/stories/banner/AGILE2017-Wageningen.png&quot; alt=&quot;agile conference banner&quot; width=&quot;500&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Image courtesy of AGILE website.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Submit your abstract &lt;a href=&quot;https://o2r.info/agile-2017/&quot;&gt;here&lt;/a&gt;&lt;/em&gt; and share your experiences in reproducibility of geospatial analysis. Challenges, reproducibility studies, archiving, educational or legal aspects are among the welcomed topics.&lt;/p&gt;

&lt;p&gt;The workshop is co-organized by o2r team members and Frank Osterman from ITC, Enschede. Contributions and a public peer review are done via GitHub and supported by a great programme committee of distinguished researchers. &lt;em&gt;Please share this information with potentially interested parties (and &lt;a href=&quot;https://twitter.com/o2r_project/status/811967235082293248&quot;&gt;retweet&lt;/a&gt;). Thanks!&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;We look forward to your submission!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Investigating Docker and R</title>
   <link href="https://o2r.info/2016/12/15/investigating-docker-and-R/"/>
   <updated>2016-12-15T00:00:00+00:00</updated>
   <id>https://o2r.info/2016/12/15/investigating-docker-and-R</id>
   <content type="html">&lt;div style=&quot;border: 2px solid #CE5100; background-color: #ffe2d4; padding: 1em; margin: 1em 0;&quot;&gt;
&lt;p&gt;&lt;em&gt;This post gave the idea for the following 📢 PUBLISHED PAPER 🎉. It will not be updated anymore.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://doi.org/10.32614/RJ-2020-007&quot; title=&quot;Link to article&quot;&gt;&lt;strong&gt;The Rockerverse: Packages and Applications&lt;br /&gt;for Containerisation with R&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;
Daniel Nüst, Dirk Eddelbuettel, Dom Bennett, Robrecht Cannoodt, Dav Clark, Gergely Daróczi, Mark Edmondson, Colin Fay, Ellis Hughes, Lars Kjeldgaard, Sean Lopp, Ben Marwick, Heather Nolis, Jacqueline Nolis, Hong Ooi, Karthik Ram, Noam Ross, Lori Shepherd, Péter Sólymos, Tyson Lee Swetnam, Nitesh Turaga, Charlotte Van Petegem, Jason Williams, Craig Willis and Nan Xiao. &lt;em&gt;The R Journal&lt;/em&gt; (2020) 12:1, pages 437-461. doi:&lt;a href=&quot;https://doi.org/10.32614/RJ-2020-007&quot;&gt;10.32614/RJ-2020-007&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;

&lt;p&gt;&lt;em&gt;&lt;del&gt;This post is regularly updated (cf. &lt;a href=&quot;https://github.com/o2r-project/o2r-project.github.io/issues/10&quot;&gt;GH issue&lt;/a&gt;) and available under the URL &lt;strong&gt;&lt;a href=&quot;http://bit.ly/docker-r&quot;&gt;http://bit.ly/docker-r&lt;/a&gt;&lt;/strong&gt;.&lt;/del&gt; Last update: 11 Jan 2018.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Docker and R: How are they used and could they be used together?
That is the question that we regularly ask ourself.
And we try to keep up with other people’s work! In this post, we are going to share our insights with you.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/docker-loves-r.png&quot; alt=&quot;Docker loves R, R loves Docker&quot; title=&quot;Docker loves R, R loves Docker&quot; width=&quot;400&quot; /&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Thanks to &lt;a href=&quot;http://faculty.washington.edu/bmarwick/&quot;&gt;Ben Marwick&lt;/a&gt; for &lt;a href=&quot;https://github.com/o2r-project/o2r-project.github.io/pull/6&quot;&gt;contributing&lt;/a&gt; to this post! You know about a project using Docker and R? &lt;a href=&quot;https://github.com/o2r-project/o2r-project.github.io/issues/new&quot;&gt;Get in touch&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

&lt;h2 id=&quot;dockerising-r&quot;&gt;Dockerising R&lt;/h2&gt;

&lt;p&gt;Several implementations of besides the one by R-core exist today, together with numerous integrations into open source and proprietary software (cf. &lt;a href=&quot;https://en.wikipedia.org/wiki/R_(programming_language)#Implementations&quot;&gt;English&lt;/a&gt; and &lt;a href=&quot;https://de.wikipedia.org/wiki/R_(Programmiersprache)#Alternative_Open-Source-Interpreter&quot;&gt;German&lt;/a&gt; Wikipedia pages).
In the following we present the existing efforts for using &lt;em&gt;open source&lt;/em&gt; R implementation with Docker.&lt;/p&gt;

&lt;h3 id=&quot;rocker&quot;&gt;Rocker&lt;/h3&gt;

&lt;p&gt;The most prominent effort&lt;!--more--&gt; in this area is the &lt;strong&gt;Rocker&lt;/strong&gt; project (&lt;a href=&quot;http://rocker-project.org/&quot;&gt;http://rocker-project.org/&lt;/a&gt;).
It was initiated by &lt;a href=&quot;http://dirk.eddelbuettel.com/&quot;&gt;Dirk Eddelbuettel&lt;/a&gt; and &lt;a href=&quot;http://www.carlboettiger.info/&quot;&gt;Carl Boettiger&lt;/a&gt; and containerises the main R implementation based on &lt;a href=&quot;https://www.debian.org&quot;&gt;Debian&lt;/a&gt;.
For an introduction, you may read their blog post &lt;a href=&quot;http://dirk.eddelbuettel.com/blog/2014/10/23/&quot;&gt;here&lt;/a&gt; or follow &lt;a href=&quot;http://ropenscilabs.github.io/r-docker-tutorial/&quot;&gt;this tutorial&lt;/a&gt; from rOpenSci.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/rocker-logo.png&quot; alt=&quot;Rocker logo&quot; title=&quot;Rocker logo&quot; width=&quot;200&quot; class=&quot;img rightfloat&quot; /&gt;&lt;/p&gt;

&lt;p&gt;With a big choice of pre-build Docker images, Rocker provides optimal solutions for those who want to run R from Docker containers.
Explore it on &lt;a href=&quot;https://github.com/rocker-org/&quot;&gt;Github&lt;/a&gt; or &lt;a href=&quot;https://hub.docker.com/u/rocker/&quot;&gt;Docker Hub&lt;/a&gt;, and soon you will find out that it takes just one single command to run instances of either &lt;a href=&quot;https://hub.docker.com/r/rocker/r-base/&quot;&gt;base R&lt;/a&gt;, &lt;a href=&quot;https://hub.docker.com/r/rocker/r-devel/&quot;&gt;R-devel&lt;/a&gt; or &lt;a href=&quot;https://hub.docker.com/r/rocker/rstudio/&quot;&gt;Rstudio Server&lt;/a&gt;.
Moreover, you can run &lt;a href=&quot;https://hub.docker.com/r/rocker/r-versioned/&quot;&gt;specific versions of R&lt;/a&gt; or use one of the many bundles with commonly used R packages and other software, namely &lt;a href=&quot;https://hub.docker.com/r/rocker/tidyverse/&quot;&gt;tidyverse&lt;/a&gt; and &lt;a href=&quot;https://hub.docker.com/r/rocker/ropensci/&quot;&gt;rOpenSci&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;Images are build monthly on Docker Hub, except &lt;em&gt;devel&lt;/em&gt; tags which are build nightly.
Automated builds are disabled, instead builds are triggered by CRON jobs running on a third party server (cf. &lt;a href=&quot;https://github.com/rocker-org/rocker-versioned/issues/42#issuecomment-316149983&quot;&gt;GitHub comment&lt;/a&gt;).&lt;/p&gt;

&lt;h3 id=&quot;bioconductor&quot;&gt;Bioconductor&lt;/h3&gt;

&lt;p&gt;If you come from bioinformatics or neighboring disciplines, you might be delighted that &lt;a href=&quot;http://bioconductor.org/&quot;&gt;&lt;strong&gt;Bioconductor&lt;/strong&gt;&lt;/a&gt; provides several images based on Rocker’s &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;rocker/rstudio&lt;/code&gt; images.
See the &lt;a href=&quot;http://bioconductor.org/help/docker/&quot;&gt;help page&lt;/a&gt;, &lt;a href=&quot;https://github.com/Bioconductor/bioc_docker&quot;&gt;GitHub&lt;/a&gt;, and &lt;a href=&quot;https://hub.docker.com/u/bioconductor/&quot;&gt;Open Hub&lt;/a&gt; for more information.
In short, the Bioconductor core team maintains &lt;em&gt;release&lt;/em&gt; and &lt;em&gt;devel&lt;/em&gt; images (e.g. &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;bioconductor/release_base2&lt;/code&gt;), and contributors maintain image with different levels of pre-installed packages (each in &lt;em&gt;release&lt;/em&gt; and &lt;em&gt;devel&lt;/em&gt; variants), which are based on Bioconductor views (e.g. &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;bioconductor/devel_proteomics2&lt;/code&gt; installs the views &lt;a href=&quot;https://www.bioconductor.org/packages/devel/BiocViews.html#___Proteomics&quot;&gt;Proteomics&lt;/a&gt; and &lt;a href=&quot;https://www.bioconductor.org/packages/devel/BiocViews.html#___MassSpectrometryData&quot;&gt;MassSpectrometryData&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;Image updates occur with each Bioconductor release, except the &lt;em&gt;devel&lt;/em&gt; images which are build weekly with the latest versions of R and Bioconductor based on &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;rocker/rstudio-daily&lt;/code&gt;.&lt;/p&gt;

&lt;h3 id=&quot;centos-based-r-containers&quot;&gt;CentOS-based R containers&lt;/h3&gt;

&lt;p&gt;&lt;a href=&quot;http://meanmean.me/&quot;&gt;Jonathan Lisic&lt;/a&gt; works on a collection of Dockerfiles building on &lt;a href=&quot;https://www.centos.org/&quot;&gt;CentOS&lt;/a&gt; (6 and 7) and other operating systems as an alternative to the Debian-based Rocker stack.
The Dockerfiles are on GitHub: &lt;a href=&quot;https://github.com/jlisic/R-docker-centos&quot;&gt;https://github.com/jlisic/R-docker-centos&lt;/a&gt;&lt;/p&gt;

&lt;h3 id=&quot;mro&quot;&gt;MRO&lt;/h3&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/mro-logo.png&quot; alt=&quot;MRO logo&quot; title=&quot;MRO logo (C) Microsoft&quot; width=&quot;150&quot; class=&quot;img rightfloat&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Microsoft R Open (&lt;a href=&quot;https://mran.microsoft.com/open&quot;&gt;MRO&lt;/a&gt;) is an “enhanced R distribution”, formerly known as Revolution R Open (RRO) before &lt;a href=&quot;https://en.wikipedia.org/wiki/Revolution_Analytics&quot;&gt;Revolution Analytics&lt;/a&gt; was acquired by Microsoft.
MRO is compatible with main R and it’s packages.
“It includes additional capabilities for improved performance, reproducibility, and platform support.” (&lt;a href=&quot;https://mran.revolutionanalytics.com/rro/&quot;&gt;source&lt;/a&gt;); most notably these are the &lt;a href=&quot;http://mran.revolutionanalytics.com/&quot;&gt;MRAN repository&lt;/a&gt; a.k.a. CRAN Time Machine, which is also used by versioned Rocker images, and the (optional) integration with &lt;a href=&quot;https://software.intel.com/en-us/mkl&quot;&gt;Intel® Math Kernel Library&lt;/a&gt; (MKL) for &lt;a href=&quot;https://mran.revolutionanalytics.com/documents/rro/multithread&quot;&gt;multi-threaded performance&lt;/a&gt; in linear algebra operations (&lt;a href=&quot;https://en.wikipedia.org/wiki/Basic_Linear_Algebra_Subprograms&quot;&gt;BLAS&lt;/a&gt; and &lt;a href=&quot;https://en.wikipedia.org/wiki/LAPACK&quot;&gt;LAPACK&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;o2r team member Daniel created a Docker image for MRO including MKL.
It is available &lt;a href=&quot;https://hub.docker.com/r/nuest/mro/&quot;&gt;on Docker Hub&lt;/a&gt; as &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;nuest/mro&lt;/code&gt;, with &lt;a href=&quot;https://github.com/nuest/mro-docker&quot;&gt;Dockerfile on GitHub&lt;/a&gt;.
It is inspired by the Rocker images and can be used in the same fashion.
Please note the extended licenses printed at every startup for MKL.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;#centos-based-r-containers&quot;&gt;Jonathan Lisic&lt;/a&gt; published a Dockerfile for a CentOS-based MRO &lt;a href=&quot;https://github.com/jlisic/R-docker-centos&quot;&gt;on GitHub&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://www.linkedin.com/in/alikzaidi/&quot;&gt;Ali Zaidi&lt;/a&gt; published &lt;a href=&quot;https://github.com/akzaidi/mrclient-docker&quot;&gt;Dockerfiles on GitHub&lt;/a&gt; and &lt;a href=&quot;https://hub.docker.com/r/akzaidi/mrclient-docker/&quot;&gt;images on Docker Hub&lt;/a&gt; for &lt;a href=&quot;https://docs.microsoft.com/en-us/machine-learning-server/r-client/what-is-microsoft-r-client&quot;&gt;Microsoft R Client&lt;/a&gt;, which is based on MRO.&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;em&gt;R Client adds to MRO by including a couple of “ScaleR” machine learning algorithms and packages for parallelisation and remote computing.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3 id=&quot;renjin&quot;&gt;Renjin&lt;/h3&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/renjin-logo-v4.svg&quot; alt=&quot;Renjin logo&quot; title=&quot;Renjin logo&quot; width=&quot;150&quot; class=&quot;img rightfloat&quot; /&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.renjin.org/about.html&quot;&gt;Renjin&lt;/a&gt; is a &lt;a href=&quot;https://en.wikipedia.org/wiki/Java_virtual_machine&quot;&gt;JVM&lt;/a&gt;-based interpreter for the R language for statistical computing developed by &lt;a href=&quot;http://www.bedatadriven.com/&quot;&gt;BeDataDriven&lt;/a&gt;.
It was developed for big data analysis using existing R code seamlessly in cloud infrastructures, and allows Java/Scala developers to easily combine R with all benefits of Java and the JVM.&lt;/p&gt;

&lt;p&gt;While it is not primarily build for interactive use on the command line, this is possible.
So o2r team member Daniel created a Docker image for Renjin for you to try it out.
It is available &lt;a href=&quot;https://hub.docker.com/r/nuest/renjin/&quot;&gt;on Docker Hub&lt;/a&gt; as &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;nuest/renjin&lt;/code&gt;, with &lt;a href=&quot;https://github.com/nuest/renjin-docker&quot;&gt;Dockerfile on GitHub&lt;/a&gt;.&lt;/p&gt;

&lt;h3 id=&quot;pqr&quot;&gt;pqR&lt;/h3&gt;

&lt;p&gt;&lt;a href=&quot;http://www.pqr-project.org/&quot;&gt;&lt;strong&gt;pqR&lt;/strong&gt;&lt;/a&gt; tries to create &lt;em&gt;“a pretty quick version of R”&lt;/em&gt; and fixing some perceived issues in the R language.
While this is a one man project by &lt;a href=&quot;http://www.cs.toronto.edu/~radford/&quot;&gt;Radford Neal&lt;/a&gt;, it’s worth trying out such contributions to the open source community and to the discussion on how R should look like in the future (cf. &lt;a href=&quot;http://www.cs.toronto.edu/~radford/RIOT2017-lang.pdf&quot;&gt;a recent presentation&lt;/a&gt;), even if things might get &lt;a href=&quot;https://github.com/radfordneal/pqR/issues/30#issuecomment-251188198&quot;&gt;personal&lt;/a&gt;.
As you might have guess by now, Daniel created a Docker image for you to try out pqR: It is available &lt;a href=&quot;https://hub.docker.com/r/nuest/pqr/&quot;&gt;on Docker Hub&lt;/a&gt; as &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;nuest/pqr&lt;/code&gt;, with &lt;a href=&quot;https://github.com/nuest/pqr-docker&quot;&gt;Dockerfile on GitHub&lt;/a&gt;.&lt;/p&gt;

&lt;h3 id=&quot;wip-fastr&quot;&gt;[WIP] FastR&lt;/h3&gt;

&lt;p&gt;Also targeting performance, &lt;a href=&quot;https://github.com/graalvm/fastr&quot;&gt;&lt;strong&gt;FastR&lt;/strong&gt;&lt;/a&gt; is &lt;em&gt;“is an implementation of the R Language in Java atop &lt;a href=&quot;https://github.com/graalvm/graal/blob/master/truffle/README.md&quot;&gt;Truffle&lt;/a&gt;, a framework for building self-optimizing AST interpreters.”&lt;/em&gt; FastR is planned as a drop-in replacement for R, but &lt;a href=&quot;https://github.com/graalvm/fastr/blob/master/documentation/Limitations.md&quot;&gt;relevant limitations&lt;/a&gt; apply.&lt;/p&gt;

&lt;p&gt;While GraalVM has a &lt;a href=&quot;https://hub.docker.com/u/graalvm/&quot;&gt;Docker Hub user&lt;/a&gt;, no images are published probably because of licensing requirements, as can be seen in the GitHub repository &lt;a href=&quot;https://github.com/oracle/docker-images/tree/master/GraalVM/graalvm-0.22&quot;&gt;oracle/docker-images&lt;/a&gt;, where users must manually download a GraalVM release, which requires an Oracle Account… so the current tests available in &lt;a href=&quot;https://github.com/nuest/fastr-docker&quot;&gt;this GitHub repository&lt;/a&gt;, trying to build FastR from source based on the newest OpenJDK Java 9.&lt;/p&gt;

&lt;h2 id=&quot;dockerising-research-and-development-environments&quot;&gt;Dockerising Research and Development Environments&lt;/h2&gt;

&lt;p&gt;So why, apart from the incredibly easy usage, adoption and transfer of typical R environments, would you want to combine R with Docker?&lt;/p&gt;

&lt;p&gt;Ben Marwick, Associate Professor at the University of Washington, explains in &lt;a href=&quot;https://benmarwick.github.io/UW-eScience-docker-for-reproducible-research/&quot;&gt;this presentation&lt;/a&gt; that it helps you manage dependencies.
It gives a computational environment that is isolated from the host, and at the same time transparent, portable, extendable and reusable.
Marwick uses Docker and R for &lt;strong&gt;reproducible research&lt;/strong&gt; and thus bundles up his works to a kind of &lt;em&gt;Research Compendium&lt;/em&gt;; an instance is available &lt;a href=&quot;https://github.com/benmarwick/1989-excavation-report-Madjebebe&quot;&gt;here&lt;/a&gt;, and a template &lt;a href=&quot;https://github.com/benmarwick/researchcompendium&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://doi.org/10.1145/2723872.2723882&quot;&gt;&lt;img src=&quot;/public/images/boettiger-acm.jpg&quot; alt=&quot;Screenshot Boettiger ACM paper&quot; title=&quot;Screenshot Boettiger ACM paper&quot; width=&quot;150&quot; class=&quot;img rightfloat&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Carl Boettiger, Assistant Professor at UC Berkeley, wrote in detail about using Docker for reproducibility in his ACM SIGOPS paper &lt;a href=&quot;https://doi.org/10.1145/2723872.2723882&quot;&gt;‘An introduction to Docker for reproducible research, with examples from the R environment’&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Both Ben and Carl contributed case studies using Docker for research compendia in the book &lt;a href=&quot;https://www.gitbook.com/book/bids/the-practice-of-reproducible-research/details&quot;&gt;“The Practice of Reproducible Research - Case Studies and Lessons from the Data-Intensive Sciences”&lt;/a&gt;: &lt;a href=&quot;https://www.practicereproducibleresearch.org/case-studies/benmarwick.html&quot;&gt;Using R and Related Tools for Reproducible Research in Archaeology&lt;/a&gt; and &lt;a href=&quot;https://www.practicereproducibleresearch.org/case-studies/cboettig.html&quot;&gt;A Reproducible R Notebook Using Docker&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;An R extension you may want to dockerise is &lt;strong&gt;Shiny&lt;/strong&gt;.
Flavio Barros dedicated two articles on R-bloggers to this topic: &lt;a href=&quot;https://www.r-bloggers.com/dockerizing-a-shiny-app/&quot;&gt;Dockerizing a Shiny App&lt;/a&gt; and &lt;a href=&quot;https://www.r-bloggers.com/share-your-shiny-apps-with-docker-and-kitematic/&quot;&gt;Share Shiny apps with Docker and Kitematic&lt;/a&gt;.
The majority of talks at &lt;a href=&quot;https://user2017.brussels&quot;&gt;useR!2017&lt;/a&gt; presenting &lt;a href=&quot;https://user2017.brussels/schedule&quot;&gt;real-world deployments of Shiny&lt;/a&gt; mentioned using dockerised Shiny applications for reasons of scalability and ease of installation.&lt;/p&gt;

&lt;p&gt;The company &lt;a href=&quot;https://www.sevenbridges.com/&quot;&gt;Seven Bridges&lt;/a&gt; provides an example for a public container encapsulating a specific research environment, in this case the product &lt;a href=&quot;https://www.sevenbridges.com/platform/&quot;&gt;Seven Bridges Platform&lt;/a&gt; (&lt;em&gt;“a cloud-based environment for conducting bioinformatic analyses”&lt;/em&gt;), its tools and the Bioconductor package &lt;a href=&quot;https://www.bioconductor.org/packages/devel/bioc/html/sevenbridges.html&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;sevenbridges&lt;/code&gt;&lt;/a&gt;.
The published image &lt;a href=&quot;https://hub.docker.com/r/sevenbridges/sevenbridges-r/&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;sevenbridges/sevenbridges-r&lt;/code&gt;&lt;/a&gt; includes both RStudio Server and Shiny, see the &lt;a href=&quot;https://www.bioconductor.org/packages/devel/bioc/vignettes/sevenbridges/inst/doc/rstudio.html&quot;&gt;vignette “IDE Container”&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;A new solution to ease the creation of Docker containers for specific research environments is &lt;a href=&quot;https://github.com/o2r-project/containerit&quot;&gt;&lt;strong&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;containerit&lt;/code&gt;&lt;/strong&gt;&lt;/a&gt;.
It creates &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;Dockerfile&lt;/code&gt;s (using Rocker base images) from R sessions, R scripts, R Markdown files or R workspace directories, including the required system dependencies.
The package was &lt;a href=&quot;/2017/07/07/useR2017&quot;&gt;presented at useR!2017&lt;/a&gt; and can currently only be installed from GitHub.&lt;/p&gt;

&lt;p&gt;While Docker is made for running tools and services, and providing user interfaces via web protocols (e.g. via a local port and a website opened in a browser, as with &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;rocker/rstudio&lt;/code&gt; or Jupyter Notebook images), several activities exists that try to package &lt;strong&gt;GUI applications in containers&lt;/strong&gt;.
Daniel explores some alternatives for running RStudio in &lt;a href=&quot;https://github.com/nuest/x11rockerstudio&quot;&gt;this GitHub repository&lt;/a&gt;, just for the fun of it.
In this particular case it may not be very sensible, because &lt;em&gt;RStudio Desktop&lt;/em&gt; is already effectively a browser-based UI (unlike other GUI-based apps packages this way), but for users with reluctance to a browser UI and/or command line interfaces, the “Desktop in a container” approach might be useful.&lt;/p&gt;

&lt;h2 id=&quot;running-tests&quot;&gt;Running Tests&lt;/h2&gt;

&lt;p&gt;The package &lt;a href=&quot;https://github.com/traitecoevo/dockertest&quot;&gt;&lt;strong&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;dockertest&lt;/code&gt;&lt;/strong&gt;&lt;/a&gt; makes use of the isolated environment that Docker provides: R programmers can set up test environments for their R packages and R projects, in which they can rapidly test their works on Docker containers that only contain R and the relevant dependencies.
All of this without cluttering your development environment.&lt;/p&gt;

&lt;p&gt;The package &lt;a href=&quot;https://cran.r-project.org/package=gitlabr&quot;&gt;&lt;strong&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;gitlabr&lt;/code&gt;&lt;/strong&gt;&lt;/a&gt; does not use Docker itself, but wraps the &lt;a href=&quot;https://docs.gitlab.com/ce/api/README.html&quot;&gt;GitLab API&lt;/a&gt; in R functions for easy usage.
This includes starting continuous integration (CI) tests (function &lt;a href=&quot;https://www.rdocumentation.org/packages/gitlabr/versions/0.9/topics/gl_ci_job&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;gl_ci_job&lt;/code&gt;&lt;/a&gt;), which &lt;a href=&quot;https://docs.gitlab.com/ce/ci/docker/using_docker_images.html&quot;&gt;GitLab can do using Docker&lt;/a&gt;, so the function has an argument &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;image&lt;/code&gt; to select the image run to perform a CI task.&lt;/p&gt;

&lt;p&gt;In a completely different vein but still in the testing context, &lt;a href=&quot;https://cran.r-project.org/package=sanitizers&quot;&gt;&lt;strong&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;sanitizers&lt;/code&gt;&lt;/strong&gt;&lt;/a&gt; is an R package for testing the compiler setup across different compiler versions to detect code failures in sample code.
This allows testing completely different environments on the same host, without touching the well-kept development environment on the host.
The packages’ images are now &lt;em&gt;deprecated&lt;/em&gt; and superseded by Rocker images (&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;rocker/r-devel-san&lt;/code&gt; and &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;rocker/r-devel-ubsan-clang&lt;/code&gt;).&lt;/p&gt;

&lt;h2 id=&quot;dockerising-documents-and-workflows&quot;&gt;Dockerising Documents and Workflows&lt;/h2&gt;

&lt;p&gt;Some works are dedicated to &lt;em&gt;dockerising R-based documents&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/liftr-logo.png&quot; alt=&quot;liftr logo&quot; title=&quot;liftr logo&quot; width=&quot;100&quot; class=&quot;img rightfloat&quot; /&gt;&lt;/p&gt;

&lt;p&gt;The package &lt;a href=&quot;http://liftr.me/&quot;&gt;&lt;strong&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;liftr&lt;/code&gt;&lt;/strong&gt;&lt;/a&gt; (&lt;a href=&quot;https://cran.r-project.org/package=liftr&quot;&gt;on CRAN&lt;/a&gt;) for R lets users enhance Rmd files with YAML-metadata (&lt;a href=&quot;https://github.com/road2stat/dockflow/blob/master/config/sequencing.yml&quot;&gt;example&lt;/a&gt;), which enables rendering R Markdown documents in Docker containers.
Unlike &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;containerit&lt;/code&gt;, this metadata must be written by the author of the R Markdown document.&lt;/p&gt;

&lt;p&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;liftr&lt;/code&gt; is used in the &lt;a href=&quot;https://dockflow.org/&quot;&gt;&lt;strong&gt;DockFlow&lt;/strong&gt;&lt;/a&gt; initiative to containerise a selection of &lt;a href=&quot;https://bioconductor.org/help/workflows/&quot;&gt;Bioconductor workflows&lt;/a&gt; as presented in &lt;a href=&quot;https://nanx.me/papers/dockflow-poster-bioc2017.pdf&quot;&gt;this poster&lt;/a&gt; at BioC 2017 conference.
Liftr also supports &lt;a href=&quot;https://www.rabix.org/&quot;&gt;Rabix&lt;/a&gt;, a Docker-based toolkit for portable bioinformatics workflows.
That means that users can have Rabix workflows run inside the container and have the results integrated directly into the final document.&lt;/p&gt;

&lt;p&gt;The Bioconductor package &lt;a href=&quot;https://www.bioconductor.org/packages/devel/bioc/html/sevenbridges.html&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;sevenbridges&lt;/code&gt;&lt;/a&gt; (see also above) has &lt;a href=&quot;http://www.tengfei.name/sevenbridges/vignettes/docker.html&quot;&gt;a vignette on creating reproducible reports with Docker&lt;/a&gt;.
In recommends a reproducible script or report with &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;docopt&lt;/code&gt; respectively R markdown (parametrised reports).
The cloud-based Seven Bridges platform can fulfill requirements, such as required Docker images, within their internal JSON-based workflow and “Tool” description format (&lt;a href=&quot;https://github.com/sbg/sevenbridges-r/blob/master/inst/docker/sevenbridges/rabix/runif.json#L91&quot;&gt;example&lt;/a&gt;), for which the package provides helper functions to create Tools and execute them, see &lt;a href=&quot;http://www.tengfei.name/sevenbridges/vignettes/api.html#import-cwl-app-and-run-a-task&quot;&gt;this example in a vignette&lt;/a&gt;.
Docker images are used for &lt;a href=&quot;http://www.tengfei.name/sevenbridges/vignettes/apps.html&quot;&gt;local testing of these workflows&lt;/a&gt; based on Rabix (see above), where images are started automatically in the background for a user, who only uses R functions.
Automated builds for workflows on Docker Hub are also encouraged.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://rcloud.social&quot;&gt;&lt;strong&gt;RCloud&lt;/strong&gt;&lt;/a&gt; is a collaborative data analysis and visualization platform, which you can not only try out online but also host yourself with Docker.
Take a look at &lt;a href=&quot;https://github.com/att/rcloud/tree/master/docker&quot;&gt;their Dockerfiles&lt;/a&gt; or try out their image &lt;a href=&quot;https://hub.docker.com/r/rcl0ud/rcloud/&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;rcl0ud/rcloud&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;h2 id=&quot;control-docker-containers-from-r&quot;&gt;Control Docker Containers from R&lt;/h2&gt;

&lt;p&gt;Rather than running R inside Docker containers, it can be beneficial to call Docker containers from inside R.
This is what the packages in this section do.&lt;/p&gt;

&lt;p&gt;The &lt;a href=&quot;https://github.com/wch/harbor/&quot;&gt;&lt;strong&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;harbor&lt;/code&gt; package&lt;/strong&gt;&lt;/a&gt; for R (only available via GitHub) provides all Docker commands with R functions.
It may be used to control Docker containers that run either locally or remotely.&lt;/p&gt;

&lt;p&gt;A more recent alternative to &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;harbor&lt;/code&gt; is the package &lt;a href=&quot;https://bhaskarvk.github.io/docker/&quot;&gt;&lt;strong&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;docker&lt;/code&gt;&lt;/strong&gt;&lt;/a&gt;, also available &lt;a href=&quot;https://cran.r-project.org/package=docker&quot;&gt;on CRAN&lt;/a&gt; with source code &lt;a href=&quot;https://github.com/bhaskarvk/docker&quot;&gt;on GitHub&lt;/a&gt;.
Using a &lt;a href=&quot;https://en.wikipedia.org/wiki/Don%27t_repeat_yourself&quot;&gt;DRY&lt;/a&gt; approach, it provides a thin layer to the Docker API using the &lt;a href=&quot;https://docker-py.readthedocs.io/en/stable/&quot;&gt;Docker SDK for Python&lt;/a&gt; via the package &lt;a href=&quot;https://rstudio.github.io/reticulate/&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;reticulate&lt;/code&gt;&lt;/a&gt;.
The package is best suited for apt Docker users, i.e. if you know the Docker commands and life cycle.
However, thanks to the abstraction layer provided by the Docker SDK for Python, &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;docker&lt;/code&gt; also runs on various operating systems (including Windows).&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://github.com/cboettig/dockermachine&quot;&gt;&lt;strong&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;dockermachine&lt;/code&gt;&lt;/strong&gt;&lt;/a&gt; provides a convenient R interface to the &lt;a href=&quot;https://docs.docker.com/machine/overview/&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;docker-machine&lt;/code&gt;&lt;/a&gt; command, so you can provision easily local or remote/cloud instances of containers.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.seleniumhq.org/&quot;&gt;&lt;strong&gt;Selenium&lt;/strong&gt;&lt;/a&gt; provides tools for browser automation, which are also &lt;a href=&quot;https://hub.docker.com/u/selenium/&quot;&gt;available as Docker images&lt;/a&gt;.
They can be used, amongst others, for testing web applications or controlling a headless web browser from your favorite programming language.
In &lt;a href=&quot;https://rpubs.com/johndharrison/RSelenium-Docker&quot;&gt;this tutorial&lt;/a&gt;, you can see how and why you can use the package &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;RSelenium&lt;/code&gt; to interact with your Selenium containers from R.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://cloudyr.github.io/googleComputeEngineR/&quot;&gt;&lt;strong&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;googleComputeEngineR&lt;/code&gt;&lt;/strong&gt;&lt;/a&gt; provides an R interface to the Google Cloud Compute Engine API.
It includes a function called &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;docker_run&lt;/code&gt; that starts a Docker container in a Google Cloud VM and executes R code in it.
Read &lt;a href=&quot;https://cloudyr.github.io/googleComputeEngineR/articles/docker-ssh-futures.html&quot;&gt;this article&lt;/a&gt; for details and examples.
There are similar ambitions to implement Docker capabilities in the &lt;a href=&quot;https://github.com/sckott/analogsea&quot;&gt;&lt;strong&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;analogsea&lt;/code&gt; package&lt;/strong&gt;&lt;/a&gt; that interfaces the Digital Ocean API.
&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;googleComputeEngineR&lt;/code&gt; and &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;analogsea&lt;/code&gt; use functions from &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;harbor&lt;/code&gt; for container management.&lt;/p&gt;

&lt;h2 id=&quot;r-and-docker-for-complex-web-applications&quot;&gt;R and Docker for Complex Web Applications&lt;/h2&gt;

&lt;p&gt;Docker, in general, may help you to build complex and scalable web applications with R.&lt;/p&gt;

&lt;p&gt;If you already have a &lt;a href=&quot;https://shiny.rstudio.com/&quot;&gt;Shiny&lt;/a&gt; app, then &lt;a href=&quot;http://colebrokamp.com/&quot;&gt;Cole Brokamp’s&lt;/a&gt; package &lt;a href=&quot;https://github.com/cole-brokamp/rize&quot;&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;rize&lt;/code&gt;&lt;/a&gt; makes you just one function call away from building and viewing your dockerised Shiny application.&lt;/p&gt;

&lt;p&gt;If you want to get serious with Shiny, take a look at &lt;a href=&quot;https://www.shinyproxy.io/&quot;&gt;ShinyProxy&lt;/a&gt; by &lt;a href=&quot;https://www.openanalytics.eu/&quot;&gt;Open Analytics&lt;/a&gt;.
ShinyProxy is a Java application (&lt;a href=&quot;https://github.com/openanalytics/shinyproxy&quot;&gt;see GitHub&lt;/a&gt;) to deploy Shiny applications.
It &lt;a href=&quot;https://github.com/openanalytics/shinyproxy/blob/master/src/main/java/eu/openanalytics/services/DockerService.java#L388&quot;&gt;creates a container&lt;/a&gt; with the Shiny app for each user to ensure scalability and isolation and has some other “enterprise” features.&lt;/p&gt;

&lt;p&gt;Mark McCahill presented at &lt;a href=&quot;https://sites.duke.edu/researchcomputing/2014/09/23/duke-docker-day-was-great/&quot;&gt;an event&lt;/a&gt; of the Duke University in North Carolina (USA) how he provided 300+ students each with private RStudio Server instances.
In his presentation (&lt;a href=&quot;https://sites.duke.edu/researchcomputing/files/2014/09/mccahill-DockerDays.pdf&quot;&gt;PDF&lt;/a&gt; / &lt;a href=&quot;https://people.duke.edu/~mdelong/mccahill-DockerDays.mov&quot;&gt;MOV&lt;/a&gt; (398 MB)), he explains his &lt;strong&gt;RStudio farm&lt;/strong&gt; in detail.&lt;/p&gt;

&lt;p&gt;If you want to use &lt;strong&gt;RStudio with cloud services&lt;/strong&gt;, you may find delight in these articles from the SAS and R blog: &lt;a href=&quot;http://sas-and-r.blogspot.de/2016/12/rstudio-in-cloud-with-amazon-lightsail.html&quot;&gt;RStudio in the cloud with Amazon Lightsail and docker&lt;/a&gt;, &lt;a href=&quot;http://sas-and-r.blogspot.de/2016/01/set-up-rstudio-in-cloud-to-work-with.html&quot;&gt;Set up RStudio in the cloud to work with GitHub&lt;/a&gt;, &lt;a href=&quot;http://sas-and-r.blogspot.de/2014/12/rstudio-in-cloud-for-dummies-20142015.html&quot;&gt;RStudio in the cloud for dummies, 2014/2015 edition&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The platform &lt;a href=&quot;https://github.com/r-hub&quot;&gt;&lt;strong&gt;R-hub&lt;/strong&gt;&lt;/a&gt; helps R developers with solving package issues prior to submitting them to CRAN.
In particular, it provides services that build packages on all CRAN-supported platforms and checks them against the latest R release.
The services utilise backends that perform regular R builds inside of Docker containers.
Read the &lt;a href=&quot;https://github.com/r-hub/proposal&quot;&gt;project proposal&lt;/a&gt; for details.&lt;/p&gt;

&lt;p&gt;The package &lt;a href=&quot;https://cran.r-project.org/package=plumber&quot;&gt;&lt;strong&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;plumber&lt;/code&gt;&lt;/strong&gt;&lt;/a&gt; (&lt;a href=&quot;https://www.rplumber.io/&quot;&gt;website&lt;/a&gt;, &lt;a href=&quot;https://github.com/trestletech/plumber&quot;&gt;repository&lt;/a&gt;) allows creating web services/HTTP APIs in pure R.
The maintainer provides a ready to use Docker image &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;trestletech/plumber&lt;/code&gt; to run/host these applications with &lt;a href=&quot;https://www.rplumber.io/docs/hosting.html#docker&quot;&gt;excellent documentation&lt;/a&gt; including topics such as multiple images under one port and load balancing.&lt;/p&gt;

&lt;h2 id=&quot;batch-processing&quot;&gt;Batch processing&lt;/h2&gt;

&lt;p&gt;The package &lt;a href=&quot;https://cran.r-project.org/package=batchtools&quot;&gt;&lt;strong&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;batchtools&lt;/code&gt;&lt;/strong&gt;&lt;/a&gt; (&lt;a href=&quot;https://github.com/mllg/batchtools&quot;&gt;repository&lt;/a&gt;, &lt;a href=&quot;http://dx.doi.org/10.21105/joss.00135&quot;&gt;JOSS paper&lt;/a&gt;) provides a parallel implementation of &lt;a href=&quot;https://en.wikipedia.org/wiki/Map_(parallel_pattern)&quot;&gt;Map&lt;/a&gt; for &lt;a href=&quot;https://en.wikipedia.org/wiki/Supercomputer&quot;&gt;HPC&lt;/a&gt; for different &lt;a href=&quot;https://en.wikipedia.org/wiki/Job_scheduler&quot;&gt;schedulers&lt;/a&gt;, including &lt;a href=&quot;https://docs.docker.com/engine/swarm/&quot;&gt;Docker Swarm&lt;/a&gt;.
A job can be executed on a Docker cluster with a &lt;a href=&quot;https://mllg.github.io/batchtools/reference/makeClusterFunctionsDocker&quot;&gt;single R function call&lt;/a&gt;, for which a Docker CLI command is &lt;a href=&quot;https://github.com/mllg/batchtools/blob/master/R/clusterFunctionsDocker.R#L49&quot;&gt;constructed as a string and executed with &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;system2(..)&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>"Reproducible research for big data in practice": call for abstracts EGU GA 2017 session</title>
   <link href="https://o2r.info/2016/11/09/egu-ga-session-call/"/>
   <updated>2016-11-09T00:00:00+00:00</updated>
   <id>https://o2r.info/2016/11/09/egu-ga-session-call</id>
   <content type="html">&lt;p&gt;We are happy to announce that a session convened by o2r team member &lt;a href=&quot;http://orcid.org/0000-0001-8049-7069&quot;&gt;Edzer Pebesma&lt;/a&gt; along with co-conveners &lt;a href=&quot;http://orcid.org/0000-0001-8465-8341&quot;&gt;Yolanda Gil&lt;/a&gt;, &lt;a href=&quot;http://www.ldeo.columbia.edu/user/lehnert&quot;&gt;Kerstin Lehnert&lt;/a&gt;, &lt;a href=&quot;http://orcid.org/0000-0001-5911-6022&quot;&gt;Jens Klump&lt;/a&gt;, &lt;a href=&quot;https://www.linkedin.com/in/martinhammitzsch&quot;&gt;Martin Hammitzsch&lt;/a&gt;, and &lt;a href=&quot;http://orcid.org/0000-0002-0024-5046&quot;&gt;Daniel Nüst&lt;/a&gt; was accepted at &lt;a href=&quot;http://egu2017.eu&quot;&gt;next year’s European Geosciences Union General Assembly&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The &lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2017/sessionprogramme&quot;&gt;&lt;strong&gt;call for abstracts&lt;/strong&gt;&lt;/a&gt; is now open. The abstract submission deadline is 11 Jan 2017, 13:00 CET. So there is plenty of time to contribute, prepare an abstract and share your experience of reproducible research.&lt;/p&gt;

&lt;p&gt;Please &lt;a href=&quot;https://twitter.com/o2r_project/status/796007146366365697&quot;&gt;spread the word&lt;/a&gt; and find out more at &lt;a href=&quot;https://bit.ly/rregu17&quot;&gt;https://bit.ly/rregu17&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;From the session description:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;This session will showcase papers that &lt;!--more--&gt;focus on big data analysis and take reproducibility and openness into account. It is open to members of all programme groups and scientific disciplines to present how they conduct data-based research in a reproducible way. They are welcome to share practical advice, lessons learned, practical challenges of reproducibility, and report on the application of tools and software that support computational reproducibility.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The session is co-organized as part of the Interdisplinary Event “Big Data in the Geosciences” (IE 3.3), and the &lt;a href=&quot;http://essi.egu.eu/&quot;&gt;division on Earth &amp;amp; Space Science Informatics&lt;/a&gt; (ESSI ESSI4.11). “Using computers” is the unifying feature of many a researcher in the &lt;a href=&quot;http://www.egu.eu/structure/divisions/&quot;&gt;scientific divisions&lt;/a&gt;, so we look forward to meet a diverse group of people next year in Vienna. In the session description the conveners point out that…&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;[c]omputational reproducibility is especially important in the context of big data. Readers of articles must be able to trust the applied methods and computations because [..] data are also unique, observed by a single entity, or synthetic and simulated. Contributions based on small datasets are of special interest to demonstrate the variety in big data. Topics may include, but are not limited to, reproducibility reports and packages for previously published computational research, practical evaluations of reproducibility solutions for a specific research use case, best practices towards reproducibility in a specific domain such as publishing guidelines for data and code, or experiences from teaching methods for computational reproducibility.&lt;/p&gt;
&lt;/blockquote&gt;
</content>
 </entry>
 
 <entry>
   <title>Open in Action</title>
   <link href="https://o2r.info/2016/10/24/oa-week/"/>
   <updated>2016-10-24T00:00:00+00:00</updated>
   <id>https://o2r.info/2016/10/24/oa-week</id>
   <content type="html">&lt;p&gt;The Open Access movement has improved the foundation for research reproducibility in that it has greatly advanced the accessibility of research data and text. This year’s theme for the &lt;a href=&quot;http://www.openaccessweek.org/&quot;&gt;International Open Access Week&lt;/a&gt; is “Open in Action”. The o2r team joins in by creating &lt;a href=&quot;https://www.uni-muenster.de/Publizieren/open-access/&quot;&gt;local awareness&lt;/a&gt; for what may come beyond Open Access.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2016-10-24_oaweek.png&quot; alt=&quot;OA week logo&quot; width=&quot;600&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Image by &lt;a href=&quot;http://openaccessweek.org&quot; title=&quot;Open Access Week&quot;&gt;openaccessweek.org&lt;/a&gt;, licensed under &lt;a href=&quot;https://creativecommons.org/licenses/by/4.0/&quot; title=&quot;Creative Commons Attribution 4.0 International&quot;&gt;CC BY 4.0 Int.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To transform access into action, the o2r team is working towards the implementation of a simple technical solution. A &lt;a href=&quot;http://pebesma.staff.ifgi.de/epic.pdf&quot;&gt;“one click reproduce”&lt;/a&gt; button is one of the extremes within the continuum of reproducibility.
It enables the user to recreate the original results of a study with only a mouse click. In order to realize that, a new format for the publication of research findings has to be created and integrated into the publication cycle.&lt;/p&gt;

&lt;p&gt;In o2r we envision a container format that implements the &lt;em&gt;executable research compendium&lt;/em&gt; (&lt;a href=&quot;http://presentations.copernicus.org/EGU2016-7396_presentation.pdf&quot;&gt;ERC&lt;/a&gt;) to encapsulate any information relevant to constitutating a complete set of research data, code, text and UI. This includes any necessary specification of the working and run time environments.&lt;/p&gt;

&lt;p&gt;Towards the other end of the continuum of reproducibility we find examples of published code and data that are openly accessible and yet fail to be rebuild easily by another scholar. By being dependent on other software, vanished packages and specific versions or environments, such cases leave it to the user to reconstruct the individual computational dependency architectures.
This strongly increases the efforts to rebuild, run, or compile the code and thus effectively blocks &lt;em&gt;Open Action&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;With the use of ERCs such obstacles can be resolved: The orginial analysis underlying a scientific publication becomes fully reproducible for independent researchers and anyone interested.
Opening reproducibility is where we see the biggest need for Open Action in science.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Workshop on Reproducible Open Science</title>
   <link href="https://o2r.info/2016/09/23/repscience-workshop-tpdl-hannover/"/>
   <updated>2016-09-23T00:00:00+00:00</updated>
   <id>https://o2r.info/2016/09/23/repscience-workshop-tpdl-hannover</id>
   <content type="html">&lt;p&gt;Just two weeks ago, o2r team members &lt;a href=&quot;https://orcid.org/0000-0002-0024-5046&quot;&gt;Daniel&lt;/a&gt; and &lt;a href=&quot;http://orcid.org/0000-0001-6651-0976&quot;&gt;Markus&lt;/a&gt; proudly presented the project’s first workshop paper &lt;em&gt;“Opening the Publication Process with Executable Research Compendia”&lt;/em&gt; at the &lt;a href=&quot;http://repscience2016.research-infrastructures.eu&quot;&gt;First International Workshop on Reproducible Open Science&lt;/a&gt; held in conjunction with the &lt;a href=&quot;http://www.tpdl2016.org/&quot;&gt;20th International Conference on Theory and Practice of Digital Libraries&lt;/a&gt; and suppored by &lt;a href=&quot;http://europe.rd-alliance.org/&quot;&gt;RDA Europe&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The workshop was a great event with contributions from very diverse backgrounds, ranging from computer science to library technology, and use cases, from big data to metadata interoperability or microscopic experiments.&lt;/p&gt;

&lt;p&gt;The talks we’re accompanied by excellent &lt;strong&gt;keynotes&lt;/strong&gt; given by &lt;a href=&quot;http://orcid.org/0000-0003-1219-2137&quot;&gt;Carole Goble&lt;/a&gt; on the &lt;a href=&quot;http://repscience2016.research-infrastructures.eu/img/CaroleGoble-ReproScience2016v2.pdf&quot;&gt;“R* Brouhaha”&lt;/a&gt; and &lt;a href=&quot;http://orcid.org/0000-0002-6137-2348&quot;&gt;Sünje Dallmeier-Tiessen&lt;/a&gt; on CERNs hard &lt;a href=&quot;http://repscience2016.research-infrastructures.eu/img/Sunje-RepScience2016.pdf&quot;&gt;work towards reproducible research&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The presentations were followed by a &lt;strong&gt;general discussion session&lt;/strong&gt;, which touched, for example, the topics of publication bias/negative results, education having a higher potential than yet another infrastructure (“software data carpentry works”, says Carole Goble), and the necessity to communicate better about reproducible research. The latter lead to the idea of “five stars of reproducibility” inspired by the tremendously useful &lt;a href=&quot;http://5stardata.info/&quot;&gt;5 ★ Open Data&lt;/a&gt; and also the &lt;a href=&quot;http://www.nature.com/articles/sdata201618&quot;&gt;FAIR principles&lt;/a&gt; .&lt;/p&gt;

&lt;p&gt;All the &lt;strong&gt;slides&lt;/strong&gt; are &lt;a href=&quot;http://repscience2016.research-infrastructures.eu/index.php?d=sessions&quot;&gt;available online&lt;/a&gt;, including &lt;a href=&quot;http://repscience2016.research-infrastructures.eu/img/Hannover_Workshop_RepScience_TDPL2016.pdf&quot;&gt;our own&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;It was great for us to share our ideas of an &lt;em&gt;Executable Research Compendium&lt;/em&gt; with the workshop attendees. The discussions and feedback was very helpful. We especially realized that we need to sharpen the distinctive aspects of our project when we talk about it. We’re now working hard to implement this in a paper draft we’re working on.&lt;/p&gt;

&lt;p&gt;We thank the &lt;a href=&quot;http://repscience2016.research-infrastructures.eu/index.php?d=committee&quot;&gt;organizers&lt;/a&gt; &lt;a href=&quot;https://orcid.org/0000-0002-4259-9774&quot;&gt;Amir Aryani&lt;/a&gt;, &lt;a href=&quot;https://orcid.org/0000-0002-9260-0753&quot;&gt;Oscar Corcho&lt;/a&gt;, &lt;a href=&quot;https://orcid.org/0000-0001-7291-3210&quot;&gt;Paolo Manghi&lt;/a&gt;, and &lt;a href=&quot;http://orcid.org/0000-0002-0458-1004&quot;&gt;Jochen Schirrwagen&lt;/a&gt; for the well-run event! Hopefully there is going to be a second edition next year.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Docker presentation at FOSS4G conference</title>
   <link href="https://o2r.info/2016/09/06/foss4g-docker/"/>
   <updated>2016-09-06T00:00:00+00:00</updated>
   <id>https://o2r.info/2016/09/06/foss4g-docker</id>
   <content type="html">&lt;p&gt;&lt;strong&gt;Update&lt;/strong&gt;: A video recoriding of the presentation is now published on the TIB AV-Portal: &lt;a href=&quot;http://dx.doi.org/10.5446/20330&quot;&gt;http://dx.doi.org/10.5446/20330&lt;/a&gt;&lt;/p&gt;

&lt;iframe width=&quot;560&quot; height=&quot;315&quot; scrolling=&quot;no&quot; src=&quot;//av.tib.eu/player/20330&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;&quot;&gt;&lt;/iframe&gt;

&lt;p&gt;o2r team member &lt;a href=&quot;https://twitter.com/nordholmen&quot;&gt;Daniel Nüst&lt;/a&gt; recently participated in the worlds largest conference for geospatial open source software. The &lt;a href=&quot;http://2016.foss4g.org&quot;&gt;FOSS4G 2016&lt;/a&gt; was hosted by the Open Source Geospatial Foundation (&lt;a href=&quot;http://www.osgeo.org/&quot;&gt;OSGeo&lt;/a&gt;) and took place close to home, namely in Bonn. Therefore Daniel was extremely happy that &lt;!--more--&gt; his &lt;a href=&quot;http://2016.foss4g.org/talks.html#146&quot;&gt;talk&lt;/a&gt; “An overview of Docker images for geospatial applications” was voted to be presented by the OSGeo community. Daniel presented an evaluation into the existing containers for FOSS4G software. After an introduction into Docker and some live demos, the takeaway was that everybody should use Docker more, and many different application scenarios (development, demos, training, cloud deployment) exist.&lt;/p&gt;

&lt;p&gt;The presentation was very well attended (~ 120 people), albeit taking place in the first session on Friday morning after the conference dinner the night before. &lt;a href=&quot;https://twitter.com/search?q=foss4g%20docker&amp;amp;src=typd&quot;&gt;Reactions on Twitter&lt;/a&gt; were also quite positive, several &lt;a href=&quot;https://twitter.com/foss4g/status/769081504718852119&quot;&gt;good question&lt;/a&gt;s were asked, and great discussions followed throughout the day.&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot; data-lang=&quot;en&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;Much interest in Docker containerization, &lt;a href=&quot;https://twitter.com/hashtag/foss4g?src=hash&quot;&gt;#foss4g&lt;/a&gt; &lt;a href=&quot;https://t.co/i55KphJwKv&quot;&gt;pic.twitter.com/i55KphJwKv&lt;/a&gt;&lt;/p&gt;&amp;mdash; michael GOULD (@0mgould) &lt;a href=&quot;https://twitter.com/0mgould/status/769075459225219072&quot;&gt;August 26, 2016&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;//platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;The main part of the work is published in the OSGeo wiki: a comprehensive list of Docker containers published by projects or third parties to use a large variety of tools, libraries, or Desktop applications in Docker containers. Check out the list at &lt;strong&gt;&lt;a href=&quot;https://wiki.osgeo.org/wiki/DockerImages&quot;&gt;https://wiki.osgeo.org/wiki/DockerImages&lt;/a&gt;&lt;/strong&gt;. Contributions are welcome!&lt;/p&gt;

&lt;p&gt;&lt;em&gt;How is this related to the o2r project?&lt;/em&gt; The expertise build up around Docker should be shared with the communities we know. And more concretely, many applications in the geospatial world are build upon services and APIs, so scientific work building upon these APIs will require to archive such services, too. This is a topic we will experiment on in the second year of o2r.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;http://geocontainers.org/img/geocontainers-logo.png&quot; alt=&quot;geocontainers logo&quot; title=&quot;geocontainers logo&quot; width=&quot;100&quot; class=&quot;img rightfloat&quot; /&gt;As some popular projects surprisingly did not have Docker images yet, Daniel started a new independent project &lt;a href=&quot;https://github.com/geocontainers/&quot;&gt;on GitHub&lt;/a&gt; to provide a place for FOSS4G-related containers and to expand the knowledge and application of containers for geospatial applications: &lt;strong&gt;&lt;a href=&quot;http://geocontainers.org/&quot;&gt;geocontainers&lt;/a&gt;&lt;/strong&gt;. Inspired by &lt;a href=&quot;http://biodocker.org/&quot;&gt;Biodocker&lt;/a&gt;, geocontainers is intended to be a place to experiment and collaborate on containers without any initial rules or guidelines.&lt;/p&gt;

&lt;p&gt;All of this is described in detail in &lt;a href=&quot;http://www.slideshare.net/nuest/docker-foss4g-2016-bonn-public&quot;&gt;his presentation&lt;/a&gt;, which is also available as a &lt;a href=&quot;http://ftp5.gwdg.de/pub/misc/openstreetmap/FOSS4G-2016/foss4g-2016-1146-an_overview_of_docker_images_for_geospatial_applications-hd.mp4&quot;&gt;video recording&lt;/a&gt;. Feedback welcome!&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://ftp5.gwdg.de/pub/misc/openstreetmap/FOSS4G-2016/foss4g-2016-1146-an_overview_of_docker_images_for_geospatial_applications-hd.mp4&quot;&gt;&lt;img src=&quot;/public/images/2016-08_foss4g-video-docker.jpg&quot; alt=&quot;presentation video screenshot&quot; title=&quot;presentation video screenshot&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The conference was excellently organized in &lt;a href=&quot;http://www.worldccbonn.com/en/history.html&quot;&gt;a great venue&lt;/a&gt; which includes the former Plenary Chambers of the Bundestag. Indeed a very special place to meet the people behind the projects of Free and Open Source Software for Geospatial.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2016-09_foss4g-plenary-chamber.jpg&quot; alt=&quot;FOSS4G keynote in Bundestag&apos;s old Plenary Chamber&quot; title=&quot;FOSS4G keynote in Bundestag&apos;s old Plenary Chamber&quot; width=&quot;600&quot; /&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Summer break technical post: ORCID OAuth with passport.js</title>
   <link href="https://o2r.info/2016/08/12/nodejs-orcid/"/>
   <updated>2016-08-12T00:00:00+00:00</updated>
   <id>https://o2r.info/2016/08/12/nodejs-orcid</id>
   <content type="html">&lt;p&gt;With the University in a rather calm state during summer, the o2r team continues to work on the first prototypes for testing and demonstrating our ideas. This is the first post on a technical topic, and we will occasionally write about topics that are not related to the scientific work but either kept us busy for some time or might be useful to others.&lt;/p&gt;

&lt;p&gt;Last week o2r team member Jan struggled with the implementation of the &lt;strong&gt;login feature&lt;/strong&gt; for a &lt;a href=&quot;https://nodejs.org/en&quot;&gt;Node.js&lt;/a&gt; &lt;a href=&quot;https://en.wikipedia.org/wiki/Microservices&quot;&gt;microservice&lt;/a&gt;. &lt;em&gt;Why would we bother with that?&lt;/em&gt;
&lt;!--more--&gt;Because we want to share our prototypes publicly and invite you to try them out, but at the same time not have to worry about one of your most valuable possessions: your password.&lt;/p&gt;

&lt;p&gt;Therefore we decided early on to rely on &lt;a href=&quot;http://oauthbible.com/#oauth-2-three-legged&quot;&gt;three legged &lt;strong&gt;OAuth 2.0&lt;/strong&gt;&lt;/a&gt; for handling user authentication. We opted for &lt;a href=&quot;http://orcid.org/&quot;&gt;&lt;strong&gt;ORCID&lt;/strong&gt;&lt;/a&gt; as the authorization server because it is the most widespread identification for researchers today&lt;sup id=&quot;fnref:1&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:1&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;1&lt;/a&gt;&lt;/sup&gt;, and because of the potential for useful integrations in the future&lt;sup id=&quot;fnref:2&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:2&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;2&lt;/a&gt;&lt;/sup&gt;.&lt;/p&gt;

&lt;p&gt;The solution&lt;sup id=&quot;fnref:3&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:3&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;3&lt;/a&gt;&lt;/sup&gt; required to dig a bit deeper into the code of the used libraries, namely &lt;a href=&quot;http://passportjs.org/&quot;&gt;passport.js&lt;/a&gt; with the plugin &lt;a href=&quot;https://github.com/jaredhanson/passport-oauth2&quot;&gt;passport-oauth2&lt;/a&gt;. Jan summarizes everything nicely &lt;a href=&quot;https://gist.github.com/JanKoppe/1491e37d1022c77a286087e6c81d6092&quot;&gt;in &lt;strong&gt;this Gist&lt;/strong&gt;&lt;/a&gt; and the working implementation is part of our component &lt;a href=&quot;https://github.com/o2r-project/o2r-bouncer&quot;&gt;o2r-bouncer&lt;/a&gt;. The ORCID support team was even so kind to include our solution on their &lt;a href=&quot;https://members.orcid.org/api/code-examples&quot;&gt;code examples page&lt;/a&gt; and we shared it with the &lt;a href=&quot;https://groups.google.com/forum/#!topic/orcid-api-users/RRyhC-2L64U&quot;&gt;ORCID API Users mailing list&lt;/a&gt; in the hope that future developers will find this information helpful.&lt;/p&gt;

&lt;p&gt;So in the end, a full day of work to figure out two missing lines of code, but still many days saved on bullet-proofing standalone authentication and password storage.&lt;/p&gt;

&lt;div class=&quot;footnotes&quot; role=&quot;doc-endnotes&quot;&gt;
  &lt;ol&gt;
    &lt;li id=&quot;fn:1&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;The used libraries would allow us to quickly add more authorization services, such as Google or GitHub. &lt;a href=&quot;#fnref:1&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:2&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;Wouldn’t you like to have a research container be automatically added to your publication list? &lt;a href=&quot;#fnref:2&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:3&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;In a nutshell, the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;passReqToCallback&lt;/code&gt; option must be enabled when creating the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;OAuth2Strategy&lt;/code&gt; and the &lt;a href=&quot;https://github.com/o2r-project/o2r-bouncer/blob/dd3416e8a349aaa4a57ab8b061fe1556dd6d7041/index.js#L47&quot;&gt;used callback function&lt;/a&gt; must include 6 arguments. Only then the &lt;a href=&quot;https://github.com/jaredhanson/passport-oauth2/blob/1eb4f22d5f6ca8bc6b08856f91779f67e5082fe0/lib/strategy.js#L184&quot;&gt;function with the largest number of arguments&lt;/a&gt; is used and the content of the accessToken-request answer, which includes the ORCID id and user name, is accessible in your own code. They can be found in the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;params&lt;/code&gt; parameter of the function, not as part of &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;profile&lt;/code&gt; as one is used to with other OAuth servers. This seems to be a slight deviation from the standard by the ORCID folks. &lt;a href=&quot;#fnref:3&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
  &lt;/ol&gt;
&lt;/div&gt;
</content>
 </entry>
 
 <entry>
   <title>Feedback on and Focus for the o2r Vision</title>
   <link href="https://o2r.info/2016/06/07/workshop-external-partners/"/>
   <updated>2016-06-07T00:00:00+00:00</updated>
   <id>https://o2r.info/2016/06/07/workshop-external-partners</id>
   <content type="html">&lt;p&gt;A couple of weeks ago the &lt;a href=&quot;/about&quot;&gt;o2r team&lt;/a&gt; met with a group of experts to discuss the project’s outline and scope. Being a few months into the project, the team members were eager to get feedback on their plans, which they created based on the original project proposal, the first practical evaluations, and extensive reviews of research literature. To give this feedback, we invited a group of external partners to a full day meeting at the  &lt;a href=&quot;https://goo.gl/maps/jsBqYExXjR52&quot;&gt;Wersehaus&lt;/a&gt;, a small boathouse in the countryside next to the Werse river.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/public/images/2016-05_o2r-workshop.jpg&quot; alt=&quot;workshop participants group picture&quot; title=&quot;o2r external partner workshop participants. image license: CC BY-NC-ND&quot; width=&quot;400&quot; /&gt;&lt;/p&gt;
&lt;p class=&quot;attributionInlineImage&quot;&gt;Image is licensed under a &lt;a href=&quot;https://creativecommons.org/licenses/by-nc-nd/4.0/&quot; title=&quot;Creative Commons Attribution Non-Commercial No-Derivatives 4.0 International License&quot;&gt;CC BY-NC-ND 4.0 International&lt;/a&gt; license.&lt;/p&gt;

&lt;p&gt;This workshop was already planned in the project proposal and proved to be worth the preparation and, first and foremost, the efforts of our guests to travel to Münster. The external participants were&lt;!--more--&gt; &lt;a href=&quot;https://twitter.com/xeniavanedig&quot;&gt;Xenia van Edig&lt;/a&gt; from &lt;a href=&quot;http://www.copernicus.org/about_us.html&quot;&gt;Copernicus&lt;/a&gt;’s business development team, &lt;a href=&quot;https://twitter.com/hkoers&quot;&gt;Hylke Koers&lt;/a&gt;, Head of Content Innovation at &lt;a href=&quot;https://www.elsevier.com/&quot;&gt;Elsevier&lt;/a&gt;, &lt;a href=&quot;http://geographicknowledge.de/&quot;&gt;Simon Scheider&lt;/a&gt; from the &lt;a href=&quot;http://www.uu.nl/en/research/human-geography-and-spatial-planning&quot;&gt;Department of Humany Geography and Spatial Planning at Utrecht University&lt;/a&gt;, &lt;a href=&quot;https://twitter.com/LinkedScience&quot;&gt;Tomi Kauppinen&lt;/a&gt; from the &lt;a href=&quot;http://cs.aalto.fi/en/&quot;&gt;Department of Computer Science at Aalto University&lt;/a&gt;, and Werner Kuhn from the &lt;a href=&quot;http://spatial.ucsb.edu/people/werner-kuhn/&quot;&gt;Center for Spatial Studies at University of California, Santa Barbara&lt;/a&gt;. The photo above also shows the o2r team members participating: Edzer Pebesma, Daniel Nüst, Markus Konkol, Chris Kray (all ifgi), Holger Przibytzin, and Marc Schutzeichel (both ULB).&lt;/p&gt;

&lt;p&gt;We started the day with talks by the external partners and project grantees. With such a select group, we were not surprised to get an excellent discussion rolling from the first talk on! You can download the talks’ slides below if available, just click on the person’s name.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;/public/download/o2r-workshop-2016_lightning-talk_edzer-pebesma.pdf&quot;&gt;Edzer&lt;/a&gt; set the context of the project and took a look back at the motivation for the project (among which is personal annoyance!)&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/public/download/o2r-workshop-2016_lightning-talk_werner-kuhn.pdf&quot;&gt;Werner&lt;/a&gt; discussed the products of research (hypotheses, software, data, narratives) and provided some claims on these that fueled a lively discussion.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/public/download/o2r-workshop-2016_lightning-talk_tomi-kauppinen.pdf&quot;&gt;Tomi&lt;/a&gt; approached reproducibility from the question “How science works?” and connected it to his work on Linked Open Science (see also the original &lt;a href=&quot;https://prezi.com/oaikop2s2ppa/my-take-on-reproducibility-presented-at-o2r-workhop/#&quot;&gt;Prezi&lt;/a&gt;).&lt;/li&gt;
  &lt;li&gt;Holger introduced the interests and role of the university library in the project.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/public/download/o2r-workshop-2016_lightning-talk_xenia-van-edig.pdf&quot;&gt;Xenia&lt;/a&gt; presented different levels of open access publication workflows and shared experiences from the publication domain and enforcement of openness.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/public/download/o2r-workshop-2016_lightning-talk_hylke-koers.pdf&quot;&gt;Hylke&lt;/a&gt; talked about content innovation’s relation to reproducibility and showed a variety of work around interactivity in the article of the future.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;/public/download/o2r-workshop-2016_lightning-talk_chris-kray.pdf&quot;&gt;Chris&lt;/a&gt; related reproducible research to ifgi’s vision of an open geoinformatics platform, and critically discussed benefits and challenges.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We continued the day with intensive discussions on the project’s schedule for the first year, stretching across all aspects such as preservation metadata, usability and user interaction, and compendium specification. After lunch these areas were explored more deeply in an Open Space setting prepared by the projects full-time employees Marc, Markus, and Daniel. Afterwards we drilled deeper to identify potentials risks and their mitigations, as well as answering the crucial question: Where can the project have the largest impact?&lt;/p&gt;

&lt;p&gt;We found that a narrow focus is crucial for the project to succeed. Since we’re not going to change the publishing landscape in one step and we want to make an impact in the community we know best, geoinformatics, we see these high priority goals for the foreseeable project’s future:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;New means of &lt;em&gt;interaction with and exploration of scientific spatio-temporal data, analyses, and visualisations&lt;/em&gt; based on linked research compendia contents.&lt;/li&gt;
  &lt;li&gt;&lt;em&gt;Automatic&lt;/em&gt; (bordering on &lt;a href=&quot;https://en.wikipedia.org/wiki/Clarke&apos;s_three_laws&quot;&gt;magical&lt;/a&gt;) &lt;em&gt;creation of executable research compendia&lt;/em&gt; based on typical science workspaces for R-based geosciences.&lt;/li&gt;
  &lt;li&gt;Specification of an &lt;em&gt;executable research compendium rooted firmly&lt;/em&gt; in users’ requirements, preservation requirements, the currently dominating procedures in scientific publications, and reality of highly diverse scientific workflows.&lt;/li&gt;
  &lt;li&gt;New ways for &lt;em&gt;searching scientific work&lt;/em&gt; based on the integrated and linked parts of a research compendium (text, code, data, user interface bindings).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;So what will we understand in two years time that we do not know now?&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;We have a good understanding of how far the process of creating research compendia can be automated, and what efforts remain for authors or preservationists that must be counterbalanced with incentives.&lt;/li&gt;
  &lt;li&gt;We know the potential of user interface bindings as the connecting entity of research compendia.&lt;/li&gt;
  &lt;li&gt;We show the improvements in discovery and understanding of research when all aspects of research are explicitly linked in a meaningful way.&lt;/li&gt;
  &lt;li&gt;We get to know the common language as well as points of contact for the involved parties as we create a closer connection between research, preservation, and publication communities.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;What do you think? Ambitious goals, or nothing new? Give the new discussion feature below this post a try!&lt;/p&gt;

&lt;p&gt;We thank again our guests for their valuable inputs. Having their backgrounds in research as well as scientific publishing, their critical evaluation helps us to shape a clear direction for our work. To keep in touch, follow us on &lt;a href=&quot;https://twitter.com/o2r_project&quot;&gt;Twitter&lt;/a&gt; or &lt;a href=&quot;https://github.com/o2r-project&quot;&gt;GitHub&lt;/a&gt;.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Container Strategies for Data &amp; Software Preservation that Promote Open Science (DASPOS workshop)</title>
   <link href="https://o2r.info/2016/05/20/daspos-workshop/"/>
   <updated>2016-05-20T00:00:00+00:00</updated>
   <id>https://o2r.info/2016/05/20/daspos-workshop</id>
   <content type="html">&lt;p&gt;In the last two days o2r team member &lt;a href=&quot;https://nordholmen.net&quot;&gt;Daniel&lt;/a&gt; participated in a workshop organized by the project “Data and Software Preservation Open Science” (&lt;a href=&quot;https://daspos.crc.nd.edu&quot;&gt;DASPOS&lt;/a&gt;) at the University of Notre Dame, USA.
It was organized in an excellent fashion and in perfect amenities by the Center for Research Computing (&lt;a href=&quot;https://crc.nd.edu/&quot;&gt;CRC&lt;/a&gt; at the University of Notre Dame.&lt;/p&gt;

&lt;p&gt;The workshop title &lt;em&gt;“Container Strategies for Data &amp;amp; Software Preservation that Promote Open Science”&lt;/em&gt; fits perfectly with our own project goals, so Daniel was not surprised learn about a lot of great initiatives and projects.
A great group of researchers and librarians, mostly from the US, presented diverse topics almost all of which had one connection or another with o2r.
The general connecting feature between all participants were (Docker) containers and the interest in preservation.
Different approaches were presented in hands-on sessions, for example &lt;a href=&quot;http://reprozip.org/&quot;&gt;ReproZip&lt;/a&gt;, &lt;a href=&quot;https://daspos.crc.nd.edu/images/reports/umbrella-vtdc15.pdf&quot;&gt;Umbrella&lt;/a&gt; and the NDS Dashboard.
You can check the &lt;a href=&quot;https://daspos.crc.nd.edu/index.php/workshops/container-strategies-for-data-software-preservation-that-promote-open-science&quot;&gt;full schedule and participant list&lt;/a&gt; for details.&lt;/p&gt;

&lt;p&gt;A few highlights from Daniel’s perspective were the shared understanding that a common language and terms would be needed going forward when containerisation is applied more widely for openness and transparency of research.
But at the same time, and certainly at the current point in time of implementations, diversity is good and some amount of re-doing existing “features” is unavoidable.&lt;/p&gt;

&lt;p&gt;You can find &lt;a href=&quot;https://osf.io/h2u6w/&quot;&gt;Daniel’s presentation&lt;/a&gt; (also &lt;a href=&quot;https://www.slideshare.net/nuest/opening-reproducible-research-lightning-talk-daspos-containerization-workshop-2016&quot;&gt;on SlideShare&lt;/a&gt;), as well as &lt;a href=&quot;https://osf.io/y9mpx/&quot;&gt;all other’s slides and other (reading) material&lt;/a&gt;, on the Open Science Framework (OSF) website.
The presentations were recorded and you can watch Daniel’s talk as well as &lt;a href=&quot;https://osf.io/upwdj/&quot;&gt;all the others&lt;/a&gt;:&lt;/p&gt;

&lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;https://www.youtube-nocookie.com/embed/YuDdUqMGQAs?start=770&quot; frameborder=&quot;0&quot; allow=&quot;accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture&quot; allowfullscreen=&quot;&quot;&gt;&lt;/iframe&gt;

&lt;p&gt;Daniel would like to thank the DASPOS team for the invitation and the excellent filming and transcribing.
It was a great experience to meet the leaders in the field.
The workshop was an awesome opportunity to share the o2r vision and to learn about other projects, ideas and concepts at this stage of our project.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Looking back at EGU General Assembly</title>
   <link href="https://o2r.info/2016/05/02/egu-review/"/>
   <updated>2016-05-02T00:00:00+00:00</updated>
   <id>https://o2r.info/2016/05/02/egu-review</id>
   <content type="html">&lt;p&gt;o2r team members Edzer Pebesma and Daniel Nüst published a short blog article on &lt;a href=&quot;https://r-spatial.org&quot;&gt;r-spatial&lt;/a&gt; about the project in general, and more specifically about the poster presented at EGU General Assembly &lt;a href=&quot;/2016/04/08/o2r-at-EGU/&quot;&gt;a couple of weeks ago&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Read the blog here: &lt;a href=&quot;https://r-spatial.org/r/2016/04/29/o2r.html&quot;&gt;https://r-spatial.org/r/2016/04/29/o2r.html&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The EGU poster is now also &lt;a href=&quot;https://presentations.copernicus.org/EGU2016-7396_presentation.pdf&quot;&gt;available for download on the EGU website&lt;/a&gt;. The survey is also still running - please participate &lt;a href=&quot;/2016/04/21/first-survey/&quot;&gt;here&lt;/a&gt;!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Join our first survey</title>
   <link href="https://o2r.info/2016/04/21/first-survey/"/>
   <updated>2016-04-21T00:00:00+00:00</updated>
   <id>https://o2r.info/2016/04/21/first-survey</id>
   <content type="html">&lt;p&gt;Getting user input and evaluating our ideas is a crucial part of the project. Therefore, starting today, we run an &lt;strong&gt;&lt;a href=&quot;http://konkol.staff.ifgi.de/survey/index.php/811822?lang=en&quot;&gt;online questionnaire&lt;/a&gt;&lt;/strong&gt; investigating user interaction in the context of reproducible research. The survey is also advertised &lt;a href=&quot;/2016/04/08/o2r-at-EGU/&quot;&gt;this week at the EGU General Assembly&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Please take a few minutes to help understanding reproducibility in geoscience research by participating in the &lt;a href=&quot;http://konkol.staff.ifgi.de/survey/index.php/811822?lang=en&quot;&gt;first o2r survey at https://o2r.info/survey&lt;/a&gt;.&lt;/p&gt;

&lt;!-- ![survey link QR code](/public/images/qrcode-o2rinfoslashsurvey.svg){:width=&quot;100px&quot;} --&gt;

</content>
 </entry>
 
 <entry>
   <title>Opening Reproducible Research at EGU General Assembly 2016</title>
   <link href="https://o2r.info/2016/04/08/o2r-at-EGU/"/>
   <updated>2016-04-08T00:00:00+00:00</updated>
   <id>https://o2r.info/2016/04/08/o2r-at-EGU</id>
   <content type="html">&lt;p&gt;&lt;img src=&quot;http://blogs.egu.eu/geolog/files/2016/03/GA-twitter-700x400.jpg&quot; alt=&quot;EGU logo&quot; title=&quot;European Geophysical Union General Assembly 2016&quot; width=&quot;300&quot; class=&quot;img rightfloat&quot; /&gt; Next week the largest European geosciences conference of the year will take place in Vienna: the &lt;a href=&quot;http://www.egu2016.eu/&quot; title=&quot;EGU General 2016 Assembly Website&quot;&gt;European Geophysical Union General Assembly 2016&lt;/a&gt;. It takes place in the Austria Center Vienna for a full week and expects to welcome over &lt;a href=&quot;http://media.egu.eu/&quot; title=&quot;EGU General Assembly media information page&quot;&gt;thirteen thousand scientists&lt;/a&gt; from all over the world. A vast variety of research across all disciplines of the Earth, planetary and space sciences will be presented in a &lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2016/meetingprogramme&quot; title=&quot;General Assembly Programme&quot;&gt;meeting programme&lt;/a&gt; featuring workshops, lectures, talks, and posters.&lt;/p&gt;

&lt;p&gt;One of the participants will be o2r team member Edzer Pebesma (&lt;a href=&quot;https://twitter.com/edzerpebesma&quot;&gt;@edzerpebesma&lt;/a&gt; and &lt;a href=&quot;http://r-spatial.org&quot;&gt;http://r-spatial.org&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;Edzer presents our abstract &lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2016/EGU2016-7396.pdf&quot; title=&quot;Abstract PDF download&quot;&gt;&lt;em&gt;“Opening Reproducible Research”&lt;/em&gt;&lt;/a&gt; in the poster session &lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2016/posters/20148&quot; title=&quot;Poster session description&quot;&gt;&lt;em&gt;ESSI3.4 Open Access to Research Data and Public Sector Information towards Open Science&lt;/em&gt;&lt;/a&gt; The session takes places on &lt;em&gt;Thursday, April 21st, from 17:30 to 19:00 in Hall A&lt;/em&gt;. Make sure to drop by and get a glance at our first plans and the many other &lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2016/orals/20148&quot; title=&quot;Orals session description&quot;&gt;talks&lt;/a&gt; and &lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2016/posters/20148&quot; title=&quot;Poster session description&quot;&gt;poster presentations&lt;/a&gt; in this &lt;a href=&quot;http://meetingorganizer.copernicus.org/EGU2016/session/20148&quot; title=&quot;Session description&quot;&gt;session&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;We look forward to the discussions about reproducible research and to get feedback about the project.&lt;/p&gt;

</content>
 </entry>
 
 <entry>
   <title>Introducing o2r</title>
   <link href="https://o2r.info/2016/01/19/introducing-o2r/"/>
   <updated>2016-01-19T00:00:00+00:00</updated>
   <id>https://o2r.info/2016/01/19/introducing-o2r</id>
   <content type="html">&lt;p&gt;Welcome to the new website of the research project &lt;em&gt;Opening Reproducible Research&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;You can learn the basics of the project and get to know the participants on the &lt;a href=&quot;/about&quot;&gt;About&lt;/a&gt; page.&lt;/p&gt;

&lt;p&gt;In short, we will develop new methods to make geosciences research reproducible. We will create open source tools and standards to compile text, data, and code (both sources and binary executables) into research compendia. These compendia will be easy to create for non-developers, executable in a web-based infrastructure, and allow exchanging of data and methods between compatible compendia.&lt;/p&gt;

&lt;p&gt;You can follow our work on &lt;a href=&quot;https://github.com/o2r-project&quot;&gt;GitHub&lt;/a&gt;.&lt;/p&gt;
</content>
 </entry>
 

</feed>
