diff --git a/common/images/identifiers-arena.png b/common/images/identifiers-arena.png new file mode 100644 index 0000000..17b4cf6 Binary files /dev/null and b/common/images/identifiers-arena.png differ diff --git a/common/modules/identifiers-arena.org b/common/modules/identifiers-arena.org new file mode 100644 index 0000000..c3986e0 --- /dev/null +++ b/common/modules/identifiers-arena.org @@ -0,0 +1,11 @@ +#+COLUMNS: %40ITEM %10BEAMER_env(Env) %9BEAMER_envargs(Env Args) %10BEAMER_act(Act) %4BEAMER_col(Col) %10BEAMER_extra(Extra) %8BEAMER_opt(Opt) +#+INCLUDE: "prelude.org" :minlevel 1 +* The identifiers arena + :PROPERTIES: + :CUSTOM_ID: main + :END: +** The identifiers arena +#+latex: \begin{center} + #+ATTR_LATEX: :width \linewidth +file:identifiers-arena.png +#+latex: \end{center} diff --git a/common/modules/metadata-challenge.org b/common/modules/metadata-challenge.org index ccbe695..3716e6c 100644 --- a/common/modules/metadata-challenge.org +++ b/common/modules/metadata-challenge.org @@ -1,145 +1,145 @@ #+COLUMNS: %40ITEM %10BEAMER_env(Env) %9BEAMER_envargs(Env Args) %10BEAMER_act(Act) %4BEAMER_col(Col) %10BEAMER_extra(Extra) %8BEAMER_opt(Opt) #+INCLUDE: "prelude.org" :minlevel 1 * Explore the metadata landscape :PROPERTIES: :CUSTOM_ID: main :END: ** Preliminary questions :PROPERTIES: :CUSTOM_ID: thesourcecode :END: #+BEGIN_QUOTE “Ontologies are agreements, made in a social context, to accomplish some objectives. It's important to understand those objectives, and be guided by them.\"\\ \hfill T. Gruber, The Pragmatics of Ontology, 2003 #+END_QUOTE #+Beamer: \pause *** /Software Ontology/ :PROPERTIES: :BEAMER_env: block :BEAMER_act: +- :END: + What is software ? + With what terms should we describe a /software artifact/? + What about /software source code/ ? ** The metadata challenge #+latex: \begin{center} \huge{What is software ?} \end{center} #+BEAMER: \pause *** Software as a concept :B_block:BMCOL: :PROPERTIES: :BEAMER_col: 0.5 :BEAMER_env: block :END: - software project / entity #+BEAMER: \pause - the creators and the community around it #+BEAMER: \pause *** Software artifact :B_block:BMCOL: :PROPERTIES: :BEAMER_col: 0.5 :BEAMER_env: block :END: - the binaries for different environments #+BEAMER: \pause - the *software source code* for each version -** This is not /software/ +** This is /software/? #+latex: \begin{center} #+ATTR_LATEX: :width .38\linewidth file:this-is-not-a-pipe.png #+latex: \end{center} \hfill What about **/software source code/** ? ** Metadata about Software Source Code :PROPERTIES: :CUSTOM_ID: softwareisdifferent :END: *** Software metadata objectives manage, share, discover, archive /software source code/ #+BEAMER: \pause *** Use cases :B_block:BMCOL: :PROPERTIES: :BEAMER_col: :BEAMER_env: block :END: - *semantic search*: find software by author, version, keywords - browse /source code/ with context information - cite and be cited #+BEAMER: \pause *** :B_ignoreheading: :PROPERTIES: :BEAMER_env: ignoreheading :END: *** LOV- Linked open vocabularies \hfill /“Vocabularies provide the *semantic glue* enabling data to become *meaningful data*. ”/ ** Where is the metadata available ? *** Catalogs and registries :B_block: :PROPERTIES: :BEAMER_COL: .4 :BEAMER_env: block :END: #+ATTR_LATEX: :width \extblockscale{\linewidth} - libraries.io - OpenHub - OntoSoft *** Publisher's repositories :B_block: :PROPERTIES: :BEAMER_COL: .4 :BEAMER_env: block :END: #+ATTR_LATEX: :width \extblockscale{\linewidth} - GitHub - Bitbucket - SourceForge #+BEAMER: \pause *** advantages and drawbacks :B_block: :PROPERTIES: :BEAMER_env: block :BEAMER_opt: :END: | | registries | repositories | |--------------+-------------------------+--------------------------------| | accuracy | - not created by author | + added by authors/maintainers | | completeness | + very detailed | - not a priority | | longevity | - depends on registry | - depends on publisher | ** Where is the metadata available ? *** in the /software source code/ itself :B_block: :PROPERTIES: :BEAMER_env: block :BEAMER_opt: :END: - package management file - CITATION file - .About file - codemeta.json file #+BEAMER: \pause *** advantages and drawbacks :B_block: :PROPERTIES: :BEAMER_env: block :BEAMER_opt: :END: | | metadata file | |--------------+-------------------------------------------------------| | accuracy | + created by author and evolves with code | | completeness | - depends on the authors knowledge of metadata | | longevity | + not dependent on platform (repository or registry ) | #+BEAMER: \pause *** \hfill *Bottomline:* to insure the archival of metadata, keep it *in* the data diff --git a/common/modules/swh-scientific-preservation.org b/common/modules/swh-scientific-preservation.org index 6ad703f..4695b2a 100644 --- a/common/modules/swh-scientific-preservation.org +++ b/common/modules/swh-scientific-preservation.org @@ -1,62 +1,65 @@ #+COLUMNS: %40ITEM %10BEAMER_env(Env) %9BEAMER_envargs(Env Args) %10BEAMER_act(Act) %4BEAMER_col(Col) %10BEAMER_extra(Extra) %8BEAMER_opt(Opt) #+INCLUDE: "prelude.org" :minlevel 1 * Software Heritage for Scientific Publishing :PROPERTIES: :CUSTOM_ID: main :END: ** Save and reference research software \hfill \href{https://www.softwareheritage.org/save-and-reference-research-software/}{SWH guidelines} :PROPERTIES: :CUSTOM_ID: save research software :END: *** Prepare your public repository with: :B_picblock: - README, LICENSE, AUTHORS & codemeta.json files #+LATEX: \pause *** What's a good README +\hfill extracted from \href{https://www.tldp.org/HOWTO/html_single/Software-Release-Practice-HOWTO/}{Eric Steven Raymond} and +\href{https://www.makeareadme.com/}{Make a README} + /MUST/ include: - **Name** and a **description** of the software. /SHOULD/ include: - how to **run** and **use** the source code - build **environment**, installation, requirements /CAN/ include: - project **website** or **documentation** pointer and recent **news** - **visuals** ** Save and reference research software \hfill \href{https://www.softwareheritage.org/save-and-reference-research-software/}{SWH guidelines} -*** Save code now \url{https://archive.softwareheritage.org/save/} : +*** Save code now on \hfill \url{https://archive.softwareheritage.org/save/} - git, svn or mercurial - intrinsic metadata files - complete history #+latex: \begin{center} #+ATTR_LATEX: :width \linewidth file:webui-save-code-now.png #+latex: \end{center} ** Save and reference research software \hfill \href{https://www.softwareheritage.org/save-and-reference-research-software/}{SWH guidelines} *** Choose the granularity level for the reference - code fragment, specific version or full repository #+BEGIN_EXPORT latex \small \begin{tcolorbox} \href{https://archive.softwareheritage.org/swh:1:cnt:c60366bc03936eede6509b23307321faf1035e23;origin=https://github.com/sagemath/sage;lines=473-537} {swh:1:{\bf cnt}:c60366bc03936eede6509b23307321faf1035e23;lines=473-537} \end{tcolorbox} \hfill James McCaffrey's {\bf algorithm} in sageMath \begin{tcolorbox} \href{https://archive.softwareheritage.org/swh:1:rel:22ece559cc7cc2364edc5e5593d63ae8bd229f9f} {swh:1:{\bf rel}:22ece559cc7cc2364edc5e5593d63ae8bd229f9f} \end{tcolorbox} \hfill {\bf release} 2.3.0 of Darktable, dated 24 December 2016 \begin{tcolorbox} \href{https://archive.softwareheritage.org/swh:1:snp:c7c108084bc0bf3d81436bf980b46e98bd338453} {swh:1:{\bf snp}:c7c108084bc0bf3d81436bf980b46e98bd338453} \end{tcolorbox} \hfill a {\bf snapshot} of the entire Darktable repository (4 May 2017, GitHub) #+END_EXPORT diff --git a/common/modules/swh-scientific-reproducibility.org b/common/modules/swh-scientific-reproducibility.org index 5bbc1c3..4c026b3 100644 --- a/common/modules/swh-scientific-reproducibility.org +++ b/common/modules/swh-scientific-reproducibility.org @@ -1,33 +1,36 @@ #+COLUMNS: %40ITEM %10BEAMER_env(Env) %9BEAMER_envargs(Env Args) %10BEAMER_act(Act) %4BEAMER_col(Col) %10BEAMER_extra(Extra) %8BEAMER_opt(Opt) #+INCLUDE: "prelude.org" :minlevel 1 * Scientific software reproducibility :PROPERTIES: :CUSTOM_ID: main :END: ** How we built our scientific knowledge :PROPERTIES: :CUSTOM_ID: short :END: *** Reproducibility is the key :B_picblock: :PROPERTIES: :BEAMER_opt: pic=Karl_Popper, leftpic=true, width=.16\linewidth :BEAMER_env: picblock - :END: + :END: #+latex: \begin{quote} non-reproducible single occurrences are of no significance to science\\ \\ \mbox{} \hfill \scriptsize Karl Popper, \emph{The Logic of Scientific Discovery}, 1934 #+latex: \end{quote} +#+BEAMER: \pause + *** the /software source code/ is special :B_picblock: :PROPERTIES: :BEAMER_opt: pic=preservation_triangle_color, leftpic=false, width=.5\linewidth :BEAMER_env: picblock :BEAMER_act: - :END: + :END: - It *embodies the logic* of the data transformation. - - It *must* be included in strategies for\\ - /scientific knowledge preservation/. - - knowing the *exact version* of the software + - It *must* be included in strategies for\\ + /scientific knowledge preservation/. + - knowing the *exact version* of the software used is essential for reproducibility. +#+BEAMER: \pause diff --git a/talks-public/2019-06-11-SPNForumCall/2019-06-11-SPNForumCall.org b/talks-public/2019-06-11-SPNForumCall/2019-06-11-SPNForumCall.org index b5173c5..d08a77b 100644 --- a/talks-public/2019-06-11-SPNForumCall/2019-06-11-SPNForumCall.org +++ b/talks-public/2019-06-11-SPNForumCall/2019-06-11-SPNForumCall.org @@ -1,121 +1,121 @@ #+COLUMNS: %40ITEM %10BEAMER_env(Env) %9BEAMER_envargs(Env Args) %10BEAMER_act(Act) %4BEAMER_col(Col) %10BEAMER_extra(Extra) %8BEAMER_opt(Opt) #+TITLE: Software Heritage #+SUBTITLE: The universal source code archive #+BEAMER_HEADER: \title{Software Heritage} #+AUTHOR: Morane Gruenpeter #+EMAIL: morane@softwareheritage.org #+BEAMER_HEADER: \date[June 11th, 2019]{June 11th, 2019\\[-1em]} #+BEAMER_HEADER: \title[www.softwareheritage.org]{Software Heritage} #+BEAMER_HEADER: \institute[]{\\\href{mailto:morane@softwareheritage.org}{\tt morane@softwareheritage.org}} #+BEAMER_HEADER: \author[Morane Gruenpeter]{ Morane Guenpeter\\[1em]% #+BEAMER_HEADER: Metadata specialist, Software Heritage\\Crossminer, University of L'Aquila\\[-1em]} # #+BEAMER_HEADER: \setbeameroption{show notes on second screen} #+BEAMER_HEADER: \setbeameroption{hide notes} #+KEYWORDS: software heritage legacy preservation knowledge mankind technology deposit # # prelude.org contains all the information needed to export the main beamer latex source # use prelude-toc.org to get the table of contents # #+INCLUDE: "../../common/modules/prelude-toc.org" :minlevel 1 #+INCLUDE: "../../common/modules/169.org" # +LaTeX_CLASS_OPTIONS: [aspectratio=169,handout,xcolor=table] #+LATEX_HEADER: \usepackage{bbding} #+LATEX_HEADER: \usepackage{tcolorbox} #+LATEX_HEADER: \DeclareUnicodeCharacter{66D}{\FiveStar} # # If you want to change the title logo it's here # # +BEAMER_HEADER: \titlegraphic{\includegraphics[width=0.7\textwidth]{SWH-logo}} # aspect ratio can be changed, but the slides need to be adapted # - compute a "resizing factor" for the images (macro for picblocks?) # # set the background image # # https://pacoup.com/2011/06/12/list-of-true-169-resolutions/ # #+BEAMER_HEADER: \pgfdeclareimage[height=90mm,width=160mm]{bgd}{swh-world-169.png} #+BEAMER_HEADER: \setbeamertemplate{background}{\pgfuseimage{bgd}} #+LATEX_HEADER: \usepackage{supertabular} #+LATEX_HEADER: \newcommand{\sponsor}[2]{{\bf #1}, #2} #+LATEX_HEADER: \newcommand{\teamster}[2]{{\textcolor{red}{#1}}, #2} * Software Heritage # # One slide motivation + goals #+INCLUDE: "../../common/modules/swh-goals-oneslide-vertical.org::#goals" :minlevel 2 # # * Building the network # Where we are today: endorsement # ** Our principles \hfill iPres 2017 - \url{http://bit.ly/swhpaper} # #+INCLUDE: "../../common/modules/principles-compact.org::#principlesstatus" :only-contents t :minlevel 3 ** Our principles \hfill iPres 2017 - \url{http://bit.ly/swhpaper} :PROPERTIES: :CUSTOM_ID: principlesstatus :END: #+latex: \begin{center} #+ATTR_LATEX: :width .8\linewidth file:SWH-as-foundation-slim.png #+latex: \end{center} #+latex: \footnotesize\vspace{-3mm} # # #+BEAMER: \pause #+BEAMER: \pause #+latex: \centering #+ATTR_LATEX: :width \extblockscale{.8\linewidth} file:growth.png ** Growing Support #+INCLUDE: "../../common/modules/support-compact.org::#support" :only-contents t :minlevel 3 * SWH data model and persistent identifiers ** An important distinction: DIOs vs. IDOs :PROPERTIES: :CUSTOM_ID: diovsido :END: #+BEGIN_EXPORT latex \begin{quote} The term “Digital Object Identifier” is construed as “digital identifier of an object," rather than “identifier of a digital object” \hfill Norman Paskin. 2010 \end{quote} #+END_EXPORT #+BEAMER: \pause *** DIO (Digital Identifier of an Object) digital identifiers for (potentially) *non digital objects* - epistemic complexity (manifestations, versions, locations, etc.) - need an *authority* to ensure persistence and uniqueness #+BEAMER: \pause *** IDO (Identifier of a Digital Object) digital identifiers (only) for *digital objects* - can provide both *integrity* and *no middle man* - broadly used in modern software development (git, etc.) #+BEAMER: \pause *** Software Heritage provides intrinsic *IDOs* for all archived artefacts ** SWH data model \hfill \url{https://bit.ly/2wOOmyV} #+latex: \begin{center} -#+ATTR_LATEX: :width .6\linewidth -file:db_schema_explanation.png +#+ATTR_LATEX: :width .85\linewidth +file:swh-merkle-dag-wide.pdf #+latex: \end{center} #+latex: \footnotesize\vspace{-3mm} #+INCLUDE: "../../common/modules/swh-pids.org::#swhexamples" :minlevel 2 * Demo ** #+BEAMER: \vfill\begin{center}\Huge Demo Time!\end{center}\vfill https://archive.softwareheritage.org - search by repository url - search by metadata - save code now diff --git a/talks-public/2019-11-26-UPMC/2019-11-26-UPMC.org b/talks-public/2019-11-26-UPMC/2019-11-26-UPMC.org index bcd02a1..6ea0873 100644 --- a/talks-public/2019-11-26-UPMC/2019-11-26-UPMC.org +++ b/talks-public/2019-11-26-UPMC/2019-11-26-UPMC.org @@ -1,256 +1,280 @@ #+COLUMNS: %40ITEM %10BEAMER_env(Env) %9BEAMER_envargs(Env Args) %10BEAMER_act(Act) %4BEAMER_col(Col) %10BEAMER_extra(Extra) %8BEAMER_opt(Opt) #+TITLE: Software Heritage #+SUBTITLE: The universal source code archive #+BEAMER_HEADER: \title{Software Heritage} #+AUTHOR: Morane Gruenpeter #+EMAIL: morane@softwareheritage.org #+BEAMER_HEADER: \date[November 26th, 2019]{November 26th, 2019\\[-1em]} #+BEAMER_HEADER: \title[www.softwareheritage.org]{Software Heritage} -#+BEAMER_HEADER: \institute[]{\\\href{mailto:morane@softwareheritage.org}{\tt morane@softwareheritage.org}} +#+BEAMER_HEADER: \institute[]{\\\href{mailto:morane@softwareheritage.org}{\tt morane@softwareheritage.org}} #+BEAMER_HEADER: \author[Morane Gruenpeter]{ Morane Gruenpeter\\[1em]% #+BEAMER_HEADER: Metadata specialist, Software Heritage\\Crossminer, University of L'Aquila\\[-1em]} # #+BEAMER_HEADER: \setbeameroption{show notes on second screen} #+BEAMER_HEADER: \setbeameroption{hide notes} #+KEYWORDS: software heritage legacy preservation knowledge mankind technology deposit # # prelude.org contains all the information needed to export the main beamer latex source # use prelude-toc.org to get the table of contents # #+INCLUDE: "../../common/modules/prelude-toc.org" :minlevel 1 #+INCLUDE: "../../common/modules/169.org" # +LaTeX_CLASS_OPTIONS: [aspectratio=169,handout,xcolor=table] #+LATEX_HEADER: \usepackage{bbding} #+LATEX_HEADER: \usepackage{tcolorbox} #+LATEX_HEADER: \DeclareUnicodeCharacter{66D}{\FiveStar} # # If you want to change the title logo it's here # # +BEAMER_HEADER: \titlegraphic{\includegraphics[width=0.7\textwidth]{SWH-logo}} # aspect ratio can be changed, but the slides need to be adapted # - compute a "resizing factor" for the images (macro for picblocks?) # # set the background image # # https://pacoup.com/2011/06/12/list-of-true-169-resolutions/ # #+BEAMER_HEADER: \pgfdeclareimage[height=90mm,width=160mm]{bgd}{swh-world-169.png} #+BEAMER_HEADER: \setbeamertemplate{background}{\pgfuseimage{bgd}} #+LATEX_HEADER: \usepackage{supertabular} #+LATEX_HEADER: \newcommand{\sponsor}[2]{{\bf #1}, #2} #+LATEX_HEADER: \newcommand{\teamster}[2]{{\textcolor{red}{#1}}, #2} * Introduction # # One slide motivation + goals #+INCLUDE: "../../common/modules/swh-goals-oneslide-vertical.org::#goals" :minlevel 2 # # Where we are today: endorsement # ** Our principles \hfill iPres 2017 - \url{http://bit.ly/swhpaper} # #+INCLUDE: "../../common/modules/principles-compact.org::#principlesstatus" :only-contents t :minlevel 3 ** Our principles \hfill iPres 2017 - \url{http://bit.ly/swhpaper} :PROPERTIES: :CUSTOM_ID: principlesstatus :END: #+latex: \begin{center} #+ATTR_LATEX: :width .8\linewidth file:SWH-as-foundation-slim.png #+latex: \end{center} #+latex: \footnotesize\vspace{-3mm} # # #+BEAMER: \pause #+BEAMER: \pause #+latex: \centering #+ATTR_LATEX: :width \extblockscale{.8\linewidth} file:2019-09-archive-growth.png ** Growing Support #+INCLUDE: "../../common/modules/support-compact.org::#support" :only-contents t :minlevel 3 * The knowledge is in the source code ! ** The knowledge is in the source code! #+INCLUDE: "../../common/modules/source-code-different-short.org::#thesourcecode" :only-contents t :minlevel 3 ** Source code is /special/ *** /Executable/ and /human readable/ knowledge \hfill copyright law /“Programs must be written for people to read, and only incidentally for machines to execute.”/\\ \hfill Harold Abelson #+BEAMER: \pause *** Software /evolves/ over time - projects may last decades - the /development history/ is key to its /understanding/ #+BEAMER: \pause *** Complexity :B_picblock: :PROPERTIES: :BEAMER_env: picblock :BEAMER_OPT: pic=python3-matplotlib.pdf, width=.6\linewidth :END: - /millions/ of lines of code - large /web of dependencies/ + easy to break, difficult to maintain - sophisticated /developer communities/ -* SWH data model and persistent identifiers +* SWH data model and persistent identifiers # under the hood: automation and storage, the archive in pictures #+INCLUDE: "../../common/modules/under-the-hood-pictures.org::#main" :only-contents t :minlevel 2 ** Under the hood: identifying billions of objects \hfill \url{https://bit.ly/2wOOmyV} #+latex: \begin{center} #+ATTR_LATEX: :width .85\linewidth file:swh-merkle-dag-wide.pdf #+latex: \end{center} #+latex: \footnotesize\vspace{-3mm} ** Our challenges in the PID landscape :PROPERTIES: :CUSTOM_ID: challenges :END: *** Typical properties of systems of identifiers \hfill uniqueness, non ambiguity, persistence, abstraction (opacity) #+BEAMER: \pause *** Key needed properties from our use cases - gratis :: identifiers are free (billions of objects) - integrity :: the associated object cannot be changed (sw dev, /reproducibility/) - no middle man :: no central authority is needed (sw dev, /reproducibility/) #+BEAMER: \pause -*** + +*** \hfill we could not find systems with both *integrity* and *no middle man* ! + +# metadata challenge- questions about a software entity and where to find metadata (one slide) +#+INCLUDE: "../../common/modules/identifiers-arena.org::#main" :only-contents t :minlevel 2 + + * The missing piece- the Metadata -# metadata challenge- questions about a software entity and where to find metadata (one slide) +# metadata challenge- questions about a software entity and where to find metadata (one slide) #+INCLUDE: "../../common/modules/metadata-challenge.org::#main" :only-contents t :minlevel 2 ** The Software Ontology /Touchstone/ *** Software Citation Principles \tiny ( FORCE11's 2015 conference and WG) :B_block: :PROPERTIES: :BEAMER_env: block - :BEAMER_opt: - :END: + :BEAMER_opt: + :END: - *Importance* : first class citizen in the scholarly ecosystem - *Credit and attribution* : authors, maintainer - *Unique identification*: points to a unique, specific software version (DOI, Git SHA1 hash, etc..) - *Persistence* : identification beyond the lifespan of the software (swh-id) - *Accessibility*: url, publisher - *Specificity* : version, environment -# metadata landscape (one decomposed slide) +# metadata landscape (one decomposed slide) #+INCLUDE: "../../common/modules/metadata-landscape.org::#main" :only-contents t :minlevel 2 - -** Software Metadata Terms + +** Software Metadata Terms *** identify :B_block:BMCOL: :PROPERTIES: :BEAMER_col: 0.2 :BEAMER_env: block :END: - identifier - title - authors - version - type - origin source #+BEAMER: \pause *** execute :B_block:BMCOL: :PROPERTIES: :BEAMER_opt: :BEAMER_env: block :BEAMER_col: 0.2 :END: - link to a compiled version - repository - compiler - environment - - examples -#+BEAMER: \pause + - examples +#+BEAMER: \pause *** classify :B_block:BMCOL: :PROPERTIES: :BEAMER_col: 0.2 :BEAMER_env: block :END: - description - keywords - - in/out data + - in/out data - references - algorithms - docs url #+BEAMER: \pause *** administrate :B_block:BMCOL: :PROPERTIES: :BEAMER_col: 0.2 :BEAMER_env: block :END: - contact - - authorship + - authorship - funders - license - editor (publisher) - dates - status ** Much more complex than it seems *** Software is complex - Structure :: monolithic/composite; self-contained/external dependencies - Lifetime :: one-shot/long term - Community :: one man/one team/distributed community - Authorship :: complex set of roles - Authority :: institutions/organizations/communities/single person #+BEAMER: \pause *** Various granularities - Exact status of the source code :: for reproducibility, e.g. #+latex: \emph{``you can find at \href{https://archive.softwareheritage.org/swh:1:cnt:cdf19c4487c43c76f3612557d4dc61f9131790a4;lines=146-187/}{swh:1:cnt:cdf19c4487c43c76f3612557d4dc61f9131790a4;lines=146-187} the core algorithm used in this article''} - (Major) release :: \emph{``This functionality is available in OCaml version 4''} - Project :: \emph{``Inria has created OCaml and Scikit-Learn''}. * Software Source code as a research output # reproducibility and scientific knowledge pillars (one slide) #+INCLUDE: "../../common/modules/swh-scientific-reproducibility.org::#main" :only-contents t :minlevel 2 -# -# scientific software (deposit) use-case (one slide) +# +# scientific software (deposit) use-case (one slide) #+INCLUDE: "../../common/modules/swh-scientific-deposit.org::#main" :only-contents t :minlevel 2 -# scientific software (save code now) use-case (one slide) +# scientific software (save code now) use-case (one slide) #+INCLUDE: "../../common/modules/swh-scientific-preservation.org::#main" :only-contents t :minlevel 2 * Conclusion ** Research Software Engineer tips -*** Use a forge for your academic and personal projects +*** Use a forge for your academic and personal projects \hfill Github, Gitlab or Bitbucket are the best way to create your *source code cv* #+BEAMER: \pause -*** Put in your projects metadata files +*** Put in your projects metadata files \hfill *README*, *LICENSE*, *AUTHORS* and *codemeta.json* to describe your project #+BEAMER: \pause *** Archive your projects on SWH \hfill Use the *Save Code Now* feature #+BEAMER: \pause *** Contribute to other projects \hfill When you contribute you learn how to *read code* #+BEAMER: \pause *** Ask \hfill Don't be afraid to ask on an *issue*, *mailing list* or *irc channel* (or your teachers) -** - -#+latex: \begin{center} \huge{Questions ?} \end{center} - - - - - +** Come in, we're open! +#+BEGIN_EXPORT latex + \begin{center} + \includegraphics[width=.5\linewidth]{SWH-logo.pdf} + \end{center} + \begin{center} + \vfill + {\Large Thank you! Any questions?} + \end{center} +#+END_EXPORT +*** Join us on https://forge.softwareheritage.org/ :B_block: + :PROPERTIES: + :BEAMER_env: block + :END: + #+BEGIN_EXPORT latex + \begin{thebibliography}{Foo Bar, 1969} + \footnotesize + \bibitem{Abramatic2018} Jean-François Abramatic, Roberto Di Cosmo, Stefano Zacchiroli\newblock + \emph{Building the Universal Archive of Source Code}, Communications of the ACM, October 2018 + \bibitem{DiCosmo2018} Roberto Di Cosmo, Morane Gruenpeter, Stefano Zacchiroli\newblock + \emph{Identifiers for Digital Objects: the Case of Software Source Code Preservation}, + iPRES 2018: Intl. Conf. on Digital Preservation + \end{thebibliography} + #+END_EXPORT + +*** contact: morane@softwareheritage.org